STOP_QUEUE v13

Use the STOP_QUEUE procedure to disable enqueuing or dequeueing on a specified queue. The signature is:

STOP_QUEUE(
  <queue_name> IN VARCHAR2,
  <enqueue> IN BOOLEAN DEFAULT TRUE,
  <dequeue> IN BOOLEAN DEFAULT TRUE,
  <wait> IN BOOLEAN DEFAULT TRUE)

Parameters

queue_name

queue_name specifies the name of the queue that you are stopping.

enqueue

Specify TRUE to disable enqueueing (the default), or FALSE to leave the current setting unchanged.

dequeue

Specify TRUE to disable dequeueing (the default), or FALSE to leave the current setting unchanged.

wait

Specify TRUE to instruct the server to wait for any uncompleted transactions to complete before applying the specified changes; while waiting to stop the queue, no transactions are allowed to enqueue or dequeue from the specified queue. Specify FALSE to stop the queue immediately.

Example

The following anonymous block disables enqueueing and dequeueing from the queue named work_order:

BEGIN
DBMS_AQADM.STOP_QUEUE(queue_name =>'work_order', enqueue=>TRUE,
dequeue=>TRUE, wait=>TRUE);
END;

Enqueueing and dequeueing will stop after any outstanding transactions complete.