ALTER_QUEUE v17

Use the ALTER_QUEUE procedure to modify an existing queue. The signature is:

ALTER_QUEUE(
  <max_retries> IN NUMBER DEFAULT NULL,
  <retry_delay> IN NUMBER DEFAULT 0
  <retention_time> IN NUMBER DEFAULT 0,
  <auto_commit> IN BOOLEAN DEFAULT TRUE)
  <comment> IN VARCHAR2 DEFAULT NULL,

Parameters

queue_name

The name of the new queue.

max_retries

max_retries specifies the maximum number of attempts to remove a message with a dequeue statement. The value of max_retries is incremented with each ROLLBACK statement. When the number of failed attempts reaches the value specified by max_retries, the message is moved to the exception queue. Specify 0 to indicate that no retries are allowed.

retry_delay

retry_delay specifies the number of seconds until a message is scheduled for reprocessing after a ROLLBACK. Specify 0 to retry the message immediately (the default).

retention_time

retention_time specifies the length of time in seconds that a message is stored after being dequeued. You can also specify 0 (the default) to indicate not to retain the message after dequeueing or INFINITE to retain the message forever.

auto_commit

This parameter is accepted for compatibility and ignored.

comment

comment specifies a comment associated with the queue.

Example

The following command alters a queue named work_order, setting the retry_delay parameter to 5 seconds:

EXEC DBMS_AQADM.ALTER_QUEUE(queue_name => 'work_order', retry_delay => 5);