Comments 14
Сигналы теряются, т.к. при эмиссии нескольких сигналов до вызова метода dbms_alert.waitone, он возвращает только последний. Т.е. если между вызовами waitone было более одного сигнала остальные будут потеряны.
Ну и подписываться/отписываться (dbms_alert.register/remove) на сигнал внутри процедуры не имеет смысла.
Ну и подписываться/отписываться (dbms_alert.register/remove) на сигнал внутри процедуры не имеет смысла.
0
Странный выбор… Это больше похоже на логгирование, а не отладку. Для дебага есть как раз plsql_debug, позволяющий устанавливать breakpoint'ы, получать значения переменных и т.д. Кстати, PL/SQL Developer умеет с ним работать, но только для сессий запущенных в нем самом.
А для логгирования лучше использовать что-то более гибкое и стандартное, например, всяческие аналоги логгеров из Java:
github.com/OraOpenSource/Logger
log4plsql.sourceforge.net
А для логгирования лучше использовать что-то более гибкое и стандартное, например, всяческие аналоги логгеров из Java:
github.com/OraOpenSource/Logger
log4plsql.sourceforge.net
0
Для дебага есть как раз plsql_debug, позволяющий устанавливать breakpoint'ы, получать значения переменных и т.д.
Я правильно понимаю что ты говоришь про: docs.oracle.com/cd/B19306_01/server.102/b14237/initparams161.htm#REFRN10254?
0
Кстати, PL/SQL Developer умеет с ним работать, но только для сессий запущенных в нем самом.
Конкретно эта статья нацелена на отладку веба/среднего слоя, поэтому данный материал не рассматривался.
0
Оба этих «инструмента» не подходят ни для отладки, ни для логгирования.
Это будет дикий overkill — логгировать инструментами, рассчитанными на синхронную/полусинхронную работу. Особенно, для каких-нибудь bulk-операций да еще и параллельных, да с высокой скоростью обработки — тут же упретесь в ограничения. Да еще и не дает возможности «заглянуть в прошлое».
Это будет дикий overkill — логгировать инструментами, рассчитанными на синхронную/полусинхронную работу. Особенно, для каких-нибудь bulk-операций да еще и параллельных, да с высокой скоростью обработки — тут же упретесь в ограничения. Да еще и не дает возможности «заглянуть в прошлое».
0
А для логгирования лучше использовать что-то более гибкое и стандартное, например, всяческие аналоги логгеров из Java:
github.com/OraOpenSource/Logger
log4plsql.sourceforge.net
Спасибо за обзор инструментов, но в рамках данной статьи была цель показать как пользоваться оракловыми средвами без внешних инструментов ;)
0
А разве dbms_pipe работает между разными нодами Oracle RAC?
0
только pipe периодически забивается и приходится использовать метод: dbms_pipe.purge
Надо использовать при открытии pipe параметр maxpipesize с адекватным значением и не забывать выбирать из pipe все сообщения. И ничего забиваться не будет.
0
Sign up to leave a comment.
Отладка PL/SQL кода для внешней сессии БД