Array Dequeue dequeues a message twice from a single consumer queue table after DBMS_AQADM.PURGE_QUEUE_TABLE has been executed (Doc ID 2002148.1)

Last updated on JULY 28, 2015

Applies to:

Oracle Database - Enterprise Edition - Version 11.2.0.4 to 12.1.0.2 [Release 11.2 to 12.1]
Information in this document applies to any platform.

Symptoms

Array dequeue dequeues a message twice when there has been an intervening purge activity as per the following testcase output

08:52:59 - Purging TEST_PURGE_QUEUE_QT 
08:52:59 - Purging complete 
08:52:59 - Enqueued ID 108E667437EE7C8AE053BA5EF00A6FCB 
08:52:59 - Array dequeued 1 message(s). Expected 1 
08:52:59 - Dequeued msg 108E667437EE7C8AE053BA5EF00A6FCB, MY_PROP=MY_VAL1 
08:52:59 - Purging TEST_PURGE_QUEUE_QT 
08:52:59 - Purging complete 
08:52:59 - Enqueued ID 108E667437EF7C8AE053BA5EF00A6FCB 
08:52:59 - Array dequeued 2 message(s). Expected 1 
08:52:59 - Dequeued msg 108E667437EF7C8AE053BA5EF00A6FCB, MY_PROP=MY_VAL2 
08:52:59 - Dequeued msg 108E667437EF7C8AE053BA5EF00A6FCB, MY_PROP=MY_VAL2  

Cause

Sign In with your My Oracle Support account

Don't have a My Oracle Support account? Click to get started

My Oracle Support provides customers with access to over a
Million Knowledge Articles and hundreds of Community platforms