如何重建 wf_java_deferred 队列(queue)

Followings steps are to be followed to rebuild the queue
1. Check to see what records will be backed up on the wf_queue_temp_jms_table backup table. 
select wfjd.corr_id corrid, msg_state state, count(*) COUNT 
from applsys.aq$wf_java_deferred wfjd 
where msg_state IN('READY', 'WAIT') 
group by corr_id, wfjd.msg_state; 

2). Shutdown the Workflow Agent Listener Service and backup the records on the WF_JAVA_DEFERRED queue to the apps.wf_queue_temp_jms_table backup table. 

System Administrator > Oracle Applications Manager > Workflow > Service Components > Workflow Agent Listener Service

sqlplus apps/ @wfaqback.sql 

For Example: 

sqlplus apps/apps @$FND_TOP/sql/wfaqback.sql WF_JAVA_DEFERRED 

3). Make sure all the records are in the wf_queue_temp_jms_table table. 

select CORR_ID corrid, QUEUE queue, count (*) 
from apps.wf_queue_temp_jms_table 
group by CORR_ID, QUEUE; 

4). Set aq_tm_processes =0.

alter system set aq_tm_processes=0; 

5). Note the name of the tablspace containing index on CORRID that will need to be recreated later. 

SELECT index_name, tablespace_name 
FROM all_indexes 
WHERE index_name = 'WF_JAVA_DEFERRED_N1'; 

6). Drop the WF_JAVA_DEFERRED queue and queue_table.

declare 

begin 
dbms_aqadm.stop_queue(queue_name => 'APPLSYS.WF_JAVA_DEFERRED', wait => 
FALSE); 
end; 

declare 

begin 
dbms_aqadm.drop_queue_table(queue_table => 'APPLSYS.WF_JAVA_DEFERRED', force 
=> TRUE); 
end; 

7). Recreate the WF_JAVA_DEFERRED queue.

sqlplus / @wfbesqc.sql 

For Example: 

sqlplus apps/apps @$FND_TOP/patch/115/sql/wfbesqc.sql APPLSYS APPS 

8). Add the subscribers.

sqlplus APPSusr/ @wfbesqsubc.sql 

Example Syntax: 

sqlplus apps/apps @$FND_TOP/patch/115/sql/wfbesqsubc.sql APPLSYS APPS 

9). Recreate the index (Please ignore any ORA-00955 errors about object already exist as this adds index for other objects.): 

sqlplus APPSusr/ @FND_TOP/patch/115/sql/wfbesqidxc.sql APPLSYS APPS tablespace_name 

Example Syntax: 

sqlplus apps/apps @$FND_TOP/patch/115/sql/wfbesqidxc.sql APPLSYS APPS APPS_TS_QUEUES

10). Put the data for the WF_JAVA_DEFERRED back into the queue.

sqlplus apps/ @wfaqrenq.sql 

For Example: 

sqlplus apps/apps @$FND_TOP/sql/wfaqrenq.sql WF_JAVA_DEFERRED 

11). Confirm that all records are back on the queue. 

select wfjd.corr_id corrid, msg_state state, count(*) COUNT 
from applsys.aq$wf_java_deferred wfjd 
where msg_state IN('READY', 'WAIT') 
group by corr_id, wfjd.msg_state; 

12). Start the Workflow Agent Listener Service and confirm it is now processing the events on the queue. 

System Administrator > Oracle Applications Manager > Workflow > Service Components > Workflow Agent Listener Service 

select wfjd.corr_id corrid, msg_state state, count(*) COUNT 
from applsys.aq$wf_java_deferred wfjd 
where msg_state IN('READY', 'WAIT') 
group by corr_id, wfjd.msg_state;

时间: 2024-09-20 00:18:33

如何重建 wf_java_deferred 队列(queue)的相关文章

队列(queue)简介及实现

队列(queue)是又一个简单而常见的数据结构.队列也是有序的元素集合.队列最大的特征是First In, First Out (FIFO,先进先出),这一点与栈(stack)形成有趣的对比.队列在生活中很常见,排队买票.排队等车-- 先到的人先得到服务并离开队列,后来的人加入到队列的最后.队列是比较公平的分配有限资源的方式,可以让队列的人以相似的等待时间获得服务. 队列支持两个操作,队首的元素离开队列(dequeue),和新元素加入队尾(enqueue).

