CftClub.ru
Клуб специалистов ЦФТ-Банк

Блокировка???

 
Ответить на тему    Клуб специалистов ЦФТ-Банк (IBSO) -> Разработка в PL/PLUS. Оптимизация запросов Oracle
Предыдущая тема :: Следующая тема  
Автор Сообщение
Kozyrev
Участник - экстремал


Вступление в Клуб: 03.09.2007
СообщениеЧт Апр 24, 2008 17:34   Блокировка??? Ответить с цитатой
Полезность: Нет оценки
Я писал шлюз Клиент-Банк - ЦФТ-Банк.

В результате "боевого"(!) тестирования выявился глюк.
При загрузке документов в Операционный день Банка во всех платежках оказались неверные сведения о плательщике (один и тот же клиент в качестве плательщика). При обычном тестировании (в условиях минимальной нагрузки) шлюз все время работал верно.

Как я понял, в момент выполнения операции загрузки произошло неверное обращение к объектам.
Судя по всему, при выполнении подобных операций необходимо производить блокировку некоторых объектов системы ЦФТ-Банк.


Операция загрузки документов в операционный день производит следующие действия:

- Запускает FORMON
- Читает список файлов
- Читает содержимое каждого файла
- Видоизменяет значение переменных (например, изменение формата даты)
- Ищет данные по клиентам (операции select)
- Подготовленные переменные передает операции ::[MAIN_DOCUM].NEW#DOC( ... );

Подскажите пожалуйста, какие дополнительные дейтсвия необходимо делать при выполнении подобных операций загрузки (возможно блокирование каких-либо объектов от одновременного использования, или что-то подобное)

Заранее спасибо!
Alex2019
Профи


Вступление в Клуб: 02.07.2007
СообщениеЧт Апр 24, 2008 17:56   Re: Блокировка??? Ответить с цитатой
Полезность: Нет оценки
Kozyrev пишет:
Я писал шлюз Клиент-Банк - ЦФТ-Банк.

В результате "боевого"(!) тестирования выявился глюк.
При загрузке документов в Операционный день Банка во всех платежках оказались неверные сведения о плательщике (один и тот же клиент в качестве плательщика).

Возможно, скажу банальность, но результат напоминает ситуацию, когда где-то не очищается глобальная переменная, например, промежуточный коммит не выполняется. Может попробовать вставить отладку для дублирующегося реквизита в нескольких точках его переопределения?
Kozyrev пишет:
При обычном тестировании (в условиях минимальной нагрузки) шлюз все время работал верно.

А тестирование шло на "боевых" объемах? Т.е. несколько файлов, набор записей в каждом и т.д.?
Kozyrev
Участник - экстремал


Вступление в Клуб: 03.09.2007
СообщениеПт Апр 25, 2008 07:22    Ответить с цитатой
Полезность: Нет оценки
Цитата:
Возможно, скажу банальность, но результат напоминает ситуацию, когда где-то не очищается глобальная переменная, например, промежуточный коммит не выполняется.

В платежки попали данные "левого" клиента (он есть в базе, но в платежках он не фигурировал и он не является участником клиент-банка)

Цитата:
А тестирование шло на "боевых" объемах? Т.е. несколько файлов, набор записей в каждом и т.д.?

Загружалось сразу 87 документов, при этом в базе работал весь банк.
dnk_dz
Эксперт


Вступление в Клуб: 19.09.2007
СообщениеПт Апр 25, 2008 07:47    Ответить с цитатой
Полезность: Нет оценки
Ищите баг в ваше операции. Ничего блокировать не надо. Не забывайте, что ИБСО работает под Ораклом - он сам все, что нужно заблокирует. Very Happy
w00per
Профи


Вступление в Клуб: 17.10.2007
СообщениеПт Апр 25, 2008 08:17    Ответить с цитатой
Полезность: Нет оценки
Kozyrev пишет:

В платежки попали данные "левого" клиента (он есть в базе, но в платежках он не фигурировал и он не является участником клиент-банка)

Я бы советовал смотреть в сторону условий в selectе, возможно он всегда возвращает один и тот же результат.
_________________
I Lie About Everything.
Kozyrev
Участник - экстремал


Вступление в Клуб: 03.09.2007
СообщениеПт Апр 25, 2008 09:00    Ответить с цитатой
Полезность: Нет оценки
Цитата:
Я бы советовал смотреть в сторону условий в selectе, возможно он всегда возвращает один и тот же результат.

Повторно ВСЕ платежки выгрузились так как нужно! Это был явно глюк именно у тот момент.
lexus
Профи


Вступление в Клуб: 28.09.2007
СообщениеПт Апр 25, 2008 09:44    Ответить с цитатой
Полезность: Нет оценки
Kozyrev пишет:
Цитата:
Я бы советовал смотреть в сторону условий в selectе, возможно он всегда возвращает один и тот же результат.

Повторно ВСЕ платежки выгрузились так как нужно! Это был явно глюк именно у тот момент.


А в запросах у вас есть обращение к контексту сессии?
Kozyrev
Участник - экстремал


Вступление в Клуб: 03.09.2007
СообщениеПт Апр 25, 2008 13:09    Ответить с цитатой
Полезность: Нет оценки
Что такое "контекст сессии"?
dnk_dz
Эксперт


Вступление в Клуб: 19.09.2007
СообщениеПт Апр 25, 2008 13:11    Ответить с цитатой
Полезность: Нет оценки
Можете текст операции выложить? Думаю, так проще будет что-то сказать.
Показать сообщения:   
Ответить на тему    Клуб специалистов ЦФТ-Банк (IBSO) -> Разработка в PL/PLUS. Оптимизация запросов Oracle Часовой пояс: GMT + 3
Страница 1 из 1

 
Перейти:  
Вы не можете начинать темы
Вы не можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения
Вы не можете голосовать в опросах
Рейтинг@Mail.ru