Задача 102.147176

Задача :102.147176

Краткое описание :
Возможность протоколировать открытые курсоры
Описание :
Oracle
Что измененно :


Oracle

----- СУТЬ ПРЕДЛОЖЕНИЯ -----
Дать возможность ограничить количество открытых курсоров,
а в случае превышения предела увидеть текст запросов, связанных с превышением.
В протокольном драйвере логировать количество открытых курсоров,
даже если лимит не превышен.
Как измененно :

Добавлены два служебных (недокументируемых) параметра для протоколирования максимального количества открытых курсоров при работе на платформе Oracle.
Первый параметр SQLDriver.PeakCursorsCountReport, если он больше нуля, то при закрытии соединения с СУБД в лог выдаётся пиковое значение открытых курсоров и тексты нескольких последних курсоров для локализации (собственно, значение параметра SQLDriver.PeakCursorsCountReport -- это количество строк). Значение по умолчанию 0.
При использовании в трёхуровневой версии потребуется остановить сервер приложений, чтобы завершить соединения с СУБД и получить лог.

Второй параметр SQLDriver.OpenCursorsLimit устанавливает лимит, при превышении которого программа аварийно завершается (и печатает тексты всех курсоров). Преимущества этого параметра при тестировании в том, что его работу нельзя не заметить (не заметить вывод в логе), недостаток в том, что нужно априорно установить приемлемый лимит. Также этот параметр защищает инстанс Oracle от проблем одного клиента (упадёт только конкретный клиент, а если превысить лимит Oracle, то все клиенты). Значение по умолчанию 4999


# ИНСТРУКЦИЯ ПО НАСТРОЙКЕ:
Если в настройках Oracle вы обоснованно используете значение параметра open_cursors больше, чем 5000,
то следует поднять этот лимит (SQLDriver.OpenCursorsLimit) и в Галактике ERP до такого же значения.


Название продукта Название компонента Тип Последняя версия Дата выхода
compdataCOMPDATARES5.5.23.0
ora90drvORA90DRVDLL5.5.23.0