jQuery中队列queue()函数的实例教程_jquery

如果当前jQuery对象匹配多个元素:获取队列时,只获取第一个匹配元素上的队列:设置队列(替换队列.追加函数)时,则为每个匹配元素都分别进行设置. 该函数属于jQuery对象(实例).如果需要移除并执行队列中的第一个函数,请使用dequeue()函数.你也可以使用clearQueue()函数清空指定的队列. 语法jQuery 1.2 新增该函数.queue()函数具有如下两种用法: 用法一: jQueryObject.queue( [ queueName ] [, newQueue ] ) 如果

PHP的Laravel框架中使用消息队列queue及异步队列的方法_php实例

queue配置 首先说明一下我之前的项目中如何使用queue的. 我们现在的项目都是用的symfony,老一点的项目用的symfony1.4,新一点的项目用的都是symfony2.symfony用起来整体感觉还是很爽的,尤其symfony2,整体上来讲使用了很多java里面框架的设计思想.但是他不支持queue.在symfony,我们使用queue也经历了几个过程.最开始使用张堰同学的httpsqs.这个简单使用,但是存在单点.毕竟我们的项目还是正式对外服务的,所以我们研究了Apache旗下的开

ruby线程实现生产者消费者问题示例(队列Queue实现线程同步)_ruby专题

Ruby线程实现经典的生产者消费者问题,用ruby中的Queue类实现线程同步问题. 复制代码 代码如下: require "thread"  puts "ProAndCon"  queue = Queue.new    #用队列Queue实现线程同步  producer = Thread.new do      10.times do |i|          sleep rand(i) # 让线程睡眠一段时间          queue << i 

纸上谈兵: 队列 (queue)

作者:Vamei 出处:http://www.cnblogs.com/vamei 欢迎转载,也请保留这段声明.谢谢!   队列(queue)是一个简单而常见的数据结构.队列也是有序的元素集合.队列最大的特征是First In, First Out (FIFO,先进先出),即先进入队列的元素,先被取出.这一点与栈(stack)形成有趣的对比.队列在生活中很常见,排队买票.排队等车-- 先到的人先得到服务并离开队列,后来的人加入到队列的最后.队列是比较公平的分配有限资源的方式,可以让队列的人以相似的

jquery队列queue与原生模仿其实现方法分享

 jquery中的queue和dequeue是一组很有用的方法,他们对于一系列需要按次序运行的函数特别有用.特别animate动画,ajax,以及timeout等需要一定时间的函数 queue() 方法显示或操作在匹配元素上执行的函数队列.   queue和dequeue的过程主要是:   用queue把函数加入队列(通常是函数数组) 用dequeue将函数数组中的第一个函数取出,并执行(用shift()方法取出并执行) 也就意味着当再次执行dequeue的时候,得到的是另一个函数了.同时也意味

jquery队列queue与原生模仿其实现方法分享_jquery

queue() 方法显示或操作在匹配元素上执行的函数队列. queue和dequeue的过程主要是: 用queue把函数加入队列(通常是函数数组)用dequeue将函数数组中的第一个函数取出,并执行(用shift()方法取出并执行)也就意味着当再次执行dequeue的时候,得到的是另一个函数了.同时也意味着,如果不执行dequeue,那么队列中的下一个函数永远不会执行. 对于一个元素上执行animate方法加动画,jQuery内部也会将其加入名为 fx 的函数队列.而对于多个元素要依次执行动画,

Ruby中使用多线程队列(Queue)实现下载博客文章保存到本地文件_ruby专题

Ruby:多线程下载博客文章到本地的完整代码 复制代码 代码如下: #encoding:utf-8 require 'net/http' require 'thread' require 'open-uri' require 'nokogiri' require 'date' $queue = Queue.new #文章列表页数 page_nums = 8 page_nums.times do |num|   $queue.push("http://www.cnblogs.com/hongfei

STL队列 之FIFO队列(queue)、优先队列(priority_queue)、双端队列(deque)

1.FIFO队列     std::queue就是普通意思上的FIFO队列在STL中的模版. 1.1主要的方法有: (1)T front():访问队列的对头元素,并不删除对头元素 (2)T back():访问队列的末尾元素,并不删除末尾元素 (3)void pop():删除对头元素. (4)void push(T):元素入队 1.2代码实例 1 #include <iostream> 2 #include <queue> 3 using namespace std; 4 int m