You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@activemq.apache.org by "john lilley (Jira)" <ji...@apache.org> on 2022/11/09 21:54:00 UTC

[jira] [Created] (ARTEMIS-4089) Auto-deleted queue with active producer leaves producer disabled

john lilley created ARTEMIS-4089:
------------------------------------

             Summary: Auto-deleted queue with active producer leaves producer disabled
                 Key: ARTEMIS-4089
                 URL: https://issues.apache.org/jira/browse/ARTEMIS-4089
             Project: ActiveMQ Artemis
          Issue Type: Bug
          Components: ActiveMQ-Artemis-Native
    Affects Versions: 2.26.0
            Reporter: john lilley
            Assignee: Clebert Suconic
         Attachments: image-2022-11-09-14-33-14-216.png, image-2022-11-09-14-33-54-881.png, image-2022-11-09-14-35-52-506.png, image-2022-11-09-14-36-13-274.png, image-2022-11-09-14-36-41-631.png, image-2022-11-09-14-40-30-793.png, scratch.zip

DISCLAIMER: this bug happens sometimes and then goes away, even using the simple test case I've attached.  I would love to know why or how it comes and goes, but I just don't know.

Configure Artemis to auto-delete queues.
 * there is a queue producer and queue consumer running in different processes
 * the producer sends a few messages, and the consumer drains the queue
 * quit the producer process
 * enough time elapses that Artemis auto-deletes the queue
 * start the producer process
 * send a few messages

Expected: queue is re-created and consumer is delivered messages

Actual: producer send() fails silently, queue is not re-created, consumer sees no messages

To reproduce, build the attached maven project in scratch.zip.  The version of java doesn't seem to matter - at least, Java 8 and 17 are the same.

In separate consoles run

{{java -cp target/*shad* net.redpoint.test.TestSend}}

{{java -cp target/*shad* net.redpoint.test.TestConsume}}

You will see something like

!image-2022-11-09-14-33-14-216.png!

Hit enter on the sending console, and it will send a message (or two, on Windows)

!image-2022-11-09-14-33-54-881.png!

Ctrl-C to kill the consumer but _leave the producer running_

Bring up the Artemis console and browse queues

!image-2022-11-09-14-36-41-631.png!

Wait just long enough for the Artemis console to show that "myqueue" has been auto-deleted

!image-2022-11-09-14-40-30-793.png!

(or wait until the artemis command-line window logs that the queue was deleted)

Start the consumer again.

Hit Enter on the producer window.  It will send a message.

But.. the queue is not recreated, and the send() fails silently.

 



--
This message was sent by Atlassian Jira
(v8.20.10#820010)