Можно ли установить время ожидания для процедуры через одну минуту, когда она вызывается в PLSQL - PullRequest
0 голосов
/ 06 сентября 2018

Процедура в упаковке. При вызове процедуры клиентская функция зависла. Поэтому они просят установить таймаут для API. Возможно ли это?

1 Ответ

0 голосов
/ 06 сентября 2018

Не напрямую. Тем не менее, я считаю, что вы должны быть в состоянии выполнить то, что вы ищете, хотя я никогда не делал этого и не имею времени, чтобы собрать доказательство концепции прямо сейчас. Вот схема того, что вам нужно сделать:

1) См. Этот ответ для хитрости (kludge?), Чтобы заставить менеджера ресурсов Oracle ограничить по времени выполнения: https://stackoverflow.com/a/43532330/5174436

2) Измените сопоставление групп потребителей плана ресурсов, чтобы оно применялось только к ограничению ресурсов для данного MODULE_NAME.

3) Установите указанное имя модуля в вашей процедуре с помощью DBMS_APPLICATION_INFO.SET_MODULE.

Я не даю никаких гарантий, что это сработает. Это всего лишь то, что я бы попробовал, если бы столкнулся с вашей потребностью.

На самом деле, это не так ... что бы я действительно сделал, если бы столкнулся с вашей потребностью, это выяснить, почему процедура "зависает", и исправьте ее.

...