Je suis nouveau sur Oracle AQ.Comment savoir dans Oracle AQ quels messages ont été consommés à partir d'une file d'attente à plusieurs clients
J'ai créé une table et une file d'attente comme ceci:
EXEC dbms_aqadm.create_queue_table(queue_table=>'MY_QUEUE_TABLE',
queue_payload_type=>'sys.aq$_jms_text_message',
multiple_consumers=>TRUE);
EXEC dbms_aqadm.create_queue(queue_name=>'CONTACT_INFO_QUEUE',
queue_table=>'MY_QUEUE_TABLE',
max_retries=>24,
retry_delay=>60,
retention_time=>3600);
Puis j'ai écrit un écouteur à la file d'attente en Java. Lorsque je démarre l'écouteur, il attend 6 minutes puis recueille tous les messages de la file d'attente.
Mais je ne peux pas dire dans MY_QUEUE_TABLE quels messages ont été consommés. Parce que je veux une file d'attente multi-consommateurs, je pense que les messages devraient rester. Cependant, comment Oracle AQ garde-t-il la trace des messages que chaque écouteur a consommés?