AQ $ _PLSQL_NTFNnnnn调度程序作业用于什么?

时间:2011-07-06 22:39:29

标签: oracle oracle11gr2

我根本不使用高级排队,但AQ$_PLSQL_NTFNnnnn个调度程序作业的数量不断增加。

目前有8个这样的工作。因为它们 - 我需要刷新最大同时作业数。

大约2个月前,它的限制为10,目前我有限制15,因为8“不必要”(至少对我来说)这些工作 - 我需要将它增加到20或25:-S < / p>

那么,它们用于什么?我可以放弃/禁用它们吗?

UPD :我将同时工作的数量增加到25个,而在这个晚上,AQ ......工作量上升到25:-S这是个笑话吗?!

2 个答案:

答案 0 :(得分:2)

听起来像是在数据库中的某个地方使用了AQ。

我用Google搜索了一下,这里有一些可能有用的信息 - http://www.ora600.be/node/5547 - 主要是隐藏参数_srvntfn_max_concurrent_jobs,它显然限制了为通知运行的作业总数。

信息似乎很难得到,但很明显通知会进入表sys.alert_qt,所以你可以试着看看那里出现的内容。

您还可以查看ALL_QUEUES和其他ALL_QUEUE *表,看看数据库中是否有您不知道的任何队列。

我假设您使用的是Oracle 11gR1或11gR2?

答案 1 :(得分:0)

当使用PL / SQL回调函数处理AQ队列时,我们已经看到生成了这些作业。您可以查看此表以查找任何已注册的订阅:

  select * from   dba_subscr_registrations;

More about AQ PL/SQL Callback