stopping/restarting job queues without rebooting the server

higgs312

Active Member
Does anyone know how to stop and restart a specific queue without rebooting the server. For example, I may want to stop SBATCH, but leave I-ACTIVE & QBATCH running and processing jobs. I don't want to reboot the server and cause all jobs to ERROR. If anyone has written a custom script for this, could you please attach it and we can modify it for our needs. Thanks.
 
Hi,

Indeed it is possible to stop and restart a specific queue.

To stop a queue, you just have to kill the jdequeue process related to your queue.
If you're using windows servers, with a tool like ProcessExplorer, in the command line of a jdequeue.exe, you'll see the name of the queue.

To restart the queue, the command line is described in the Server Administration guides :

</font><blockquote><font class="small">En réponse à:</font><hr />
Jdequeue may be run manually by running system\bin32\jdequeue followed by the required parameters :
user name, password, environment/data source (for example PD7333), queue name (for example QBATCH),
the string "UBE", and the time interval in seconds between fetches of the next record in the database
table F986110


[/ QUOTE ]
(NB : the jdequeue.exe is located in JDEdwardsOneWorld\ddp\B7333\System\Bin32 directory).

On a windows server, be aware that if you open a command line window, and type the jdequeue command to launch the queue, you'll need to keep the window opened.
So i think you need to call it from a script to avoid that.

Hope this help.
 
Thanks Antione. I will talk to someone and see if we can get a script written.
 
Because the original poster mentions "I-ACTIVE" then the jdequeue.exe advice is bad, "I-ACTIVE" only showed up with queue kernel in the 8.9 and later releases that replace all the jdequeue.exe with a single jdenet_k (And if I recall, the advice was to get rid of I-ACTIVE again back sometime in 8.94)

Anyway, with queue kernel, go into app P986130, select the queue in question, make it 'not active' and then with the row selected, use the row exit to refresh queue kernel and it picks it up dynamically.

[edited for clarification]
 
I don't think this will work. I forgot to mention that we are using E1 8.12 - toolset 8.97.2.3. There is no jdequeue.exe in \ddp\system\bin32
 
Sorry for my bad advice.
Never worked with 8.9 and above.
blush.gif
 
[ QUOTE ]
Does anyone know how to stop and restart a specific queue without rebooting the server. For example, I may want to stop SBATCH, but leave I-ACTIVE & QBATCH running and processing jobs. I don't want to reboot the server and cause all jobs to ERROR. If anyone has written a custom script for this, could you please attach it and we can modify it for our needs. Thanks.

[/ QUOTE ]


If you are on Windows, go to the JDEdwards\E812\DDP\log directory and search for files containing the text QUEUE KERNEL. This will give you the queue kernel PID in the file name (i.e. jde_9188.log). You will (should) have only one queue kernel. Go to Windows Task Manager and do View/Select Columns and add PID. You can kill that PID and the next time a job is submitted the Queue kernel will be restarted.

I think however, what you are looking for is a specific UBE kernel. If you go into the WSJ app and find QBE by queue name you will find that the Process ID field may contain multiple values. A UBE queue is spread out over a number of PIDs and it is difficult to use the same method for UBE kernels as for the queue kernel.

Of note is the fact that you can move jobs to another queue if you need to in an emergency. To do so, simply double-click a job in "W" status to get its WSJ detail. Change the Job Queue field and hit OK. This will allow you to work around a dead queue for a little while. Pre-8.89 you could do this with a script:


<font class="small">Code:</font><hr /><pre> update SVM7334.F986110 set JCJOBQUE ='LRMT812' where JCJOBSTS='W' and JCENHV='JPD7334' and JCJOBQUE='QB7334' </pre><hr />

You can use this script in 8.12 (change 7334 to 812 obviously) but you must go into P986130 and refresh the queue for it to work.

Also, in P986130 you may be able to disable (change status) of a queue to disabled, refresh the queue, re-enable it, refresh the queue and accomplish what you desire. I have not tested this.
 
Back
Top