[jira] [Updated] (ARTEMIS-4952) JMX countMessages: groupBy not working on AMQP messages
[ https://issues.apache.org/jira/browse/ARTEMIS-4952?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] nmeylan updated ARTEMIS-4952: - Component/s: JMX > JMX countMessages: groupBy not working on AMQP messages > --- > > Key: ARTEMIS-4952 > URL: https://issues.apache.org/jira/browse/ARTEMIS-4952 > Project: ActiveMQ Artemis > Issue Type: Bug > Components: JMX >Affects Versions: 2.35.0 >Reporter: nmeylan >Priority: Minor > Attachments: image-2024-07-25-09-54-32-066.png > > > I encountered weird behavior with JMX _countMessages(String, String)_ when > messages are produced via *AMQP* then moved to another queue and when I call > *countMessages* operation with a group by > h2. Context: > * I create *1600 *messages to *queue.1*, using *CORE* protocol > * I create *440 *messages to *queue.2*, using *AMQP* protocol > * I move all messages from *queue.1* to *dl.default* queue, using > moveMessages operation > * I move all messages from *queue.2* to *dl.default* queue, using > moveMessages operation > > h2. Current behavior > Calling *countMessages* operation on queue *dl.default* with a groupBy _ > _AMQ_ORIG_QUEUE_ i get: > {code} > {"null": 440, "queue.1": 1600} > {code} > If I also filter by _ _AMQ_ORIG_QUEUE='queue.2'_ i get > {code} > {"null": 440} > {code} > !image-2024-07-25-09-54-32-066.png! > > h2. Expected behavior > Calling *countMessages* operation on queue *dl.default* with a groupBy _ > _AMQ_ORIG_QUEUE_ i get: > {code} > {"queue.2": 440, "queue.1": 1600} > {code} > h2. Notes > I was wondering why > [message.getObjectProperty|https://github.com/apache/activemq-artemis/blob/41ec279e2240fd4a84e1c0e7902623682bc5e785/artemis-server/src/main/java/org/apache/activemq/artemis/core/management/impl/QueueControlImpl.java#L1164] > is called instead of > [message.getObjectPropertyForFilter|https://github.com/apache/activemq-artemis/blob/41ec279e2240fd4a84e1c0e7902623682bc5e785/artemis-server/src/main/java/org/apache/activemq/artemis/core/filter/impl/FilterImpl.java#L237] > as for filtering > I did the test using getObjectPropertyForFilter instead of getObjectProperty > and it works -- This message was sent by Atlassian Jira (v8.20.10#820010) - To unsubscribe, e-mail: issues-unsubscr...@activemq.apache.org For additional commands, e-mail: issues-h...@activemq.apache.org For further information, visit: https://activemq.apache.org/contact
[jira] [Updated] (ARTEMIS-4952) JMX countMessages: groupBy not working on AMQP messages
[ https://issues.apache.org/jira/browse/ARTEMIS-4952?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] nmeylan updated ARTEMIS-4952: - Component/s: management > JMX countMessages: groupBy not working on AMQP messages > --- > > Key: ARTEMIS-4952 > URL: https://issues.apache.org/jira/browse/ARTEMIS-4952 > Project: ActiveMQ Artemis > Issue Type: Bug > Components: JMX, management >Affects Versions: 2.35.0 >Reporter: nmeylan >Priority: Minor > Attachments: image-2024-07-25-09-54-32-066.png > > > I encountered weird behavior with JMX _countMessages(String, String)_ when > messages are produced via *AMQP* then moved to another queue and when I call > *countMessages* operation with a group by > h2. Context: > * I create *1600 *messages to *queue.1*, using *CORE* protocol > * I create *440 *messages to *queue.2*, using *AMQP* protocol > * I move all messages from *queue.1* to *dl.default* queue, using > moveMessages operation > * I move all messages from *queue.2* to *dl.default* queue, using > moveMessages operation > > h2. Current behavior > Calling *countMessages* operation on queue *dl.default* with a groupBy _ > _AMQ_ORIG_QUEUE_ i get: > {code} > {"null": 440, "queue.1": 1600} > {code} > If I also filter by _ _AMQ_ORIG_QUEUE='queue.2'_ i get > {code} > {"null": 440} > {code} > !image-2024-07-25-09-54-32-066.png! > > h2. Expected behavior > Calling *countMessages* operation on queue *dl.default* with a groupBy _ > _AMQ_ORIG_QUEUE_ i get: > {code} > {"queue.2": 440, "queue.1": 1600} > {code} > h2. Notes > I was wondering why > [message.getObjectProperty|https://github.com/apache/activemq-artemis/blob/41ec279e2240fd4a84e1c0e7902623682bc5e785/artemis-server/src/main/java/org/apache/activemq/artemis/core/management/impl/QueueControlImpl.java#L1164] > is called instead of > [message.getObjectPropertyForFilter|https://github.com/apache/activemq-artemis/blob/41ec279e2240fd4a84e1c0e7902623682bc5e785/artemis-server/src/main/java/org/apache/activemq/artemis/core/filter/impl/FilterImpl.java#L237] > as for filtering > I did the test using getObjectPropertyForFilter instead of getObjectProperty > and it works -- This message was sent by Atlassian Jira (v8.20.10#820010) - To unsubscribe, e-mail: issues-unsubscr...@activemq.apache.org For additional commands, e-mail: issues-h...@activemq.apache.org For further information, visit: https://activemq.apache.org/contact
[jira] [Updated] (ARTEMIS-4952) JMX countMessages: groupBy not working on AMQP messages
[ https://issues.apache.org/jira/browse/ARTEMIS-4952?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] nmeylan updated ARTEMIS-4952: - Description: I encountered weird behavior with JMX _countMessages(String, String)_ when messages are produced via *AMQP* then moved to another queue and when I call *countMessages* operation with a group by h2. Context: * I create *1600 *messages to *queue.1*, using *CORE* protocol * I create *440 *messages to *queue.2*, using *AMQP* protocol * I move all messages from *queue.1* to *dl.default* queue, using moveMessages operation * I move all messages from *queue.2* to *dl.default* queue, using moveMessages operation h2. Current behavior Calling *countMessages* operation on queue *dl.default* with a groupBy _ _AMQ_ORIG_QUEUE_ i get: {code} {"null": 440, "queue.1": 1600} {code} If I also filter by _ _AMQ_ORIG_QUEUE="queue.2"_ i get {code} {"null": 440} {code} !image-2024-07-25-09-54-32-066.png! h2. Expected behavior Calling *countMessages* operation on queue *dl.default* with a groupBy _ _AMQ_ORIG_QUEUE_ i get: {code} {"queue.2": 440, "queue.1": 1600} {code} h2. Notes I was wondering why [message.getObjectProperty|https://github.com/apache/activemq-artemis/blob/41ec279e2240fd4a84e1c0e7902623682bc5e785/artemis-server/src/main/java/org/apache/activemq/artemis/core/management/impl/QueueControlImpl.java#L1164] is called instead of [message.getObjectPropertyForFilter|https://github.com/apache/activemq-artemis/blob/41ec279e2240fd4a84e1c0e7902623682bc5e785/artemis-server/src/main/java/org/apache/activemq/artemis/core/filter/impl/FilterImpl.java#L237] as for filtering I did the test using getObjectPropertyForFilter instead of getObjectProperty and it works was: I encountered weird behavior with JMX _countMessages(String, String)_ when messages are produced via *AMQP* then moved to another queue and when I call *countMessages* operation with a group by h2. Context: * I create *1600 *messages to *queue.1*, using *CORE* protocol * I create *440 *messages to *queue.2*, using *AMQP* protocol * I move all messages from *queue.1* to *dl.default* queue, using moveMessages operation * I move all messages from *queue.2* to *dl.default* queue, using moveMessages operation h2. Current behavior Calling *countMessages* operation on queue *dl.default* with a groupBy _ _AMQ_ORIG_QUEUE_ i get: {code} {"null": 440, "queue.1": 1600} {code} If I also filter by _ _AMQ_ORIG_QUEUE="queue.2"_ i get {code} {"null": 440} {code} !image-2024-07-25-09-54-32-066.png! h2. Expected behavior Calling *countMessages* operation with a groupBy _ _AMQ_ORIG_QUEUE_ i get: {code} {"queue.2": 440, "queue.1": 1600} {code} h2. Notes I was wondering why [message.getObjectProperty|https://github.com/apache/activemq-artemis/blob/41ec279e2240fd4a84e1c0e7902623682bc5e785/artemis-server/src/main/java/org/apache/activemq/artemis/core/management/impl/QueueControlImpl.java#L1164] is called instead of [message.getObjectPropertyForFilter|https://github.com/apache/activemq-artemis/blob/41ec279e2240fd4a84e1c0e7902623682bc5e785/artemis-server/src/main/java/org/apache/activemq/artemis/core/filter/impl/FilterImpl.java#L237] as for filtering I did the test using getObjectPropertyForFilter instead of getObjectProperty and it works > JMX countMessages: groupBy not working on AMQP messages > --- > > Key: ARTEMIS-4952 > URL: https://issues.apache.org/jira/browse/ARTEMIS-4952 > Project: ActiveMQ Artemis > Issue Type: Bug >Reporter: nmeylan >Priority: Major > Attachments: image-2024-07-25-09-54-32-066.png > > > I encountered weird behavior with JMX _countMessages(String, String)_ when > messages are produced via *AMQP* then moved to another queue and when I call > *countMessages* operation with a group by > h2. Context: > * I create *1600 *messages to *queue.1*, using *CORE* protocol > * I create *440 *messages to *queue.2*, using *AMQP* protocol > * I move all messages from *queue.1* to *dl.default* queue, using > moveMessages operation > * I move all messages from *queue.2* to *dl.default* queue, using > moveMessages operation > > h2. Current behavior > Calling *countMessages* operation on queue *dl.default* with a groupBy _ > _AMQ_ORIG_QUEUE_ i get: > {code} > {"null": 440, "queue.1": 1600} > {code} > If I also filter by _ _AMQ_ORIG_QUEUE="queue.2"_ i get > {code} > {"null": 440} > {code} > !image-2024-07-25-09-54-32-066.png! > > h2. Expected behavior > Calling *countMessages* operation on queue *dl.default* with a groupBy _ > _AMQ_ORIG_QUEUE_ i get: > {code} > {"queue.2": 440, "queue.1": 1600} > {code} > h2. Notes > I was wondering why > [message.getObjectProperty|https://github.com/apache/activemq-artemis/blob/41ec279e2240fd4a84e1c0e7902623682bc5e785/artemis-server/src/main/java/org/apache/act
[jira] [Updated] (ARTEMIS-4952) JMX countMessages: groupBy not working on AMQP messages
[ https://issues.apache.org/jira/browse/ARTEMIS-4952?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] nmeylan updated ARTEMIS-4952: - Description: I encountered weird behavior with JMX _countMessages(String, String)_ when messages are produced via *AMQP* then moved to another queue and when I call *countMessages* operation with a group by h2. Context: * I create *1600 *messages to *queue.1*, using *CORE* protocol * I create *440 *messages to *queue.2*, using *AMQP* protocol * I move all messages from *queue.1* to *dl.default* queue * I move all messages from *queue.2* to *dl.default* queue h2. Current behavior Calling *countMessages* operation with a groupBy _ _AMQ_ORIG_QUEUE_ i get: {code} {"null": 440, "queue.1": 1600} {code} If I also filter by _ _AMQ_ORIG_QUEUE="queue.2"_ i get {code} {"null": 440} {code} !image-2024-07-25-09-54-32-066.png! h2. Expected behavior Calling *countMessages* operation with a groupBy _ _AMQ_ORIG_QUEUE_ i get: {code} {"queue.2": 440, "queue.1": 1600} {code} h2. Notes I was wondering why [message.getObjectProperty|https://github.com/apache/activemq-artemis/blob/41ec279e2240fd4a84e1c0e7902623682bc5e785/artemis-server/src/main/java/org/apache/activemq/artemis/core/management/impl/QueueControlImpl.java#L1164] is called instead of [message.getObjectPropertyForFilter|https://github.com/apache/activemq-artemis/blob/41ec279e2240fd4a84e1c0e7902623682bc5e785/artemis-server/src/main/java/org/apache/activemq/artemis/core/filter/impl/FilterImpl.java#L237] as for filtering I did the test using getObjectPropertyForFilter instead of getObjectProperty and it works was: I encountered weird behavior with JMX _countMessages(String, String)_ when messages are produced via *AMQP *then moved to another queue and when I call *countMessages* operation with a group by h2. Context: * I create *1600 *messages to *queue.1*, using *CORE* protocol * I create *440 *messages to *queue.2*, using *AMQP* protocol * I move all messages from *queue.1* to *dl.default* queue * I move all messages from *queue.2* to *dl.default* queue h2. Current behavior Calling *countMessages* operation with a groupBy _ _AMQ_ORIG_QUEUE_ i get: {code} {"null": 440, "queue.1": 1600} {code} If I also filter by _ _AMQ_ORIG_QUEUE="queue.2"_ i get {code} {"null": 440} {code} !image-2024-07-25-09-54-32-066.png! h2. Expected behavior Calling *countMessages* operation with a groupBy _ _AMQ_ORIG_QUEUE_ i get: {code} {"queue.2": 440, "queue.1": 1600} {code} h2. Notes I was wondering why [message.getObjectProperty|https://github.com/apache/activemq-artemis/blob/41ec279e2240fd4a84e1c0e7902623682bc5e785/artemis-server/src/main/java/org/apache/activemq/artemis/core/management/impl/QueueControlImpl.java#L1164] is called instead of [message.getObjectPropertyForFilter|https://github.com/apache/activemq-artemis/blob/41ec279e2240fd4a84e1c0e7902623682bc5e785/artemis-server/src/main/java/org/apache/activemq/artemis/core/filter/impl/FilterImpl.java#L237] as for filtering I did the test using getObjectPropertyForFilter instead of getObjectProperty and it works > JMX countMessages: groupBy not working on AMQP messages > --- > > Key: ARTEMIS-4952 > URL: https://issues.apache.org/jira/browse/ARTEMIS-4952 > Project: ActiveMQ Artemis > Issue Type: Bug >Reporter: nmeylan >Priority: Major > Attachments: image-2024-07-25-09-54-32-066.png > > > I encountered weird behavior with JMX _countMessages(String, String)_ when > messages are produced via *AMQP* then moved to another queue and when I call > *countMessages* operation with a group by > h2. Context: > * I create *1600 *messages to *queue.1*, using *CORE* protocol > * I create *440 *messages to *queue.2*, using *AMQP* protocol > * I move all messages from *queue.1* to *dl.default* queue > * I move all messages from *queue.2* to *dl.default* queue > > h2. Current behavior > Calling *countMessages* operation with a groupBy _ _AMQ_ORIG_QUEUE_ i get: > {code} > {"null": 440, "queue.1": 1600} > {code} > If I also filter by _ _AMQ_ORIG_QUEUE="queue.2"_ i get > {code} > {"null": 440} > {code} > !image-2024-07-25-09-54-32-066.png! > > h2. Expected behavior > Calling *countMessages* operation with a groupBy _ _AMQ_ORIG_QUEUE_ i get: > {code} > {"queue.2": 440, "queue.1": 1600} > {code} > h2. Notes > I was wondering why > [message.getObjectProperty|https://github.com/apache/activemq-artemis/blob/41ec279e2240fd4a84e1c0e7902623682bc5e785/artemis-server/src/main/java/org/apache/activemq/artemis/core/management/impl/QueueControlImpl.java#L1164] > is called instead of > [message.getObjectPropertyForFilter|https://github.com/apache/activemq-artemis/blob/41ec279e2240fd4a84e1c0e7902623682bc5e785/artemis-server/src/main/java/org/apache/activemq/artemis/core/filter/impl/FilterImpl.java#L23
[jira] [Updated] (ARTEMIS-4952) JMX countMessages: groupBy not working on AMQP messages
[ https://issues.apache.org/jira/browse/ARTEMIS-4952?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] nmeylan updated ARTEMIS-4952: - Description: I encountered weird behavior with JMX _countMessages(String, String)_ when messages are produced via *AMQP* then moved to another queue and when I call *countMessages* operation with a group by h2. Context: * I create *1600 *messages to *queue.1*, using *CORE* protocol * I create *440 *messages to *queue.2*, using *AMQP* protocol * I move all messages from *queue.1* to *dl.default* queue, using moveMessages operation * I move all messages from *queue.2* to *dl.default* queue, using moveMessages operation h2. Current behavior Calling *countMessages* operation on queue *dl.default* with a groupBy _ _AMQ_ORIG_QUEUE_ i get: {code} {"null": 440, "queue.1": 1600} {code} If I also filter by _ _AMQ_ORIG_QUEUE='queue.2'_ i get {code} {"null": 440} {code} !image-2024-07-25-09-54-32-066.png! h2. Expected behavior Calling *countMessages* operation on queue *dl.default* with a groupBy _ _AMQ_ORIG_QUEUE_ i get: {code} {"queue.2": 440, "queue.1": 1600} {code} h2. Notes I was wondering why [message.getObjectProperty|https://github.com/apache/activemq-artemis/blob/41ec279e2240fd4a84e1c0e7902623682bc5e785/artemis-server/src/main/java/org/apache/activemq/artemis/core/management/impl/QueueControlImpl.java#L1164] is called instead of [message.getObjectPropertyForFilter|https://github.com/apache/activemq-artemis/blob/41ec279e2240fd4a84e1c0e7902623682bc5e785/artemis-server/src/main/java/org/apache/activemq/artemis/core/filter/impl/FilterImpl.java#L237] as for filtering I did the test using getObjectPropertyForFilter instead of getObjectProperty and it works was: I encountered weird behavior with JMX _countMessages(String, String)_ when messages are produced via *AMQP* then moved to another queue and when I call *countMessages* operation with a group by h2. Context: * I create *1600 *messages to *queue.1*, using *CORE* protocol * I create *440 *messages to *queue.2*, using *AMQP* protocol * I move all messages from *queue.1* to *dl.default* queue, using moveMessages operation * I move all messages from *queue.2* to *dl.default* queue, using moveMessages operation h2. Current behavior Calling *countMessages* operation on queue *dl.default* with a groupBy _ _AMQ_ORIG_QUEUE_ i get: {code} {"null": 440, "queue.1": 1600} {code} If I also filter by _ _AMQ_ORIG_QUEUE="queue.2"_ i get {code} {"null": 440} {code} !image-2024-07-25-09-54-32-066.png! h2. Expected behavior Calling *countMessages* operation on queue *dl.default* with a groupBy _ _AMQ_ORIG_QUEUE_ i get: {code} {"queue.2": 440, "queue.1": 1600} {code} h2. Notes I was wondering why [message.getObjectProperty|https://github.com/apache/activemq-artemis/blob/41ec279e2240fd4a84e1c0e7902623682bc5e785/artemis-server/src/main/java/org/apache/activemq/artemis/core/management/impl/QueueControlImpl.java#L1164] is called instead of [message.getObjectPropertyForFilter|https://github.com/apache/activemq-artemis/blob/41ec279e2240fd4a84e1c0e7902623682bc5e785/artemis-server/src/main/java/org/apache/activemq/artemis/core/filter/impl/FilterImpl.java#L237] as for filtering I did the test using getObjectPropertyForFilter instead of getObjectProperty and it works > JMX countMessages: groupBy not working on AMQP messages > --- > > Key: ARTEMIS-4952 > URL: https://issues.apache.org/jira/browse/ARTEMIS-4952 > Project: ActiveMQ Artemis > Issue Type: Bug >Reporter: nmeylan >Priority: Major > Attachments: image-2024-07-25-09-54-32-066.png > > > I encountered weird behavior with JMX _countMessages(String, String)_ when > messages are produced via *AMQP* then moved to another queue and when I call > *countMessages* operation with a group by > h2. Context: > * I create *1600 *messages to *queue.1*, using *CORE* protocol > * I create *440 *messages to *queue.2*, using *AMQP* protocol > * I move all messages from *queue.1* to *dl.default* queue, using > moveMessages operation > * I move all messages from *queue.2* to *dl.default* queue, using > moveMessages operation > > h2. Current behavior > Calling *countMessages* operation on queue *dl.default* with a groupBy _ > _AMQ_ORIG_QUEUE_ i get: > {code} > {"null": 440, "queue.1": 1600} > {code} > If I also filter by _ _AMQ_ORIG_QUEUE='queue.2'_ i get > {code} > {"null": 440} > {code} > !image-2024-07-25-09-54-32-066.png! > > h2. Expected behavior > Calling *countMessages* operation on queue *dl.default* with a groupBy _ > _AMQ_ORIG_QUEUE_ i get: > {code} > {"queue.2": 440, "queue.1": 1600} > {code} > h2. Notes > I was wondering why > [message.getObjectProperty|https://github.com/apache/activemq-artemis/blob/41ec279e2240fd4a84e1c0e7902623682bc5e785/artemis-server/src/m
[jira] [Updated] (ARTEMIS-4952) JMX countMessages: groupBy not working on AMQP messages
[ https://issues.apache.org/jira/browse/ARTEMIS-4952?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] nmeylan updated ARTEMIS-4952: - Description: I encountered weird behavior with JMX _countMessages(String, String)_ when messages are produced via *AMQP* then moved to another queue and when I call *countMessages* operation with a group by h2. Context: * I create *1600 *messages to *queue.1*, using *CORE* protocol * I create *440 *messages to *queue.2*, using *AMQP* protocol * I move all messages from *queue.1* to *dl.default* queue, using moveMessages operation * I move all messages from *queue.2* to *dl.default* queue, using moveMessages operation h2. Current behavior Calling *countMessages* operation with a groupBy _ _AMQ_ORIG_QUEUE_ i get: {code} {"null": 440, "queue.1": 1600} {code} If I also filter by _ _AMQ_ORIG_QUEUE="queue.2"_ i get {code} {"null": 440} {code} !image-2024-07-25-09-54-32-066.png! h2. Expected behavior Calling *countMessages* operation with a groupBy _ _AMQ_ORIG_QUEUE_ i get: {code} {"queue.2": 440, "queue.1": 1600} {code} h2. Notes I was wondering why [message.getObjectProperty|https://github.com/apache/activemq-artemis/blob/41ec279e2240fd4a84e1c0e7902623682bc5e785/artemis-server/src/main/java/org/apache/activemq/artemis/core/management/impl/QueueControlImpl.java#L1164] is called instead of [message.getObjectPropertyForFilter|https://github.com/apache/activemq-artemis/blob/41ec279e2240fd4a84e1c0e7902623682bc5e785/artemis-server/src/main/java/org/apache/activemq/artemis/core/filter/impl/FilterImpl.java#L237] as for filtering I did the test using getObjectPropertyForFilter instead of getObjectProperty and it works was: I encountered weird behavior with JMX _countMessages(String, String)_ when messages are produced via *AMQP* then moved to another queue and when I call *countMessages* operation with a group by h2. Context: * I create *1600 *messages to *queue.1*, using *CORE* protocol * I create *440 *messages to *queue.2*, using *AMQP* protocol * I move all messages from *queue.1* to *dl.default* queue * I move all messages from *queue.2* to *dl.default* queue h2. Current behavior Calling *countMessages* operation with a groupBy _ _AMQ_ORIG_QUEUE_ i get: {code} {"null": 440, "queue.1": 1600} {code} If I also filter by _ _AMQ_ORIG_QUEUE="queue.2"_ i get {code} {"null": 440} {code} !image-2024-07-25-09-54-32-066.png! h2. Expected behavior Calling *countMessages* operation with a groupBy _ _AMQ_ORIG_QUEUE_ i get: {code} {"queue.2": 440, "queue.1": 1600} {code} h2. Notes I was wondering why [message.getObjectProperty|https://github.com/apache/activemq-artemis/blob/41ec279e2240fd4a84e1c0e7902623682bc5e785/artemis-server/src/main/java/org/apache/activemq/artemis/core/management/impl/QueueControlImpl.java#L1164] is called instead of [message.getObjectPropertyForFilter|https://github.com/apache/activemq-artemis/blob/41ec279e2240fd4a84e1c0e7902623682bc5e785/artemis-server/src/main/java/org/apache/activemq/artemis/core/filter/impl/FilterImpl.java#L237] as for filtering I did the test using getObjectPropertyForFilter instead of getObjectProperty and it works > JMX countMessages: groupBy not working on AMQP messages > --- > > Key: ARTEMIS-4952 > URL: https://issues.apache.org/jira/browse/ARTEMIS-4952 > Project: ActiveMQ Artemis > Issue Type: Bug >Reporter: nmeylan >Priority: Major > Attachments: image-2024-07-25-09-54-32-066.png > > > I encountered weird behavior with JMX _countMessages(String, String)_ when > messages are produced via *AMQP* then moved to another queue and when I call > *countMessages* operation with a group by > h2. Context: > * I create *1600 *messages to *queue.1*, using *CORE* protocol > * I create *440 *messages to *queue.2*, using *AMQP* protocol > * I move all messages from *queue.1* to *dl.default* queue, using > moveMessages operation > * I move all messages from *queue.2* to *dl.default* queue, using > moveMessages operation > > h2. Current behavior > Calling *countMessages* operation with a groupBy _ _AMQ_ORIG_QUEUE_ i get: > {code} > {"null": 440, "queue.1": 1600} > {code} > If I also filter by _ _AMQ_ORIG_QUEUE="queue.2"_ i get > {code} > {"null": 440} > {code} > !image-2024-07-25-09-54-32-066.png! > > h2. Expected behavior > Calling *countMessages* operation with a groupBy _ _AMQ_ORIG_QUEUE_ i get: > {code} > {"queue.2": 440, "queue.1": 1600} > {code} > h2. Notes > I was wondering why > [message.getObjectProperty|https://github.com/apache/activemq-artemis/blob/41ec279e2240fd4a84e1c0e7902623682bc5e785/artemis-server/src/main/java/org/apache/activemq/artemis/core/management/impl/QueueControlImpl.java#L1164] > is called instead of > [message.getObjectPropertyForFilter|https://github.com/apache/activemq-artemis/blob/41ec27
[jira] [Updated] (ARTEMIS-4952) JMX countMessages: groupBy not working on AMQP messages
[ https://issues.apache.org/jira/browse/ARTEMIS-4952?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] nmeylan updated ARTEMIS-4952: - Description: I encountered weird behavior with JMX _countMessages(String, String)_ when messages are produced via *AMQP* then moved to another queue and when I call *countMessages* operation with a group by h2. Context: * I create *1600 *messages to *queue.1*, using *CORE* protocol * I create *440 *messages to *queue.2*, using *AMQP* protocol * I move all messages from *queue.1* to *dl.default* queue, using moveMessages operation * I move all messages from *queue.2* to *dl.default* queue, using moveMessages operation h2. Current behavior Calling *countMessages* operation on queue *dl.default* with a groupBy _ _AMQ_ORIG_QUEUE_ i get: {code} {"null": 440, "queue.1": 1600} {code} If I also filter by _ _AMQ_ORIG_QUEUE="queue.2"_ i get {code} {"null": 440} {code} !image-2024-07-25-09-54-32-066.png! h2. Expected behavior Calling *countMessages* operation with a groupBy _ _AMQ_ORIG_QUEUE_ i get: {code} {"queue.2": 440, "queue.1": 1600} {code} h2. Notes I was wondering why [message.getObjectProperty|https://github.com/apache/activemq-artemis/blob/41ec279e2240fd4a84e1c0e7902623682bc5e785/artemis-server/src/main/java/org/apache/activemq/artemis/core/management/impl/QueueControlImpl.java#L1164] is called instead of [message.getObjectPropertyForFilter|https://github.com/apache/activemq-artemis/blob/41ec279e2240fd4a84e1c0e7902623682bc5e785/artemis-server/src/main/java/org/apache/activemq/artemis/core/filter/impl/FilterImpl.java#L237] as for filtering I did the test using getObjectPropertyForFilter instead of getObjectProperty and it works was: I encountered weird behavior with JMX _countMessages(String, String)_ when messages are produced via *AMQP* then moved to another queue and when I call *countMessages* operation with a group by h2. Context: * I create *1600 *messages to *queue.1*, using *CORE* protocol * I create *440 *messages to *queue.2*, using *AMQP* protocol * I move all messages from *queue.1* to *dl.default* queue, using moveMessages operation * I move all messages from *queue.2* to *dl.default* queue, using moveMessages operation h2. Current behavior Calling *countMessages* operation with a groupBy _ _AMQ_ORIG_QUEUE_ i get: {code} {"null": 440, "queue.1": 1600} {code} If I also filter by _ _AMQ_ORIG_QUEUE="queue.2"_ i get {code} {"null": 440} {code} !image-2024-07-25-09-54-32-066.png! h2. Expected behavior Calling *countMessages* operation with a groupBy _ _AMQ_ORIG_QUEUE_ i get: {code} {"queue.2": 440, "queue.1": 1600} {code} h2. Notes I was wondering why [message.getObjectProperty|https://github.com/apache/activemq-artemis/blob/41ec279e2240fd4a84e1c0e7902623682bc5e785/artemis-server/src/main/java/org/apache/activemq/artemis/core/management/impl/QueueControlImpl.java#L1164] is called instead of [message.getObjectPropertyForFilter|https://github.com/apache/activemq-artemis/blob/41ec279e2240fd4a84e1c0e7902623682bc5e785/artemis-server/src/main/java/org/apache/activemq/artemis/core/filter/impl/FilterImpl.java#L237] as for filtering I did the test using getObjectPropertyForFilter instead of getObjectProperty and it works > JMX countMessages: groupBy not working on AMQP messages > --- > > Key: ARTEMIS-4952 > URL: https://issues.apache.org/jira/browse/ARTEMIS-4952 > Project: ActiveMQ Artemis > Issue Type: Bug >Reporter: nmeylan >Priority: Major > Attachments: image-2024-07-25-09-54-32-066.png > > > I encountered weird behavior with JMX _countMessages(String, String)_ when > messages are produced via *AMQP* then moved to another queue and when I call > *countMessages* operation with a group by > h2. Context: > * I create *1600 *messages to *queue.1*, using *CORE* protocol > * I create *440 *messages to *queue.2*, using *AMQP* protocol > * I move all messages from *queue.1* to *dl.default* queue, using > moveMessages operation > * I move all messages from *queue.2* to *dl.default* queue, using > moveMessages operation > > h2. Current behavior > Calling *countMessages* operation on queue *dl.default* with a groupBy _ > _AMQ_ORIG_QUEUE_ i get: > {code} > {"null": 440, "queue.1": 1600} > {code} > If I also filter by _ _AMQ_ORIG_QUEUE="queue.2"_ i get > {code} > {"null": 440} > {code} > !image-2024-07-25-09-54-32-066.png! > > h2. Expected behavior > Calling *countMessages* operation with a groupBy _ _AMQ_ORIG_QUEUE_ i get: > {code} > {"queue.2": 440, "queue.1": 1600} > {code} > h2. Notes > I was wondering why > [message.getObjectProperty|https://github.com/apache/activemq-artemis/blob/41ec279e2240fd4a84e1c0e7902623682bc5e785/artemis-server/src/main/java/org/apache/activemq/artemis/core/management/impl/QueueControlImpl.java#L1164] > is c
[jira] [Updated] (ARTEMIS-4952) JMX countMessages: groupBy not working on AMQP messages
[ https://issues.apache.org/jira/browse/ARTEMIS-4952?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] nmeylan updated ARTEMIS-4952: - Priority: Minor (was: Major) > JMX countMessages: groupBy not working on AMQP messages > --- > > Key: ARTEMIS-4952 > URL: https://issues.apache.org/jira/browse/ARTEMIS-4952 > Project: ActiveMQ Artemis > Issue Type: Bug >Reporter: nmeylan >Priority: Minor > Attachments: image-2024-07-25-09-54-32-066.png > > > I encountered weird behavior with JMX _countMessages(String, String)_ when > messages are produced via *AMQP* then moved to another queue and when I call > *countMessages* operation with a group by > h2. Context: > * I create *1600 *messages to *queue.1*, using *CORE* protocol > * I create *440 *messages to *queue.2*, using *AMQP* protocol > * I move all messages from *queue.1* to *dl.default* queue, using > moveMessages operation > * I move all messages from *queue.2* to *dl.default* queue, using > moveMessages operation > > h2. Current behavior > Calling *countMessages* operation on queue *dl.default* with a groupBy _ > _AMQ_ORIG_QUEUE_ i get: > {code} > {"null": 440, "queue.1": 1600} > {code} > If I also filter by _ _AMQ_ORIG_QUEUE='queue.2'_ i get > {code} > {"null": 440} > {code} > !image-2024-07-25-09-54-32-066.png! > > h2. Expected behavior > Calling *countMessages* operation on queue *dl.default* with a groupBy _ > _AMQ_ORIG_QUEUE_ i get: > {code} > {"queue.2": 440, "queue.1": 1600} > {code} > h2. Notes > I was wondering why > [message.getObjectProperty|https://github.com/apache/activemq-artemis/blob/41ec279e2240fd4a84e1c0e7902623682bc5e785/artemis-server/src/main/java/org/apache/activemq/artemis/core/management/impl/QueueControlImpl.java#L1164] > is called instead of > [message.getObjectPropertyForFilter|https://github.com/apache/activemq-artemis/blob/41ec279e2240fd4a84e1c0e7902623682bc5e785/artemis-server/src/main/java/org/apache/activemq/artemis/core/filter/impl/FilterImpl.java#L237] > as for filtering > I did the test using getObjectPropertyForFilter instead of getObjectProperty > and it works -- This message was sent by Atlassian Jira (v8.20.10#820010) - To unsubscribe, e-mail: issues-unsubscr...@activemq.apache.org For additional commands, e-mail: issues-h...@activemq.apache.org For further information, visit: https://activemq.apache.org/contact
[jira] [Updated] (ARTEMIS-4952) JMX countMessages: groupBy not working on AMQP messages
[ https://issues.apache.org/jira/browse/ARTEMIS-4952?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] nmeylan updated ARTEMIS-4952: - Affects Version/s: 2.35.0 > JMX countMessages: groupBy not working on AMQP messages > --- > > Key: ARTEMIS-4952 > URL: https://issues.apache.org/jira/browse/ARTEMIS-4952 > Project: ActiveMQ Artemis > Issue Type: Bug >Affects Versions: 2.35.0 >Reporter: nmeylan >Priority: Minor > Attachments: image-2024-07-25-09-54-32-066.png > > > I encountered weird behavior with JMX _countMessages(String, String)_ when > messages are produced via *AMQP* then moved to another queue and when I call > *countMessages* operation with a group by > h2. Context: > * I create *1600 *messages to *queue.1*, using *CORE* protocol > * I create *440 *messages to *queue.2*, using *AMQP* protocol > * I move all messages from *queue.1* to *dl.default* queue, using > moveMessages operation > * I move all messages from *queue.2* to *dl.default* queue, using > moveMessages operation > > h2. Current behavior > Calling *countMessages* operation on queue *dl.default* with a groupBy _ > _AMQ_ORIG_QUEUE_ i get: > {code} > {"null": 440, "queue.1": 1600} > {code} > If I also filter by _ _AMQ_ORIG_QUEUE='queue.2'_ i get > {code} > {"null": 440} > {code} > !image-2024-07-25-09-54-32-066.png! > > h2. Expected behavior > Calling *countMessages* operation on queue *dl.default* with a groupBy _ > _AMQ_ORIG_QUEUE_ i get: > {code} > {"queue.2": 440, "queue.1": 1600} > {code} > h2. Notes > I was wondering why > [message.getObjectProperty|https://github.com/apache/activemq-artemis/blob/41ec279e2240fd4a84e1c0e7902623682bc5e785/artemis-server/src/main/java/org/apache/activemq/artemis/core/management/impl/QueueControlImpl.java#L1164] > is called instead of > [message.getObjectPropertyForFilter|https://github.com/apache/activemq-artemis/blob/41ec279e2240fd4a84e1c0e7902623682bc5e785/artemis-server/src/main/java/org/apache/activemq/artemis/core/filter/impl/FilterImpl.java#L237] > as for filtering > I did the test using getObjectPropertyForFilter instead of getObjectProperty > and it works -- This message was sent by Atlassian Jira (v8.20.10#820010) - To unsubscribe, e-mail: issues-unsubscr...@activemq.apache.org For additional commands, e-mail: issues-h...@activemq.apache.org For further information, visit: https://activemq.apache.org/contact
[jira] [Updated] (ARTEMIS-4952) JMX countMessages: groupBy not working on AMQP messages
[ https://issues.apache.org/jira/browse/ARTEMIS-4952?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] nmeylan updated ARTEMIS-4952: - Description: I encountered weird behavior with JMX _countMessages(String, String)_ when messages are produced via *AMQP *then moved to another queue and when I call *countMessages *operation with a group by h2. Context: * I create *1600 *messages to *queue.1*, using *CORE* protocol * I create *440 *messages to *queue.2*, using *AMQP* protocol * I move all messages from *queue.1* to *dl.default* queue * I move all messages from *queue.2* to *dl.default* queue h2. Actual Calling *countMessages* operation with a groupBy _ _AMQ_ORIG_QUEUE_ i get: {code} {"null": 440, "queue.1": 1600} {code} If I also filter by _ _AMQ_ORIG_QUEUE="queue.2"_ i get {code} {"null": 440} {code} !image-2024-07-25-09-54-32-066.png! h2. Expected Calling *countMessages* operation with a groupBy _ _AMQ_ORIG_QUEUE_ i get: {code} {"queue.2": 440, "queue.1": 1600} {code} h2. Notes I was wondering why [message.getObjectProperty|https://github.com/apache/activemq-artemis/blob/41ec279e2240fd4a84e1c0e7902623682bc5e785/artemis-server/src/main/java/org/apache/activemq/artemis/core/management/impl/QueueControlImpl.java#L1164] is called instead of [message.getObjectPropertyForFilter|https://github.com/apache/activemq-artemis/blob/41ec279e2240fd4a84e1c0e7902623682bc5e785/artemis-server/src/main/java/org/apache/activemq/artemis/core/filter/impl/FilterImpl.java#L237] as for filtering I did the test using getObjectPropertyForFilter instead of getObjectProperty and it works was: I encountered weird behavior with JMX _countMessages(String, String)_ When messages are produced via *AMQP *then moved to another queue and I call countMessages operation with a group by _ _AMQ_ORIG_QUEUE_ i get: {code} {"null": 440, "another.queue": 1600} {code} If I also filter by _ _AMQ_ORIG_QUEUE_ i get {code} {"null": 440} {code} !image-2024-07-25-09-54-32-066.png! I was wondering why [message.getObjectProperty|https://github.com/apache/activemq-artemis/blob/41ec279e2240fd4a84e1c0e7902623682bc5e785/artemis-server/src/main/java/org/apache/activemq/artemis/core/management/impl/QueueControlImpl.java#L1164] is called instead of [message.getObjectPropertyForFilter|https://github.com/apache/activemq-artemis/blob/41ec279e2240fd4a84e1c0e7902623682bc5e785/artemis-server/src/main/java/org/apache/activemq/artemis/core/filter/impl/FilterImpl.java#L237] as for filtering I did the test using getObjectPropertyForFilter instead of getObjectProperty and it works > JMX countMessages: groupBy not working on AMQP messages > --- > > Key: ARTEMIS-4952 > URL: https://issues.apache.org/jira/browse/ARTEMIS-4952 > Project: ActiveMQ Artemis > Issue Type: Bug >Reporter: nmeylan >Priority: Major > Attachments: image-2024-07-25-09-54-32-066.png > > > I encountered weird behavior with JMX _countMessages(String, String)_ when > messages are produced via *AMQP *then moved to another queue and when I call > *countMessages *operation with a group by > h2. Context: > * I create *1600 *messages to *queue.1*, using *CORE* protocol > * I create *440 *messages to *queue.2*, using *AMQP* protocol > * I move all messages from *queue.1* to *dl.default* queue > * I move all messages from *queue.2* to *dl.default* queue > > h2. Actual > Calling *countMessages* operation with a groupBy _ _AMQ_ORIG_QUEUE_ i get: > {code} > {"null": 440, "queue.1": 1600} > {code} > If I also filter by _ _AMQ_ORIG_QUEUE="queue.2"_ i get > {code} > {"null": 440} > {code} > !image-2024-07-25-09-54-32-066.png! > > h2. Expected > Calling *countMessages* operation with a groupBy _ _AMQ_ORIG_QUEUE_ i get: > {code} > {"queue.2": 440, "queue.1": 1600} > {code} > h2. Notes > I was wondering why > [message.getObjectProperty|https://github.com/apache/activemq-artemis/blob/41ec279e2240fd4a84e1c0e7902623682bc5e785/artemis-server/src/main/java/org/apache/activemq/artemis/core/management/impl/QueueControlImpl.java#L1164] > is called instead of > [message.getObjectPropertyForFilter|https://github.com/apache/activemq-artemis/blob/41ec279e2240fd4a84e1c0e7902623682bc5e785/artemis-server/src/main/java/org/apache/activemq/artemis/core/filter/impl/FilterImpl.java#L237] > as for filtering > I did the test using getObjectPropertyForFilter instead of getObjectProperty > and it works -- This message was sent by Atlassian Jira (v8.20.10#820010) - To unsubscribe, e-mail: issues-unsubscr...@activemq.apache.org For additional commands, e-mail: issues-h...@activemq.apache.org For further information, visit: https://activemq.apache.org/contact
[jira] [Updated] (ARTEMIS-4952) JMX countMessages: groupBy not working on AMQP messages
[ https://issues.apache.org/jira/browse/ARTEMIS-4952?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] nmeylan updated ARTEMIS-4952: - Description: I encountered weird behavior with JMX _countMessages(String, String)_ when messages are produced via *AMQP *then moved to another queue and when I call *countMessages* operation with a group by h2. Context: * I create *1600 *messages to *queue.1*, using *CORE* protocol * I create *440 *messages to *queue.2*, using *AMQP* protocol * I move all messages from *queue.1* to *dl.default* queue * I move all messages from *queue.2* to *dl.default* queue h2. Current behavior Calling *countMessages* operation with a groupBy _ _AMQ_ORIG_QUEUE_ i get: {code} {"null": 440, "queue.1": 1600} {code} If I also filter by _ _AMQ_ORIG_QUEUE="queue.2"_ i get {code} {"null": 440} {code} !image-2024-07-25-09-54-32-066.png! h2. Expected behavior Calling *countMessages* operation with a groupBy _ _AMQ_ORIG_QUEUE_ i get: {code} {"queue.2": 440, "queue.1": 1600} {code} h2. Notes I was wondering why [message.getObjectProperty|https://github.com/apache/activemq-artemis/blob/41ec279e2240fd4a84e1c0e7902623682bc5e785/artemis-server/src/main/java/org/apache/activemq/artemis/core/management/impl/QueueControlImpl.java#L1164] is called instead of [message.getObjectPropertyForFilter|https://github.com/apache/activemq-artemis/blob/41ec279e2240fd4a84e1c0e7902623682bc5e785/artemis-server/src/main/java/org/apache/activemq/artemis/core/filter/impl/FilterImpl.java#L237] as for filtering I did the test using getObjectPropertyForFilter instead of getObjectProperty and it works was: I encountered weird behavior with JMX _countMessages(String, String)_ when messages are produced via *AMQP *then moved to another queue and when I call *countMessages *operation with a group by h2. Context: * I create *1600 *messages to *queue.1*, using *CORE* protocol * I create *440 *messages to *queue.2*, using *AMQP* protocol * I move all messages from *queue.1* to *dl.default* queue * I move all messages from *queue.2* to *dl.default* queue h2. Actual Calling *countMessages* operation with a groupBy _ _AMQ_ORIG_QUEUE_ i get: {code} {"null": 440, "queue.1": 1600} {code} If I also filter by _ _AMQ_ORIG_QUEUE="queue.2"_ i get {code} {"null": 440} {code} !image-2024-07-25-09-54-32-066.png! h2. Expected Calling *countMessages* operation with a groupBy _ _AMQ_ORIG_QUEUE_ i get: {code} {"queue.2": 440, "queue.1": 1600} {code} h2. Notes I was wondering why [message.getObjectProperty|https://github.com/apache/activemq-artemis/blob/41ec279e2240fd4a84e1c0e7902623682bc5e785/artemis-server/src/main/java/org/apache/activemq/artemis/core/management/impl/QueueControlImpl.java#L1164] is called instead of [message.getObjectPropertyForFilter|https://github.com/apache/activemq-artemis/blob/41ec279e2240fd4a84e1c0e7902623682bc5e785/artemis-server/src/main/java/org/apache/activemq/artemis/core/filter/impl/FilterImpl.java#L237] as for filtering I did the test using getObjectPropertyForFilter instead of getObjectProperty and it works > JMX countMessages: groupBy not working on AMQP messages > --- > > Key: ARTEMIS-4952 > URL: https://issues.apache.org/jira/browse/ARTEMIS-4952 > Project: ActiveMQ Artemis > Issue Type: Bug >Reporter: nmeylan >Priority: Major > Attachments: image-2024-07-25-09-54-32-066.png > > > I encountered weird behavior with JMX _countMessages(String, String)_ when > messages are produced via *AMQP *then moved to another queue and when I call > *countMessages* operation with a group by > h2. Context: > * I create *1600 *messages to *queue.1*, using *CORE* protocol > * I create *440 *messages to *queue.2*, using *AMQP* protocol > * I move all messages from *queue.1* to *dl.default* queue > * I move all messages from *queue.2* to *dl.default* queue > > h2. Current behavior > Calling *countMessages* operation with a groupBy _ _AMQ_ORIG_QUEUE_ i get: > {code} > {"null": 440, "queue.1": 1600} > {code} > If I also filter by _ _AMQ_ORIG_QUEUE="queue.2"_ i get > {code} > {"null": 440} > {code} > !image-2024-07-25-09-54-32-066.png! > > h2. Expected behavior > Calling *countMessages* operation with a groupBy _ _AMQ_ORIG_QUEUE_ i get: > {code} > {"queue.2": 440, "queue.1": 1600} > {code} > h2. Notes > I was wondering why > [message.getObjectProperty|https://github.com/apache/activemq-artemis/blob/41ec279e2240fd4a84e1c0e7902623682bc5e785/artemis-server/src/main/java/org/apache/activemq/artemis/core/management/impl/QueueControlImpl.java#L1164] > is called instead of > [message.getObjectPropertyForFilter|https://github.com/apache/activemq-artemis/blob/41ec279e2240fd4a84e1c0e7902623682bc5e785/artemis-server/src/main/java/org/apache/activemq/artemis/core/filter/impl/FilterImpl.java#L237] > as for filter
[jira] [Updated] (ARTEMIS-4952) JMX countMessages: groupBy not working on AMQP messages
[ https://issues.apache.org/jira/browse/ARTEMIS-4952?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] nmeylan updated ARTEMIS-4952: - Description: I encountered weird behavior with JMX _countMessages(String, String)_ When messages are produced via *AMQP *then moved to another queue and I call countMessages operation with a group by _ _AMQ_ORIG_QUEUE_ i get: {code} {"null": 440, "another.queue": 1600} {code} If I also filter by _ _AMQ_ORIG_QUEUE_ i get {code} {"null": 440} {code} !image-2024-07-25-09-54-32-066.png! I was wondering why [message.getObjectProperty|https://github.com/apache/activemq-artemis/blob/41ec279e2240fd4a84e1c0e7902623682bc5e785/artemis-server/src/main/java/org/apache/activemq/artemis/core/management/impl/QueueControlImpl.java#L1164] is called instead of [message.getObjectPropertyForFilter|https://github.com/apache/activemq-artemis/blob/41ec279e2240fd4a84e1c0e7902623682bc5e785/artemis-server/src/main/java/org/apache/activemq/artemis/core/filter/impl/FilterImpl.java#L237] as for filtering I did the test using getObjectPropertyForFilter instead of getObjectProperty and it works was: I encountered weird behavior with JMX _countMessages(String, String)_ When messages are produced via *AMQP *then moved to another queue and I call countMessages operation with a group by _{_}AMQ_ORIG_QUEUE{_} i get: {code} {"null": 440, "another.queue": 1600} {code} If I also filter by _ _AMQ_ORIG_QUEUE_ i get {code} {"null": 440} {code} !image-2024-07-25-09-54-32-066.png! I was wondering why [message.getObjectProperty|https://github.com/apache/activemq-artemis/blob/41ec279e2240fd4a84e1c0e7902623682bc5e785/artemis-server/src/main/java/org/apache/activemq/artemis/core/management/impl/QueueControlImpl.java#L1164] is called instead of [message.getObjectPropertyForFilter|https://github.com/apache/activemq-artemis/blob/41ec279e2240fd4a84e1c0e7902623682bc5e785/artemis-server/src/main/java/org/apache/activemq/artemis/core/filter/impl/FilterImpl.java#L237] as for filtering I did the test using getObjectPropertyForFilter instead of getObjectProperty and it works > JMX countMessages: groupBy not working on AMQP messages > --- > > Key: ARTEMIS-4952 > URL: https://issues.apache.org/jira/browse/ARTEMIS-4952 > Project: ActiveMQ Artemis > Issue Type: Bug >Reporter: nmeylan >Priority: Major > Attachments: image-2024-07-25-09-54-32-066.png > > > I encountered weird behavior with JMX _countMessages(String, String)_ > When messages are produced via *AMQP *then moved to another queue and I call > countMessages operation with a group by _ _AMQ_ORIG_QUEUE_ i get: > {code} > {"null": 440, "another.queue": 1600} > {code} > If I also filter by _ _AMQ_ORIG_QUEUE_ i get > {code} > {"null": 440} > {code} > > !image-2024-07-25-09-54-32-066.png! > I was wondering why > [message.getObjectProperty|https://github.com/apache/activemq-artemis/blob/41ec279e2240fd4a84e1c0e7902623682bc5e785/artemis-server/src/main/java/org/apache/activemq/artemis/core/management/impl/QueueControlImpl.java#L1164] > is called instead of > [message.getObjectPropertyForFilter|https://github.com/apache/activemq-artemis/blob/41ec279e2240fd4a84e1c0e7902623682bc5e785/artemis-server/src/main/java/org/apache/activemq/artemis/core/filter/impl/FilterImpl.java#L237] > as for filtering > I did the test using getObjectPropertyForFilter instead of getObjectProperty > and it works -- This message was sent by Atlassian Jira (v8.20.10#820010) - To unsubscribe, e-mail: issues-unsubscr...@activemq.apache.org For additional commands, e-mail: issues-h...@activemq.apache.org For further information, visit: https://activemq.apache.org/contact
[jira] [Created] (ARTEMIS-4952) JMX countMessages: groupBy not working on AMQP messages
nmeylan created ARTEMIS-4952: Summary: JMX countMessages: groupBy not working on AMQP messages Key: ARTEMIS-4952 URL: https://issues.apache.org/jira/browse/ARTEMIS-4952 Project: ActiveMQ Artemis Issue Type: Bug Reporter: nmeylan Attachments: image-2024-07-25-09-54-32-066.png I encountered weird behavior with JMX _countMessages(String, String)_ When messages are produced via *AMQP *then moved to another queue and I call countMessages operation with a group by _{_}AMQ_ORIG_QUEUE{_} i get: {code} {"null": 440, "another.queue": 1600} {code} If I also filter by _ _AMQ_ORIG_QUEUE_ i get {code} {"null": 440} {code} !image-2024-07-25-09-54-32-066.png! I was wondering why [message.getObjectProperty|https://github.com/apache/activemq-artemis/blob/41ec279e2240fd4a84e1c0e7902623682bc5e785/artemis-server/src/main/java/org/apache/activemq/artemis/core/management/impl/QueueControlImpl.java#L1164] is called instead of [message.getObjectPropertyForFilter|https://github.com/apache/activemq-artemis/blob/41ec279e2240fd4a84e1c0e7902623682bc5e785/artemis-server/src/main/java/org/apache/activemq/artemis/core/filter/impl/FilterImpl.java#L237] as for filtering I did the test using getObjectPropertyForFilter instead of getObjectProperty and it works -- This message was sent by Atlassian Jira (v8.20.10#820010) - To unsubscribe, e-mail: issues-unsubscr...@activemq.apache.org For additional commands, e-mail: issues-h...@activemq.apache.org For further information, visit: https://activemq.apache.org/contact
[jira] [Updated] (ARTEMIS-4794) CoreBridge: Duplicate message when bridge is stopped/Lost message when bridge is paused while messages being produced to target node.
[ https://issues.apache.org/jira/browse/ARTEMIS-4794?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] nmeylan updated ARTEMIS-4794: - Affects Version/s: 2.35.0 > CoreBridge: Duplicate message when bridge is stopped/Lost message when bridge > is paused while messages being produced to target node. > - > > Key: ARTEMIS-4794 > URL: https://issues.apache.org/jira/browse/ARTEMIS-4794 > Project: ActiveMQ Artemis > Issue Type: Bug > Components: Clustering >Affects Versions: 2.30.0, 2.34.0, 2.35.0 >Reporter: nmeylan >Priority: Major > Attachments: BridgeARTEMIS4794Test.java, > message-not-deliverable.log.txt > > > +Attached test *BridgeDuplicateMessagesARTEMIS4794Test.java*+ highlights the > issue with _org.apache.activemq.artemis.core.server.cluster.impl.BridgeImpl_ > Place it under > _tests/integration-tests/src/test/java/org/apache/activemq/artemis/tests/integration/cluster/bridge_ > {*}Summary{*}: > When a bridge is stopped while messages being produced to the target > node, it can lead to duplicate messages. > {*}Description{*}: > When Using bridge and programmatically *stopping* it while messages are > being produced to the target node, the source node fails to get the > acknowledgement from target node and messages now exists on the source and > the target node. > It appears that the "active" flag being set to false when > BridgeImpl.StopRunnable is called prevent message to be acknowledged by > _BridgeImpl::sendAcknowledged_ function > > {*}Context{*}: > This bug appear in my code (a custom plugin) because is start and stop Bridge > programmatically to move messages from one node to another when some > conditions are met, if they are no longer met I want to stop the moving of > messages. > > *Notes:* > * Changing bridge configuration > {_}useDuplicateDetection{_},{_}confirmationWindowSize{_} or > _producerWindowSize_ parameter do not help to mitigate the issue > * Not related to large messages, i use large messages in my test to ease > reproduction > * Reproduced on 2.30 and 2.34 > * Calling pause() does not create duplicate > {_}server.getClusterManager().getBridges().get(bridgeName).pause(){_}; > > > > *UPDATE:* When using pause instead of stop in above scenari, I get message > not being develirable anymore > {*}Summary{*}: > When a bridge is paused while *large* messages being produced to the target > node, it can lead to message not able to be delivered to new consumers. > {*}Description{*}: > When Using bridge and programmatically pausing it while messages are being > produced to the target node, If large messages are being delivered, the > thread In _BridgeImpl::deliverLargeMessage_ is not awaited, and the bridge is > paused then the Runnable of deliverLargeMessage is being run, leading to a > situation were the message won't be delivered to new consumers > {*}Notes{*}: > * PauseRunnable does not await for task in {{executor}} to complete, > deliverLargeMessage do create task in executor > * > ** We can see that even after PauseRunnable has complete, > deliverLargeMessage's task is running after. > * If I call {{bridge1.onCreditsFlow(true, null);}} to set the flag > {{blockedOnFlowControl}} to true, before calling pause, it prevent putting > new task on executor and mitigate the issue, but It feels weird and I think > there might still be race condition -- This message was sent by Atlassian Jira (v8.20.10#820010) - To unsubscribe, e-mail: issues-unsubscr...@activemq.apache.org For additional commands, e-mail: issues-h...@activemq.apache.org For further information, visit: https://activemq.apache.org/contact
[jira] [Updated] (ARTEMIS-4794) CoreBridge: Duplicate message when bridge is stopped/Lost message when bridge is paused while messages being produced to target node.
[ https://issues.apache.org/jira/browse/ARTEMIS-4794?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] nmeylan updated ARTEMIS-4794: - Summary: CoreBridge: Duplicate message when bridge is stopped/Lost message when bridge is paused while messages being produced to target node. (was: CoreBridge: Duplicate message when bridge is stopped while messages being produced to target node) > CoreBridge: Duplicate message when bridge is stopped/Lost message when bridge > is paused while messages being produced to target node. > - > > Key: ARTEMIS-4794 > URL: https://issues.apache.org/jira/browse/ARTEMIS-4794 > Project: ActiveMQ Artemis > Issue Type: Bug > Components: Clustering >Affects Versions: 2.30.0, 2.34.0 >Reporter: nmeylan >Priority: Major > Attachments: BridgeARTEMIS4794Test.java, > message-not-deliverable.log.txt > > > +Attached test *BridgeDuplicateMessagesARTEMIS4794Test.java*+ highlights the > issue with _org.apache.activemq.artemis.core.server.cluster.impl.BridgeImpl_ > Place it under > _tests/integration-tests/src/test/java/org/apache/activemq/artemis/tests/integration/cluster/bridge_ > {*}Summary{*}: > When a bridge is stopped while messages being produced to the target > node, it can lead to duplicate messages. > {*}Description{*}: > When Using bridge and programmatically *stopping* it while messages are > being produced to the target node, the source node fails to get the > acknowledgement from target node and messages now exists on the source and > the target node. > It appears that the "active" flag being set to false when > BridgeImpl.StopRunnable is called prevent message to be acknowledged by > _BridgeImpl::sendAcknowledged_ function > > {*}Context{*}: > This bug appear in my code (a custom plugin) because is start and stop Bridge > programmatically to move messages from one node to another when some > conditions are met, if they are no longer met I want to stop the moving of > messages. > > *Notes:* > * Changing bridge configuration > {_}useDuplicateDetection{_},{_}confirmationWindowSize{_} or > _producerWindowSize_ parameter do not help to mitigate the issue > * Not related to large messages, i use large messages in my test to ease > reproduction > * Reproduced on 2.30 and 2.34 > * Calling pause() does not create duplicate > {_}server.getClusterManager().getBridges().get(bridgeName).pause(){_}; > > > > *UPDATE:* When using pause instead of stop in above scenari, I get message > not being develirable anymore > {*}Summary{*}: > When a bridge is paused while *large* messages being produced to the target > node, it can lead to message not able to be delivered to new consumers. > {*}Description{*}: > When Using bridge and programmatically pausing it while messages are being > produced to the target node, If large messages are being delivered, the > thread In _BridgeImpl::deliverLargeMessage_ is not awaited, and the bridge is > paused then the Runnable of deliverLargeMessage is being run, leading to a > situation were the message won't be delivered to new consumers > {*}Notes{*}: > * PauseRunnable does not await for task in {{executor}} to complete, > deliverLargeMessage do create task in executor > * > ** We can see that even after PauseRunnable has complete, > deliverLargeMessage's task is running after. > * If I call {{bridge1.onCreditsFlow(true, null);}} to set the flag > {{blockedOnFlowControl}} to true, before calling pause, it prevent putting > new task on executor and mitigate the issue, but It feels weird and I think > there might still be race condition -- This message was sent by Atlassian Jira (v8.20.10#820010) - To unsubscribe, e-mail: issues-unsubscr...@activemq.apache.org For additional commands, e-mail: issues-h...@activemq.apache.org For further information, visit: https://activemq.apache.org/contact
[jira] [Updated] (ARTEMIS-4821) Message count is not correct in case of failover while a bridge is open on a paging address
[ https://issues.apache.org/jira/browse/ARTEMIS-4821?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] nmeylan updated ARTEMIS-4821: - Description: After upgrading from 2.30 to 2.34 one of my test case is failling {{QueueImpl::getMessageCount()}} does not returns what was expected See attached Test [^MessageCount235Test.java] case *testMessageCount_whenFailoverHappenWhileBridgeIsOpen* which is failing, I attempt other scenario which succeed I link also [^MessageCount230Test.java] for version 2.30 (it is another file because due to renaming of master/slave, SimpleString and migration to junit5, code needs to be adapt), all scenario are succeed {code:java} Topology: Simulating DC1 (1 primary + backup pair) Simulating DC2 1 single primary node 1. Produce messages on dc1Primary1 2. Start a bridge from dc1Primary1 to dc2Primary1 3. Stop dc1Primary1 while transfer has started but not finished 4. dc1Backup1 become alive 5. Start a bridge from dc1Backup1 to dc2Primary1 6. dc2Primary1 has received all messages produced originally 7. Expected: messageCount on dc1Backup1 to be equal to 0, but actual is > 0 Notes: if address is not paging, there is no issue {code} After investigation it happen only when address is paging. Also as I face the issue only when using bridge, issue might be due to async acknowledgement was: After upgrading from 2.30 to 2.34 one of my test case is failling {{QueueImpl::getMessageCount()}} does not returns what was expected See attached Test [^MessageCount235Test.java] case *testMessageCount_whenFailoverHappenWhileBridgeIsOpen* which is failing, I attempt other scenario which succeed I link also [^MessageCount230Test.java] for version 2.30 (it is another file because due to renaming of master/slave, SimpleString and migration to junit5, code needs to be adapt), all scenario are succeed {code:java} Topology: Simulating DC1 (1 primary + backup pair) Simulating DC2 1 single primary node 1. Produce messages on dc1Primary1 2. Start a bridge from dc1Primary1 to dc2Primary1 3. Stop dc1Primary1 while transfer has started but not finished 4. dc1Backup1 become alive 5. Start a bridge from dc1Backup1 to dc2Primary1 6. dc2Primary1 has received all messages produced originally 7. Expected: messageCount on dc1Backup1 to be equal to 0, but actual is > 0 Notes: if address is not paging, there is no issue {code} After investigation it happen only when address is paging. Also as I can reproduce only when using bridge it might be due to async acknowledgement > Message count is not correct in case of failover while a bridge is open on a > paging address > --- > > Key: ARTEMIS-4821 > URL: https://issues.apache.org/jira/browse/ARTEMIS-4821 > Project: ActiveMQ Artemis > Issue Type: Bug >Affects Versions: 2.35.0 >Reporter: nmeylan >Priority: Major > Attachments: MessageCount230Test.java, MessageCount235Test.java > > > After upgrading from 2.30 to 2.34 one of my test case is failling > {{QueueImpl::getMessageCount()}} does not returns what was expected > See attached Test [^MessageCount235Test.java] case > *testMessageCount_whenFailoverHappenWhileBridgeIsOpen* which is failing, I > attempt other scenario which succeed > I link also [^MessageCount230Test.java] for version 2.30 (it is another file > because due to renaming of master/slave, SimpleString and migration to > junit5, code needs to be adapt), all scenario are succeed > > {code:java} > Topology: Simulating DC1 (1 primary + backup pair) > Simulating DC2 1 single primary node > 1. Produce messages on dc1Primary1 > 2. Start a bridge from dc1Primary1 to dc2Primary1 > 3. Stop dc1Primary1 while transfer has started but not finished > 4. dc1Backup1 become alive > 5. Start a bridge from dc1Backup1 to dc2Primary1 > 6. dc2Primary1 has received all messages produced originally > 7. Expected: messageCount on dc1Backup1 to be equal to 0, but actual is > 0 > Notes: if address is not paging, there is no issue > {code} > After investigation it happen only when address is paging. > Also as I face the issue only when using bridge, issue might be due to async > acknowledgement -- This message was sent by Atlassian Jira (v8.20.10#820010) - To unsubscribe, e-mail: issues-unsubscr...@activemq.apache.org For additional commands, e-mail: issues-h...@activemq.apache.org For further information, visit: https://activemq.apache.org/contact
[jira] [Updated] (ARTEMIS-4821) Message count is not correct in case of failover while a bridge is open on a paging address
[ https://issues.apache.org/jira/browse/ARTEMIS-4821?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] nmeylan updated ARTEMIS-4821: - Description: After upgrading from 2.30 to 2.34 one of my test case is failling {{QueueImpl::getMessageCount()}} does not returns what was expected See attached Test [^MessageCount235Test.java] case *testMessageCount_whenFailoverHappenWhileBridgeIsOpen* which is failing, I attempt other scenario which succeed I link also [^MessageCount230Test.java] for version 2.30 (it is another file because due to renaming of master/slave, SimpleString and migration to junit5, code needs to be adapt), all scenario are succeed {code:java} Topology: Simulating DC1 (1 primary + backup pair) Simulating DC2 1 single primary node 1. Produce messages on dc1Primary1 2. Start a bridge from dc1Primary1 to dc2Primary1 3. Stop dc1Primary1 while transfer has started but not finished 4. dc1Backup1 become alive 5. Start a bridge from dc1Backup1 to dc2Primary1 6. dc2Primary1 has received all messages produced originally 7. Expected: messageCount on dc1Backup1 to be equal to 0, but actual is > 0 Notes: if address is not paging, there is no issue {code} After investigation it happen only when address is paging. Also as I can reproduce only when using bridge it might be due to async acknowledgement was: After upgrading from 2.30 to 2.34 one of my test case is failling {{QueueImpl::getMessageCount()}} does not returns what was expected See attached Test [^MessageCount235Test.java] case *testMessageCount_whenFailoverHappenWhileBridgeIsOpen* which is failing, I attempt other scenario which succeed I link also [^MessageCount230Test.java] for version 2.30 (it is another file because due to renaming of master/slave, SimpleString and migration to junit5, code need to be adapt), all scenario are succeed {code:java} Topology: Simulating DC1 (1 primary + backup pair) Simulating DC2 1 single primary node 1. Produce messages on dc1Primary1 2. Start a bridge from dc1Primary1 to dc2Primary1 3. Stop dc1Primary1 while transfer has started but not finished 4. dc1Backup1 become alive 5. Start a bridge from dc1Backup1 to dc2Primary1 6. dc2Primary1 has received all messages produced originally 7. Expected: messageCount on dc1Backup1 to be equal to 0, but actual is > 0 Notes: if address is not paging, there is no issue {code} After investigation it happen only when address is paging. Also as I can reproduce only when using bridge it might be due to async acknowledgement > Message count is not correct in case of failover while a bridge is open on a > paging address > --- > > Key: ARTEMIS-4821 > URL: https://issues.apache.org/jira/browse/ARTEMIS-4821 > Project: ActiveMQ Artemis > Issue Type: Bug >Affects Versions: 2.35.0 >Reporter: nmeylan >Priority: Major > Attachments: MessageCount230Test.java, MessageCount235Test.java > > > After upgrading from 2.30 to 2.34 one of my test case is failling > {{QueueImpl::getMessageCount()}} does not returns what was expected > See attached Test [^MessageCount235Test.java] case > *testMessageCount_whenFailoverHappenWhileBridgeIsOpen* which is failing, I > attempt other scenario which succeed > I link also [^MessageCount230Test.java] for version 2.30 (it is another file > because due to renaming of master/slave, SimpleString and migration to > junit5, code needs to be adapt), all scenario are succeed > > {code:java} > Topology: Simulating DC1 (1 primary + backup pair) > Simulating DC2 1 single primary node > 1. Produce messages on dc1Primary1 > 2. Start a bridge from dc1Primary1 to dc2Primary1 > 3. Stop dc1Primary1 while transfer has started but not finished > 4. dc1Backup1 become alive > 5. Start a bridge from dc1Backup1 to dc2Primary1 > 6. dc2Primary1 has received all messages produced originally > 7. Expected: messageCount on dc1Backup1 to be equal to 0, but actual is > 0 > Notes: if address is not paging, there is no issue > {code} > After investigation it happen only when address is paging. > Also as I can reproduce only when using bridge it might be due to async > acknowledgement -- This message was sent by Atlassian Jira (v8.20.10#820010) - To unsubscribe, e-mail: issues-unsubscr...@activemq.apache.org For additional commands, e-mail: issues-h...@activemq.apache.org For further information, visit: https://activemq.apache.org/contact
[jira] [Updated] (ARTEMIS-4821) Message count is not correct in case of failover while a bridge is open on a paging address
[ https://issues.apache.org/jira/browse/ARTEMIS-4821?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] nmeylan updated ARTEMIS-4821: - Description: After upgrading from 2.30 to 2.34 one of my test case is failling {{QueueImpl::getMessageCount()}} does not returns what was expected See attached Test [^MessageCount235Test.java] case *testMessageCount_whenFailoverHappenWhileBridgeIsOpen* which is failing, I attempt other scenario which succeed I link also [^MessageCount230Test.java] for version 2.30 (it is another file because due to renaming of master/slave, SimpleString and migration to junit5, code need to be adapt), all scenario are succeed {code:java} Topology: Simulating DC1 (1 primary + backup pair) Simulating DC2 1 single primary node 1. Produce messages on dc1Primary1 2. Start a bridge from dc1Primary1 to dc2Primary1 3. Stop dc1Primary1 while transfer has started but not finished 4. dc1Backup1 become alive 5. Start a bridge from dc1Backup1 to dc2Primary1 6. dc2Primary1 has received all messages produced originally 7. Expected: messageCount on dc1Backup1 to be equal to 0, but actual is > 0 Notes: if address is not paging, there is no issue {code} After investigation it happen only when address is paging. Also as I can reproduce only when using bridge it might be due to async acknowledgement was: After upgrading from 2.30 to 2.34 one of my test case is failling {{QueueImpl::getMessageCount()}} does not returns what was expected See attached Test case *testMessageCount_whenFailoverHappenWhileBridgeIsOpen* which is failing, I attempt other scenario which succeed {code:java} Topology: Simulating DC1 (1 primary + backup pair) Simulating DC2 1 single primary node 1. Produce messages on dc1Primary1 2. Start a bridge from dc1Primary1 to dc2Primary1 3. Stop dc1Primary1 while transfer has started but not finished 4. dc1Backup1 become alive 5. Start a bridge from dc1Backup1 to dc2Primary1 6. dc2Primary1 has received all messages produced originally 7. Expected: messageCount on dc1Backup1 to be equal to 0, but actual is > 0 Notes: if address is not paging, there is no issue {code} After investigation it happen only when address is paging. Also as I can reproduce only when using bridge it might be due to async acknowledgement > Message count is not correct in case of failover while a bridge is open on a > paging address > --- > > Key: ARTEMIS-4821 > URL: https://issues.apache.org/jira/browse/ARTEMIS-4821 > Project: ActiveMQ Artemis > Issue Type: Bug >Affects Versions: 2.35.0 >Reporter: nmeylan >Priority: Major > Attachments: MessageCount230Test.java, MessageCount235Test.java > > > After upgrading from 2.30 to 2.34 one of my test case is failling > {{QueueImpl::getMessageCount()}} does not returns what was expected > See attached Test [^MessageCount235Test.java] case > *testMessageCount_whenFailoverHappenWhileBridgeIsOpen* which is failing, I > attempt other scenario which succeed > I link also [^MessageCount230Test.java] for version 2.30 (it is another file > because due to renaming of master/slave, SimpleString and migration to > junit5, code need to be adapt), all scenario are succeed > > {code:java} > Topology: Simulating DC1 (1 primary + backup pair) > Simulating DC2 1 single primary node > 1. Produce messages on dc1Primary1 > 2. Start a bridge from dc1Primary1 to dc2Primary1 > 3. Stop dc1Primary1 while transfer has started but not finished > 4. dc1Backup1 become alive > 5. Start a bridge from dc1Backup1 to dc2Primary1 > 6. dc2Primary1 has received all messages produced originally > 7. Expected: messageCount on dc1Backup1 to be equal to 0, but actual is > 0 > Notes: if address is not paging, there is no issue > {code} > After investigation it happen only when address is paging. > Also as I can reproduce only when using bridge it might be due to async > acknowledgement -- This message was sent by Atlassian Jira (v8.20.10#820010) - To unsubscribe, e-mail: issues-unsubscr...@activemq.apache.org For additional commands, e-mail: issues-h...@activemq.apache.org For further information, visit: https://activemq.apache.org/contact
[jira] [Updated] (ARTEMIS-4821) Message count is not correct in case of failover while a bridge is open on a paging address
[ https://issues.apache.org/jira/browse/ARTEMIS-4821?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] nmeylan updated ARTEMIS-4821: - Attachment: MessageCount235Test.java > Message count is not correct in case of failover while a bridge is open on a > paging address > --- > > Key: ARTEMIS-4821 > URL: https://issues.apache.org/jira/browse/ARTEMIS-4821 > Project: ActiveMQ Artemis > Issue Type: Bug >Affects Versions: 2.35.0 >Reporter: nmeylan >Priority: Major > Attachments: MessageCount230Test.java, MessageCount235Test.java > > > After upgrading from 2.30 to 2.34 one of my test case is failling > {{QueueImpl::getMessageCount()}} does not returns what was expected > See attached Test case *testMessageCount_whenFailoverHappenWhileBridgeIsOpen* > which is failing, I attempt other scenario which succeed > > {code:java} > Topology: Simulating DC1 (1 primary + backup pair) > Simulating DC2 1 single primary node > 1. Produce messages on dc1Primary1 > 2. Start a bridge from dc1Primary1 to dc2Primary1 > 3. Stop dc1Primary1 while transfer has started but not finished > 4. dc1Backup1 become alive > 5. Start a bridge from dc1Backup1 to dc2Primary1 > 6. dc2Primary1 has received all messages produced originally > 7. Expected: messageCount on dc1Backup1 to be equal to 0, but actual is > 0 > Notes: if address is not paging, there is no issue > {code} > After investigation it happen only when address is paging. > Also as I can reproduce only when using bridge it might be due to async > acknowledgement -- This message was sent by Atlassian Jira (v8.20.10#820010) - To unsubscribe, e-mail: issues-unsubscr...@activemq.apache.org For additional commands, e-mail: issues-h...@activemq.apache.org For further information, visit: https://activemq.apache.org/contact
[jira] [Updated] (ARTEMIS-4821) Message count is not correct in case of failover while a bridge is open on a paging address
[ https://issues.apache.org/jira/browse/ARTEMIS-4821?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] nmeylan updated ARTEMIS-4821: - Attachment: MessageCount230Test.java > Message count is not correct in case of failover while a bridge is open on a > paging address > --- > > Key: ARTEMIS-4821 > URL: https://issues.apache.org/jira/browse/ARTEMIS-4821 > Project: ActiveMQ Artemis > Issue Type: Bug >Affects Versions: 2.35.0 >Reporter: nmeylan >Priority: Major > Attachments: MessageCount230Test.java > > > After upgrading from 2.30 to 2.34 one of my test case is failling > {{QueueImpl::getMessageCount()}} does not returns what was expected > See attached Test case *testMessageCount_whenFailoverHappenWhileBridgeIsOpen* > which is failing, I attempt other scenario which succeed > > {code:java} > Topology: Simulating DC1 (1 primary + backup pair) > Simulating DC2 1 single primary node > 1. Produce messages on dc1Primary1 > 2. Start a bridge from dc1Primary1 to dc2Primary1 > 3. Stop dc1Primary1 while transfer has started but not finished > 4. dc1Backup1 become alive > 5. Start a bridge from dc1Backup1 to dc2Primary1 > 6. dc2Primary1 has received all messages produced originally > 7. Expected: messageCount on dc1Backup1 to be equal to 0, but actual is > 0 > Notes: if address is not paging, there is no issue > {code} > After investigation it happen only when address is paging. > Also as I can reproduce only when using bridge it might be due to async > acknowledgement -- This message was sent by Atlassian Jira (v8.20.10#820010) - To unsubscribe, e-mail: issues-unsubscr...@activemq.apache.org For additional commands, e-mail: issues-h...@activemq.apache.org For further information, visit: https://activemq.apache.org/contact
[jira] [Created] (ARTEMIS-4821) Message count is not correct in case of failover while a bridge is open on a paging address
nmeylan created ARTEMIS-4821: Summary: Message count is not correct in case of failover while a bridge is open on a paging address Key: ARTEMIS-4821 URL: https://issues.apache.org/jira/browse/ARTEMIS-4821 Project: ActiveMQ Artemis Issue Type: Bug Affects Versions: 2.35.0 Reporter: nmeylan After upgrading from 2.30 to 2.34 one of my test case is failling {{QueueImpl::getMessageCount()}} does not returns what was expected See attached Test case *testMessageCount_whenFailoverHappenWhileBridgeIsOpen* which is failing, I attempt other scenario which succeed {code:java} Topology: Simulating DC1 (1 primary + backup pair) Simulating DC2 1 single primary node 1. Produce messages on dc1Primary1 2. Start a bridge from dc1Primary1 to dc2Primary1 3. Stop dc1Primary1 while transfer has started but not finished 4. dc1Backup1 become alive 5. Start a bridge from dc1Backup1 to dc2Primary1 6. dc2Primary1 has received all messages produced originally 7. Expected: messageCount on dc1Backup1 to be equal to 0, but actual is > 0 Notes: if address is not paging, there is no issue {code} After investigation it happen only when address is paging. Also as I can reproduce only when using bridge it might be due to async acknowledgement -- This message was sent by Atlassian Jira (v8.20.10#820010) - To unsubscribe, e-mail: issues-unsubscr...@activemq.apache.org For additional commands, e-mail: issues-h...@activemq.apache.org For further information, visit: https://activemq.apache.org/contact
[jira] [Updated] (ARTEMIS-4794) CoreBridge: Duplicate message when bridge is stopped while messages being produced to target node
[ https://issues.apache.org/jira/browse/ARTEMIS-4794?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] nmeylan updated ARTEMIS-4794: - Attachment: BridgeARTEMIS4794Test.java > CoreBridge: Duplicate message when bridge is stopped while messages being > produced to target node > - > > Key: ARTEMIS-4794 > URL: https://issues.apache.org/jira/browse/ARTEMIS-4794 > Project: ActiveMQ Artemis > Issue Type: Bug > Components: Clustering >Affects Versions: 2.30.0, 2.34.0 >Reporter: nmeylan >Priority: Major > Attachments: BridgeARTEMIS4794Test.java, > message-not-deliverable.log.txt > > > +Attached test *BridgeDuplicateMessagesARTEMIS4794Test.java*+ highlights the > issue with _org.apache.activemq.artemis.core.server.cluster.impl.BridgeImpl_ > Place it under > _tests/integration-tests/src/test/java/org/apache/activemq/artemis/tests/integration/cluster/bridge_ > {*}Summary{*}: > When a bridge is stopped while messages being produced to the target > node, it can lead to duplicate messages. > {*}Description{*}: > When Using bridge and programmatically *stopping* it while messages are > being produced to the target node, the source node fails to get the > acknowledgement from target node and messages now exists on the source and > the target node. > It appears that the "active" flag being set to false when > BridgeImpl.StopRunnable is called prevent message to be acknowledged by > _BridgeImpl::sendAcknowledged_ function > > {*}Context{*}: > This bug appear in my code (a custom plugin) because is start and stop Bridge > programmatically to move messages from one node to another when some > conditions are met, if they are no longer met I want to stop the moving of > messages. > > *Notes:* > * Changing bridge configuration > {_}useDuplicateDetection{_},{_}confirmationWindowSize{_} or > _producerWindowSize_ parameter do not help to mitigate the issue > * Not related to large messages, i use large messages in my test to ease > reproduction > * Reproduced on 2.30 and 2.34 > * Calling pause() does not create duplicate > {_}server.getClusterManager().getBridges().get(bridgeName).pause(){_}; > > > > *UPDATE:* When using pause instead of stop in above scenari, I get message > not being develirable anymore > {*}Summary{*}: > When a bridge is paused while *large* messages being produced to the target > node, it can lead to message not able to be delivered to new consumers. > {*}Description{*}: > When Using bridge and programmatically pausing it while messages are being > produced to the target node, If large messages are being delivered, the > thread In _BridgeImpl::deliverLargeMessage_ is not awaited, and the bridge is > paused then the Runnable of deliverLargeMessage is being run, leading to a > situation were the message won't be delivered to new consumers > {*}Notes{*}: > * PauseRunnable does not await for task in {{executor}} to complete, > deliverLargeMessage do create task in executor > * > ** We can see that even after PauseRunnable has complete, > deliverLargeMessage's task is running after. > * If I call {{bridge1.onCreditsFlow(true, null);}} to set the flag > {{blockedOnFlowControl}} to true, before calling pause, it prevent putting > new task on executor and mitigate the issue, but It feels weird and I think > there might still be race condition -- This message was sent by Atlassian Jira (v8.20.10#820010) - To unsubscribe, e-mail: issues-unsubscr...@activemq.apache.org For additional commands, e-mail: issues-h...@activemq.apache.org For further information, visit: https://activemq.apache.org/contact
[jira] [Updated] (ARTEMIS-4794) CoreBridge: Duplicate message when bridge is stopped while messages being produced to target node
[ https://issues.apache.org/jira/browse/ARTEMIS-4794?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] nmeylan updated ARTEMIS-4794: - Attachment: (was: BridgeARTEMIS4794Test.java) > CoreBridge: Duplicate message when bridge is stopped while messages being > produced to target node > - > > Key: ARTEMIS-4794 > URL: https://issues.apache.org/jira/browse/ARTEMIS-4794 > Project: ActiveMQ Artemis > Issue Type: Bug > Components: Clustering >Affects Versions: 2.30.0, 2.34.0 >Reporter: nmeylan >Priority: Major > Attachments: message-not-deliverable.log.txt > > > +Attached test *BridgeDuplicateMessagesARTEMIS4794Test.java*+ highlights the > issue with _org.apache.activemq.artemis.core.server.cluster.impl.BridgeImpl_ > Place it under > _tests/integration-tests/src/test/java/org/apache/activemq/artemis/tests/integration/cluster/bridge_ > {*}Summary{*}: > When a bridge is stopped while messages being produced to the target > node, it can lead to duplicate messages. > {*}Description{*}: > When Using bridge and programmatically *stopping* it while messages are > being produced to the target node, the source node fails to get the > acknowledgement from target node and messages now exists on the source and > the target node. > It appears that the "active" flag being set to false when > BridgeImpl.StopRunnable is called prevent message to be acknowledged by > _BridgeImpl::sendAcknowledged_ function > > {*}Context{*}: > This bug appear in my code (a custom plugin) because is start and stop Bridge > programmatically to move messages from one node to another when some > conditions are met, if they are no longer met I want to stop the moving of > messages. > > *Notes:* > * Changing bridge configuration > {_}useDuplicateDetection{_},{_}confirmationWindowSize{_} or > _producerWindowSize_ parameter do not help to mitigate the issue > * Not related to large messages, i use large messages in my test to ease > reproduction > * Reproduced on 2.30 and 2.34 > * Calling pause() does not create duplicate > {_}server.getClusterManager().getBridges().get(bridgeName).pause(){_}; > > > > *UPDATE:* When using pause instead of stop in above scenari, I get message > not being develirable anymore > {*}Summary{*}: > When a bridge is paused while *large* messages being produced to the target > node, it can lead to message not able to be delivered to new consumers. > {*}Description{*}: > When Using bridge and programmatically pausing it while messages are being > produced to the target node, If large messages are being delivered, the > thread In _BridgeImpl::deliverLargeMessage_ is not awaited, and the bridge is > paused then the Runnable of deliverLargeMessage is being run, leading to a > situation were the message won't be delivered to new consumers > {*}Notes{*}: > * PauseRunnable does not await for task in {{executor}} to complete, > deliverLargeMessage do create task in executor > * > ** We can see that even after PauseRunnable has complete, > deliverLargeMessage's task is running after. > * If I call {{bridge1.onCreditsFlow(true, null);}} to set the flag > {{blockedOnFlowControl}} to true, before calling pause, it prevent putting > new task on executor and mitigate the issue, but It feels weird and I think > there might still be race condition -- This message was sent by Atlassian Jira (v8.20.10#820010) - To unsubscribe, e-mail: issues-unsubscr...@activemq.apache.org For additional commands, e-mail: issues-h...@activemq.apache.org For further information, visit: https://activemq.apache.org/contact
[jira] [Updated] (ARTEMIS-4794) CoreBridge: Duplicate message when bridge is stopped while messages being produced to target node
[ https://issues.apache.org/jira/browse/ARTEMIS-4794?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] nmeylan updated ARTEMIS-4794: - Attachment: BridgeARTEMIS4794Test.java > CoreBridge: Duplicate message when bridge is stopped while messages being > produced to target node > - > > Key: ARTEMIS-4794 > URL: https://issues.apache.org/jira/browse/ARTEMIS-4794 > Project: ActiveMQ Artemis > Issue Type: Bug > Components: Clustering >Affects Versions: 2.30.0, 2.34.0 >Reporter: nmeylan >Priority: Major > Attachments: BridgeARTEMIS4794Test.java, > message-not-deliverable.log.txt > > > +Attached test *BridgeDuplicateMessagesARTEMIS4794Test.java*+ highlights the > issue with _org.apache.activemq.artemis.core.server.cluster.impl.BridgeImpl_ > Place it under > _tests/integration-tests/src/test/java/org/apache/activemq/artemis/tests/integration/cluster/bridge_ > {*}Summary{*}: > When a bridge is stopped while messages being produced to the target > node, it can lead to duplicate messages. > {*}Description{*}: > When Using bridge and programmatically *stopping* it while messages are > being produced to the target node, the source node fails to get the > acknowledgement from target node and messages now exists on the source and > the target node. > It appears that the "active" flag being set to false when > BridgeImpl.StopRunnable is called prevent message to be acknowledged by > _BridgeImpl::sendAcknowledged_ function > > {*}Context{*}: > This bug appear in my code (a custom plugin) because is start and stop Bridge > programmatically to move messages from one node to another when some > conditions are met, if they are no longer met I want to stop the moving of > messages. > > *Notes:* > * Changing bridge configuration > {_}useDuplicateDetection{_},{_}confirmationWindowSize{_} or > _producerWindowSize_ parameter do not help to mitigate the issue > * Not related to large messages, i use large messages in my test to ease > reproduction > * Reproduced on 2.30 and 2.34 > * Calling pause() does not create duplicate > {_}server.getClusterManager().getBridges().get(bridgeName).pause(){_}; > > > > *UPDATE:* When using pause instead of stop in above scenari, I get message > not being develirable anymore > {*}Summary{*}: > When a bridge is paused while *large* messages being produced to the target > node, it can lead to message not able to be delivered to new consumers. > {*}Description{*}: > When Using bridge and programmatically pausing it while messages are being > produced to the target node, If large messages are being delivered, the > thread In _BridgeImpl::deliverLargeMessage_ is not awaited, and the bridge is > paused then the Runnable of deliverLargeMessage is being run, leading to a > situation were the message won't be delivered to new consumers > {*}Notes{*}: > * PauseRunnable does not await for task in {{executor}} to complete, > deliverLargeMessage do create task in executor > * > ** We can see that even after PauseRunnable has complete, > deliverLargeMessage's task is running after. > * If I call {{bridge1.onCreditsFlow(true, null);}} to set the flag > {{blockedOnFlowControl}} to true, before calling pause, it prevent putting > new task on executor and mitigate the issue, but It feels weird and I think > there might still be race condition -- This message was sent by Atlassian Jira (v8.20.10#820010) - To unsubscribe, e-mail: issues-unsubscr...@activemq.apache.org For additional commands, e-mail: issues-h...@activemq.apache.org For further information, visit: https://activemq.apache.org/contact
[jira] [Updated] (ARTEMIS-4794) CoreBridge: Duplicate message when bridge is stopped while messages being produced to target node
[ https://issues.apache.org/jira/browse/ARTEMIS-4794?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] nmeylan updated ARTEMIS-4794: - Attachment: (was: BridgeARTEMIS4794Test.java) > CoreBridge: Duplicate message when bridge is stopped while messages being > produced to target node > - > > Key: ARTEMIS-4794 > URL: https://issues.apache.org/jira/browse/ARTEMIS-4794 > Project: ActiveMQ Artemis > Issue Type: Bug > Components: Clustering >Affects Versions: 2.30.0, 2.34.0 >Reporter: nmeylan >Priority: Major > Attachments: BridgeARTEMIS4794Test.java, > message-not-deliverable.log.txt > > > +Attached test *BridgeDuplicateMessagesARTEMIS4794Test.java*+ highlights the > issue with _org.apache.activemq.artemis.core.server.cluster.impl.BridgeImpl_ > Place it under > _tests/integration-tests/src/test/java/org/apache/activemq/artemis/tests/integration/cluster/bridge_ > {*}Summary{*}: > When a bridge is stopped while messages being produced to the target > node, it can lead to duplicate messages. > {*}Description{*}: > When Using bridge and programmatically *stopping* it while messages are > being produced to the target node, the source node fails to get the > acknowledgement from target node and messages now exists on the source and > the target node. > It appears that the "active" flag being set to false when > BridgeImpl.StopRunnable is called prevent message to be acknowledged by > _BridgeImpl::sendAcknowledged_ function > > {*}Context{*}: > This bug appear in my code (a custom plugin) because is start and stop Bridge > programmatically to move messages from one node to another when some > conditions are met, if they are no longer met I want to stop the moving of > messages. > > *Notes:* > * Changing bridge configuration > {_}useDuplicateDetection{_},{_}confirmationWindowSize{_} or > _producerWindowSize_ parameter do not help to mitigate the issue > * Not related to large messages, i use large messages in my test to ease > reproduction > * Reproduced on 2.30 and 2.34 > * Calling pause() does not create duplicate > {_}server.getClusterManager().getBridges().get(bridgeName).pause(){_}; > > > > *UPDATE:* When using pause instead of stop in above scenari, I get message > not being develirable anymore > {*}Summary{*}: > When a bridge is paused while *large* messages being produced to the target > node, it can lead to message not able to be delivered to new consumers. > {*}Description{*}: > When Using bridge and programmatically pausing it while messages are being > produced to the target node, If large messages are being delivered, the > thread In _BridgeImpl::deliverLargeMessage_ is not awaited, and the bridge is > paused then the Runnable of deliverLargeMessage is being run, leading to a > situation were the message won't be delivered to new consumers > {*}Notes{*}: > * PauseRunnable does not await for task in {{executor}} to complete, > deliverLargeMessage do create task in executor > * > ** We can see that even after PauseRunnable has complete, > deliverLargeMessage's task is running after. > * If I call {{bridge1.onCreditsFlow(true, null);}} to set the flag > {{blockedOnFlowControl}} to true, before calling pause, it prevent putting > new task on executor and mitigate the issue, but It feels weird and I think > there might still be race condition -- This message was sent by Atlassian Jira (v8.20.10#820010) - To unsubscribe, e-mail: issues-unsubscr...@activemq.apache.org For additional commands, e-mail: issues-h...@activemq.apache.org For further information, visit: https://activemq.apache.org/contact
[jira] [Updated] (ARTEMIS-4794) CoreBridge: Duplicate message when bridge is stopped while messages being produced to target node
[ https://issues.apache.org/jira/browse/ARTEMIS-4794?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] nmeylan updated ARTEMIS-4794: - Description: +Attached test *BridgeDuplicateMessagesARTEMIS4794Test.java*+ highlights the issue with _org.apache.activemq.artemis.core.server.cluster.impl.BridgeImpl_ Place it under _tests/integration-tests/src/test/java/org/apache/activemq/artemis/tests/integration/cluster/bridge_ {*}Summary{*}: When a bridge is stopped while messages being produced to the target node, it can lead to duplicate messages. {*}Description{*}: When Using bridge and programmatically *stopping* it while messages are being produced to the target node, the source node fails to get the acknowledgement from target node and messages now exists on the source and the target node. It appears that the "active" flag being set to false when BridgeImpl.StopRunnable is called prevent message to be acknowledged by _BridgeImpl::sendAcknowledged_ function {*}Context{*}: This bug appear in my code (a custom plugin) because is start and stop Bridge programmatically to move messages from one node to another when some conditions are met, if they are no longer met I want to stop the moving of messages. *Notes:* * Changing bridge configuration {_}useDuplicateDetection{_},{_}confirmationWindowSize{_} or _producerWindowSize_ parameter do not help to mitigate the issue * Not related to large messages, i use large messages in my test to ease reproduction * Reproduced on 2.30 and 2.34 * Calling pause() does not create duplicate {_}server.getClusterManager().getBridges().get(bridgeName).pause(){_}; *UPDATE:* When using pause instead of stop in above scenari, I get message not being develirable anymore {*}Summary{*}: When a bridge is paused while *large* messages being produced to the target node, it can lead to message not able to be delivered to new consumers. {*}Description{*}: When Using bridge and programmatically pausing it while messages are being produced to the target node, If large messages are being delivered, the thread In _BridgeImpl::deliverLargeMessage_ is not awaited, and the bridge is paused then the Runnable of deliverLargeMessage is being run, leading to a situation were the message won't be delivered to new consumers {*}Notes{*}: * PauseRunnable does not await for task in {{executor}} to complete, deliverLargeMessage do create task in executor * ** We can see that even after PauseRunnable has complete, deliverLargeMessage's task is running after. * If I call {{bridge1.onCreditsFlow(true, null);}} to set the flag {{blockedOnFlowControl}} to true, before calling pause, it prevent putting new task on executor and mitigate the issue, but It feels weird and I think there might still be race condition was: +Attached test *BridgeDuplicateMessagesARTEMIS4794Test.java*+ highlights the issue with _org.apache.activemq.artemis.core.server.cluster.impl.BridgeImpl_ Place it under _tests/integration-tests/src/test/java/org/apache/activemq/artemis/tests/integration/cluster/bridge_ {*}Summary{*}: When a bridge is stopped while messages being produced to the target node, it can lead to duplicate messages. {*}Description{*}: When Using bridge and programmatically *stopping* it while messages are being produced to the target node, the source node fails to get the acknowledgement from target node and messages now exists on the source and the target node. It appears that the "active" flag being set to false when BridgeImpl.StopRunnable is called prevent message to be acknowledged by _BridgeImpl::sendAcknowledged_ function {*}Context{*}: This bug appear in my code (a custom plugin) because is start and stop Bridge programmatically to move messages from one node to another when some conditions are met, if they are no longer met I want to stop the moving of messages. *Notes:* * Changing bridge configuration {_}useDuplicateDetection{_},{_}confirmationWindowSize{_} or _producerWindowSize_ parameter do not help to mitigate the issue * Not related to large messages, i use large messages in my test to ease reproduction * Reproduced on 2.30 and 2.34 * Calling pause() does not create duplicate {_}server.getClusterManager().getBridges().get(bridgeName).pause(){_}; *UPDATE:* When using pause instead of stop in above scenari, I get message not being develirable anymore {*}Summary{*}: When a bridge is paused while *large* messages being produced to the target node, it can lead to message not able to be delivered to new consumers. {*}Description{*}: When Using bridge and programmatically pausing it while messages are being produced to the target node, If large messages are being delivered, the thread In _BridgeImpl::deliverLargeMessage_ is not awaited, and the bridge is paused then the Runnable of deliverLargeMessage is being run, leading to a situation were
[jira] [Updated] (ARTEMIS-4794) CoreBridge: Duplicate message when bridge is stopped while messages being produced to target node
[ https://issues.apache.org/jira/browse/ARTEMIS-4794?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] nmeylan updated ARTEMIS-4794: - Description: +Attached test *BridgeDuplicateMessagesARTEMIS4794Test.java*+ highlights the issue with _org.apache.activemq.artemis.core.server.cluster.impl.BridgeImpl_ Place it under _tests/integration-tests/src/test/java/org/apache/activemq/artemis/tests/integration/cluster/bridge_ {*}Summary{*}: When a bridge is stopped while messages being produced to the target node, it can lead to duplicate messages. {*}Description{*}: When Using bridge and programmatically *stopping* it while messages are being produced to the target node, the source node fails to get the acknowledgement from target node and messages now exists on the source and the target node. It appears that the "active" flag being set to false when BridgeImpl.StopRunnable is called prevent message to be acknowledged by _BridgeImpl::sendAcknowledged_ function {*}Context{*}: This bug appear in my code (a custom plugin) because is start and stop Bridge programmatically to move messages from one node to another when some conditions are met, if they are no longer met I want to stop the moving of messages. *Notes:* * Changing bridge configuration {_}useDuplicateDetection{_},{_}confirmationWindowSize{_} or _producerWindowSize_ parameter do not help to mitigate the issue * Not related to large messages, i use large messages in my test to ease reproduction * Reproduced on 2.30 and 2.34 * Calling pause() does not create duplicate {_}server.getClusterManager().getBridges().get(bridgeName).pause(){_}; *UPDATE:* When using pause instead of stop in above scenari, I get message not being develirable anymore {*}Summary{*}: When a bridge is paused while *large* messages being produced to the target node, it can lead to message not able to be delivered to new consumers. {*}Description{*}: When Using bridge and programmatically pausing it while messages are being produced to the target node, If large messages are being delivered, the thread In _BridgeImpl::deliverLargeMessage_ is not awaited, and the bridge is paused then the Runnable of deliverLargeMessage is being run, leading to a situation were the message won't be delivered to new consumers {*}Notes{*}: * PauseRunnable does not await for task in {{executor}} to complete, {{deliverLargeMessage }}do create task in {{executor}} * ** We can see that even after PauseRunnable has complete, deliverLargeMessage's task is running after. * If I call {{bridge1.onCreditsFlow(true, null);}} to set the flag {{blockedOnFlowControl}} to true, before calling pause, it prevent putting new task on executor and mitigate the issue, but It feels weird and I think there might still be race condition was: +Attached test *BridgeDuplicateMessagesARTEMIS4794Test.java*+ highlights the issue with _org.apache.activemq.artemis.core.server.cluster.impl.BridgeImpl_ Place it under _tests/integration-tests/src/test/java/org/apache/activemq/artemis/tests/integration/cluster/bridge_ {*}Summary{*}: When a bridge is stopped while messages being consumed by the target node, it can lead to duplicate messages. {*}Description{*}: When Using bridge and programmatically *stopping* it while messages are being consumed by the target node, the source node fails to get the acknowledgement from target node and messages now exists on the source and the target node. It appears that the "active" flag being set to false when BridgeImpl.StopRunnable is called prevent message to be acknowledged by _BridgeImpl::sendAcknowledged_ function {*}Context{*}: This bug appear in my code (a custom plugin) because is start and stop Bridge programmatically to move messages from one node to another when some conditions are met, if they are no longer met I want to stop the moving of messages. *Notes:* * Changing bridge configuration {_}useDuplicateDetection{_},{_}confirmationWindowSize{_} or _producerWindowSize_ parameter do not help to mitigate the issue * Not related to large messages, i use large messages in my test to ease reproduction * Reproduced on 2.30 and 2.34 * Calling pause() does not create duplicate {_}server.getClusterManager().getBridges().get(bridgeName).pause(){_}; *Resolution:* Maybe _StopRunnable::run_ should wait until _queue.getDeliveringCount() == 0_ after removing consumer but before going further in the stop process *UPDATE:* When using pause instead of stop in above scenari, I get message not being develirable anymore {*}Summary{*}: When a bridge is paused while *large* messages being consumed by the target node, it can lead to message not able to be delivered to consumers. {*}Description{*}: When Using bridge and programmatically pausing it while messages are being consumed by the target node, If large messages are being delivered, the thr
[jira] [Updated] (ARTEMIS-4794) CoreBridge: Duplicate message when bridge is stopped while messages being produced to target node
[ https://issues.apache.org/jira/browse/ARTEMIS-4794?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] nmeylan updated ARTEMIS-4794: - Summary: CoreBridge: Duplicate message when bridge is stopped while messages being produced to target node (was: CoreBridge: Duplicate message when bridge is stopped while messages being consumed by target node) > CoreBridge: Duplicate message when bridge is stopped while messages being > produced to target node > - > > Key: ARTEMIS-4794 > URL: https://issues.apache.org/jira/browse/ARTEMIS-4794 > Project: ActiveMQ Artemis > Issue Type: Bug > Components: Clustering >Affects Versions: 2.30.0, 2.34.0 >Reporter: nmeylan >Priority: Major > Attachments: BridgeARTEMIS4794Test.java, > message-not-deliverable.log.txt > > > +Attached test *BridgeDuplicateMessagesARTEMIS4794Test.java*+ highlights the > issue with _org.apache.activemq.artemis.core.server.cluster.impl.BridgeImpl_ > Place it under > _tests/integration-tests/src/test/java/org/apache/activemq/artemis/tests/integration/cluster/bridge_ > {*}Summary{*}: > When a bridge is stopped while messages being consumed by the target > node, it can lead to duplicate messages. > {*}Description{*}: > When Using bridge and programmatically *stopping* it while messages are > being consumed by the target node, the source node fails to get the > acknowledgement from target node and messages now exists on the source and > the target node. > It appears that the "active" flag being set to false when > BridgeImpl.StopRunnable is called prevent message to be acknowledged by > _BridgeImpl::sendAcknowledged_ function > > {*}Context{*}: > This bug appear in my code (a custom plugin) because is start and stop Bridge > programmatically to move messages from one node to another when some > conditions are met, if they are no longer met I want to stop the moving of > messages. > > *Notes:* > * Changing bridge configuration > {_}useDuplicateDetection{_},{_}confirmationWindowSize{_} or > _producerWindowSize_ parameter do not help to mitigate the issue > * Not related to large messages, i use large messages in my test to ease > reproduction > * Reproduced on 2.30 and 2.34 > * Calling pause() does not create duplicate > {_}server.getClusterManager().getBridges().get(bridgeName).pause(){_}; > > *Resolution:* > Maybe _StopRunnable::run_ should wait until _queue.getDeliveringCount() == 0_ > after removing consumer but before going further in the stop process > > > *UPDATE:* When using pause instead of stop in above scenari, I get message > not being develirable anymore > {*}Summary{*}: > When a bridge is paused while *large* messages being consumed by the target > node, it can lead to message not able to be delivered to consumers. > {*}Description{*}: > When Using bridge and programmatically pausing it while messages are being > consumed by the target node, If large messages are being delivered, the > thread In _BridgeImpl::deliverLargeMessage_ is not awaited, and the bridge is > paused then the Runnable of deliverLargeMessage is being run, but as consumer > has been removed, message can't be consume by target node, and the message > won't be delivered to new consumers > {*}Notes{*}: > * PauseRunnable does not await for task in {{executor}} to complete, > {{deliverLargeMessage }}do create task in {{executor}} > * > ** We can see that even after PauseRunnable has complete, > deliverLargeMessage's task is running after. > * If I call {{bridge1.onCreditsFlow(true, null);}} to set the flag > {{blockedOnFlowControl}} to true, before calling pause, it prevent putting > new task on executor and mitigate the issue, but It feels weird and I think > there might still be race condition -- This message was sent by Atlassian Jira (v8.20.10#820010) - To unsubscribe, e-mail: issues-unsubscr...@activemq.apache.org For additional commands, e-mail: issues-h...@activemq.apache.org For further information, visit: https://activemq.apache.org/contact
[jira] [Updated] (ARTEMIS-4794) CoreBridge: Duplicate message when bridge is stopped while messages being consumed by target node
[ https://issues.apache.org/jira/browse/ARTEMIS-4794?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] nmeylan updated ARTEMIS-4794: - Description: +Attached test *BridgeDuplicateMessagesARTEMIS4794Test.java*+ highlights the issue with _org.apache.activemq.artemis.core.server.cluster.impl.BridgeImpl_ Place it under _tests/integration-tests/src/test/java/org/apache/activemq/artemis/tests/integration/cluster/bridge_ {*}Summary{*}: When a bridge is stopped while messages being consumed by the target node, it can lead to duplicate messages. {*}Description{*}: When Using bridge and programmatically *stopping* it while messages are being consumed by the target node, the source node fails to get the acknowledgement from target node and messages now exists on the source and the target node. It appears that the "active" flag being set to false when BridgeImpl.StopRunnable is called prevent message to be acknowledged by _BridgeImpl::sendAcknowledged_ function {*}Context{*}: This bug appear in my code (a custom plugin) because is start and stop Bridge programmatically to move messages from one node to another when some conditions are met, if they are no longer met I want to stop the moving of messages. *Notes:* * Changing bridge configuration {_}useDuplicateDetection{_},{_}confirmationWindowSize{_} or _producerWindowSize_ parameter do not help to mitigate the issue * Not related to large messages, i use large messages in my test to ease reproduction * Reproduced on 2.30 and 2.34 * Calling pause() does not create duplicate {_}server.getClusterManager().getBridges().get(bridgeName).pause(){_}; *Resolution:* Maybe _StopRunnable::run_ should wait until _queue.getDeliveringCount() == 0_ after removing consumer but before going further in the stop process *UPDATE:* When using pause instead of stop in above scenari, I get message not being develirable anymore {*}Summary{*}: When a bridge is paused while *large* messages being consumed by the target node, it can lead to message not able to be delivered to consumers. {*}Description{*}: When Using bridge and programmatically pausing it while messages are being consumed by the target node, If large messages are being delivered, the thread In _BridgeImpl::deliverLargeMessage_ is not awaited, and the bridge is paused then the Runnable of deliverLargeMessage is being run, but as consumer has been removed, message can't be consume by target node, and the message won't be delivered to new consumers {*}Notes{*}: * PauseRunnable does not await for task in {{executor}} to complete, {{deliverLargeMessage }}do create task in {{executor}} * ** We can see that even after PauseRunnable has complete, deliverLargeMessage's task is running after. * If I call {{bridge1.onCreditsFlow(true, null);}} to set the flag {{blockedOnFlowControl}} to true, before calling pause, it prevent putting new task on executor and mitigate the issue, but It feels weird and I think there might still be race condition was: +Attached test *BridgeDuplicateMessagesARTEMIS4794Test.java*+ highlights the issue with _org.apache.activemq.artemis.core.server.cluster.impl.BridgeImpl_ Place it under _tests/integration-tests/src/test/java/org/apache/activemq/artemis/tests/integration/cluster/bridge_ {*}Summary{*}: When a bridge is stopped while messages being consumed by the target node, it can lead to duplicate messages. {*}Description{*}: When Using bridge and programmatically *stopping* it while messages are being consumed by the target node, the source node fails to get the acknowledgement from target node and messages now exists on the source and the target node. It appears that the "active" flag being set to false when BridgeImpl.StopRunnable is called prevent message to be acknowledged by _BridgeImpl::sendAcknowledged_ function {*}Context{*}: This bug appear in my code (a custom plugin) because is start and stop Bridge programmatically to move messages from one node to another when some conditions are met, if they are no longer met I want to stop the moving of messages. *Notes:* * Changing bridge configuration {_}useDuplicateDetection{_},{_}confirmationWindowSize{_} or _producerWindowSize_ parameter do not help to mitigate the issue * Not related to large messages, i use large messages in my test to ease reproduction * Reproduced on 2.30 and 2.34 * Calling pause() does not create duplicate {_}server.getClusterManager().getBridges().get(bridgeName).pause(){_}; *Resolution:* Maybe _StopRunnable::run_ should wait until _queue.getDeliveringCount() == 0_ after removing consumer but before going further in the stop process *UPDATE:* When using pause instead of stop in above scenari, I get message not being develirable anymore {*}Summary{*}: When a bridge is paused while *large* messages being consumed by the target node, it can lead to messag
[jira] [Updated] (ARTEMIS-4794) CoreBridge: Duplicate message when bridge is stopped while messages being consumed by target node
[ https://issues.apache.org/jira/browse/ARTEMIS-4794?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] nmeylan updated ARTEMIS-4794: - Attachment: (was: message-not-deliverable.log.txt) > CoreBridge: Duplicate message when bridge is stopped while messages being > consumed by target node > - > > Key: ARTEMIS-4794 > URL: https://issues.apache.org/jira/browse/ARTEMIS-4794 > Project: ActiveMQ Artemis > Issue Type: Bug > Components: Clustering >Affects Versions: 2.30.0, 2.34.0 >Reporter: nmeylan >Priority: Major > Attachments: BridgeARTEMIS4794Test.java, > message-not-deliverable.log.txt > > > +Attached test *BridgeDuplicateMessagesARTEMIS4794Test.java*+ highlights the > issue with _org.apache.activemq.artemis.core.server.cluster.impl.BridgeImpl_ > Place it under > _tests/integration-tests/src/test/java/org/apache/activemq/artemis/tests/integration/cluster/bridge_ > {*}Summary{*}: > When a bridge is stopped while messages being consumed by the target > node, it can lead to duplicate messages. > {*}Description{*}: > When Using bridge and programmatically *stopping* it while messages are > being consumed by the target node, the source node fails to get the > acknowledgement from target node and messages now exists on the source and > the target node. > It appears that the "active" flag being set to false when > BridgeImpl.StopRunnable is called prevent message to be acknowledged by > _BridgeImpl::sendAcknowledged_ function > > {*}Context{*}: > This bug appear in my code (a custom plugin) because is start and stop Bridge > programmatically to move messages from one node to another when some > conditions are met, if they are no longer met I want to stop the moving of > messages. > > *Notes:* > * Changing bridge configuration > {_}useDuplicateDetection{_},{_}confirmationWindowSize{_} or > _producerWindowSize_ parameter do not help to mitigate the issue > * Not related to large messages, i use large messages in my test to ease > reproduction > * Reproduced on 2.30 and 2.34 > * Calling pause() does not create duplicate > {_}server.getClusterManager().getBridges().get(bridgeName).pause(){_}; > > *Resolution:* > Maybe _StopRunnable::run_ should wait until _queue.getDeliveringCount() == 0_ > after removing consumer but before going further in the stop process > > > *UPDATE:* When using pause instead of stop in above scenari, I get message > not being develirable anymore > {*}Summary{*}: > When a bridge is paused while *large* messages being consumed by the target > node, it can lead to message not able to be delivered to consumers. > {*}Description{*}: > When Using bridge and programmatically pausing it while messages are being > consumed by the target node, If large messages are being delivered, the > thread In _BridgeImpl::deliverLargeMessage_ is not awaited, and the bridge is > paused then the Runnable of deliverLargeMessage is being run, but as consumer > has been removed, message can't be consume by target node, and the message > won't be delivered to new consumers -- This message was sent by Atlassian Jira (v8.20.10#820010) - To unsubscribe, e-mail: issues-unsubscr...@activemq.apache.org For additional commands, e-mail: issues-h...@activemq.apache.org For further information, visit: https://activemq.apache.org/contact
[jira] [Updated] (ARTEMIS-4794) CoreBridge: Duplicate message when bridge is stopped while messages being consumed by target node
[ https://issues.apache.org/jira/browse/ARTEMIS-4794?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] nmeylan updated ARTEMIS-4794: - Attachment: (was: BridgeARTEMIS4794Test.java) > CoreBridge: Duplicate message when bridge is stopped while messages being > consumed by target node > - > > Key: ARTEMIS-4794 > URL: https://issues.apache.org/jira/browse/ARTEMIS-4794 > Project: ActiveMQ Artemis > Issue Type: Bug > Components: Clustering >Affects Versions: 2.30.0, 2.34.0 >Reporter: nmeylan >Priority: Major > Attachments: BridgeARTEMIS4794Test.java, > message-not-deliverable.log.txt > > > +Attached test *BridgeDuplicateMessagesARTEMIS4794Test.java*+ highlights the > issue with _org.apache.activemq.artemis.core.server.cluster.impl.BridgeImpl_ > Place it under > _tests/integration-tests/src/test/java/org/apache/activemq/artemis/tests/integration/cluster/bridge_ > {*}Summary{*}: > When a bridge is stopped while messages being consumed by the target > node, it can lead to duplicate messages. > {*}Description{*}: > When Using bridge and programmatically *stopping* it while messages are > being consumed by the target node, the source node fails to get the > acknowledgement from target node and messages now exists on the source and > the target node. > It appears that the "active" flag being set to false when > BridgeImpl.StopRunnable is called prevent message to be acknowledged by > _BridgeImpl::sendAcknowledged_ function > > {*}Context{*}: > This bug appear in my code (a custom plugin) because is start and stop Bridge > programmatically to move messages from one node to another when some > conditions are met, if they are no longer met I want to stop the moving of > messages. > > *Notes:* > * Changing bridge configuration > {_}useDuplicateDetection{_},{_}confirmationWindowSize{_} or > _producerWindowSize_ parameter do not help to mitigate the issue > * Not related to large messages, i use large messages in my test to ease > reproduction > * Reproduced on 2.30 and 2.34 > * Calling pause() does not create duplicate > {_}server.getClusterManager().getBridges().get(bridgeName).pause(){_}; > > *Resolution:* > Maybe _StopRunnable::run_ should wait until _queue.getDeliveringCount() == 0_ > after removing consumer but before going further in the stop process > > > *UPDATE:* When using pause instead of stop in above scenari, I get message > not being develirable anymore > {*}Summary{*}: > When a bridge is paused while *large* messages being consumed by the target > node, it can lead to message not able to be delivered to consumers. > {*}Description{*}: > When Using bridge and programmatically pausing it while messages are being > consumed by the target node, If large messages are being delivered, the > thread In _BridgeImpl::deliverLargeMessage_ is not awaited, and the bridge is > paused then the Runnable of deliverLargeMessage is being run, but as consumer > has been removed, message can't be consume by target node, and the message > won't be delivered to new consumers -- This message was sent by Atlassian Jira (v8.20.10#820010) - To unsubscribe, e-mail: issues-unsubscr...@activemq.apache.org For additional commands, e-mail: issues-h...@activemq.apache.org For further information, visit: https://activemq.apache.org/contact
[jira] [Updated] (ARTEMIS-4794) CoreBridge: Duplicate message when bridge is stopped while messages being consumed by target node
[ https://issues.apache.org/jira/browse/ARTEMIS-4794?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] nmeylan updated ARTEMIS-4794: - Attachment: message-not-deliverable.log.txt > CoreBridge: Duplicate message when bridge is stopped while messages being > consumed by target node > - > > Key: ARTEMIS-4794 > URL: https://issues.apache.org/jira/browse/ARTEMIS-4794 > Project: ActiveMQ Artemis > Issue Type: Bug > Components: Clustering >Affects Versions: 2.30.0, 2.34.0 >Reporter: nmeylan >Priority: Major > Attachments: BridgeARTEMIS4794Test.java, > message-not-deliverable.log.txt > > > +Attached test *BridgeDuplicateMessagesARTEMIS4794Test.java*+ highlights the > issue with _org.apache.activemq.artemis.core.server.cluster.impl.BridgeImpl_ > Place it under > _tests/integration-tests/src/test/java/org/apache/activemq/artemis/tests/integration/cluster/bridge_ > {*}Summary{*}: > When a bridge is stopped while messages being consumed by the target > node, it can lead to duplicate messages. > {*}Description{*}: > When Using bridge and programmatically *stopping* it while messages are > being consumed by the target node, the source node fails to get the > acknowledgement from target node and messages now exists on the source and > the target node. > It appears that the "active" flag being set to false when > BridgeImpl.StopRunnable is called prevent message to be acknowledged by > _BridgeImpl::sendAcknowledged_ function > > {*}Context{*}: > This bug appear in my code (a custom plugin) because is start and stop Bridge > programmatically to move messages from one node to another when some > conditions are met, if they are no longer met I want to stop the moving of > messages. > > *Notes:* > * Changing bridge configuration > {_}useDuplicateDetection{_},{_}confirmationWindowSize{_} or > _producerWindowSize_ parameter do not help to mitigate the issue > * Not related to large messages, i use large messages in my test to ease > reproduction > * Reproduced on 2.30 and 2.34 > * Calling pause() does not create duplicate > {_}server.getClusterManager().getBridges().get(bridgeName).pause(){_}; > > *Resolution:* > Maybe _StopRunnable::run_ should wait until _queue.getDeliveringCount() == 0_ > after removing consumer but before going further in the stop process > > > *UPDATE:* When using pause instead of stop in above scenari, I get message > not being develirable anymore > {*}Summary{*}: > When a bridge is paused while *large* messages being consumed by the target > node, it can lead to message not able to be delivered to consumers. > {*}Description{*}: > When Using bridge and programmatically pausing it while messages are being > consumed by the target node, If large messages are being delivered, the > thread In _BridgeImpl::deliverLargeMessage_ is not awaited, and the bridge is > paused then the Runnable of deliverLargeMessage is being run, but as consumer > has been removed, message can't be consume by target node, and the message > won't be delivered to new consumers -- This message was sent by Atlassian Jira (v8.20.10#820010) - To unsubscribe, e-mail: issues-unsubscr...@activemq.apache.org For additional commands, e-mail: issues-h...@activemq.apache.org For further information, visit: https://activemq.apache.org/contact
[jira] [Updated] (ARTEMIS-4794) CoreBridge: Duplicate message when bridge is stopped while messages being consumed by target node
[ https://issues.apache.org/jira/browse/ARTEMIS-4794?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] nmeylan updated ARTEMIS-4794: - Attachment: (was: BridgeARTEMIS4794Test-1.java) > CoreBridge: Duplicate message when bridge is stopped while messages being > consumed by target node > - > > Key: ARTEMIS-4794 > URL: https://issues.apache.org/jira/browse/ARTEMIS-4794 > Project: ActiveMQ Artemis > Issue Type: Bug > Components: Clustering >Affects Versions: 2.30.0, 2.34.0 >Reporter: nmeylan >Priority: Major > Attachments: BridgeARTEMIS4794Test.java, > message-not-deliverable.log.txt > > > +Attached test *BridgeDuplicateMessagesARTEMIS4794Test.java*+ highlights the > issue with _org.apache.activemq.artemis.core.server.cluster.impl.BridgeImpl_ > Place it under > _tests/integration-tests/src/test/java/org/apache/activemq/artemis/tests/integration/cluster/bridge_ > {*}Summary{*}: > When a bridge is stopped while messages being consumed by the target > node, it can lead to duplicate messages. > {*}Description{*}: > When Using bridge and programmatically *stopping* it while messages are > being consumed by the target node, the source node fails to get the > acknowledgement from target node and messages now exists on the source and > the target node. > It appears that the "active" flag being set to false when > BridgeImpl.StopRunnable is called prevent message to be acknowledged by > _BridgeImpl::sendAcknowledged_ function > > {*}Context{*}: > This bug appear in my code (a custom plugin) because is start and stop Bridge > programmatically to move messages from one node to another when some > conditions are met, if they are no longer met I want to stop the moving of > messages. > > *Notes:* > * Changing bridge configuration > {_}useDuplicateDetection{_},{_}confirmationWindowSize{_} or > _producerWindowSize_ parameter do not help to mitigate the issue > * Not related to large messages, i use large messages in my test to ease > reproduction > * Reproduced on 2.30 and 2.34 > * Calling pause() does not create duplicate > {_}server.getClusterManager().getBridges().get(bridgeName).pause(){_}; > > *Resolution:* > Maybe _StopRunnable::run_ should wait until _queue.getDeliveringCount() == 0_ > after removing consumer but before going further in the stop process > > > *UPDATE:* When using pause instead of stop in above scenari, I get message > not being develirable anymore > {*}Summary{*}: > When a bridge is paused while *large* messages being consumed by the target > node, it can lead to message not able to be delivered to consumers. > {*}Description{*}: > When Using bridge and programmatically pausing it while messages are being > consumed by the target node, If large messages are being delivered, the > thread In _BridgeImpl::deliverLargeMessage_ is not awaited, and the bridge is > paused then the Runnable of deliverLargeMessage is being run, but as consumer > has been removed, message can't be consume by target node, and the message > won't be delivered to new consumers -- This message was sent by Atlassian Jira (v8.20.10#820010) - To unsubscribe, e-mail: issues-unsubscr...@activemq.apache.org For additional commands, e-mail: issues-h...@activemq.apache.org For further information, visit: https://activemq.apache.org/contact
[jira] [Updated] (ARTEMIS-4794) CoreBridge: Duplicate message when bridge is stopped while messages being consumed by target node
[ https://issues.apache.org/jira/browse/ARTEMIS-4794?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] nmeylan updated ARTEMIS-4794: - Attachment: BridgeARTEMIS4794Test.java > CoreBridge: Duplicate message when bridge is stopped while messages being > consumed by target node > - > > Key: ARTEMIS-4794 > URL: https://issues.apache.org/jira/browse/ARTEMIS-4794 > Project: ActiveMQ Artemis > Issue Type: Bug > Components: Clustering >Affects Versions: 2.30.0, 2.34.0 >Reporter: nmeylan >Priority: Major > Attachments: BridgeARTEMIS4794Test.java, > message-not-deliverable.log.txt > > > +Attached test *BridgeDuplicateMessagesARTEMIS4794Test.java*+ highlights the > issue with _org.apache.activemq.artemis.core.server.cluster.impl.BridgeImpl_ > Place it under > _tests/integration-tests/src/test/java/org/apache/activemq/artemis/tests/integration/cluster/bridge_ > {*}Summary{*}: > When a bridge is stopped while messages being consumed by the target > node, it can lead to duplicate messages. > {*}Description{*}: > When Using bridge and programmatically *stopping* it while messages are > being consumed by the target node, the source node fails to get the > acknowledgement from target node and messages now exists on the source and > the target node. > It appears that the "active" flag being set to false when > BridgeImpl.StopRunnable is called prevent message to be acknowledged by > _BridgeImpl::sendAcknowledged_ function > > {*}Context{*}: > This bug appear in my code (a custom plugin) because is start and stop Bridge > programmatically to move messages from one node to another when some > conditions are met, if they are no longer met I want to stop the moving of > messages. > > *Notes:* > * Changing bridge configuration > {_}useDuplicateDetection{_},{_}confirmationWindowSize{_} or > _producerWindowSize_ parameter do not help to mitigate the issue > * Not related to large messages, i use large messages in my test to ease > reproduction > * Reproduced on 2.30 and 2.34 > * Calling pause() does not create duplicate > {_}server.getClusterManager().getBridges().get(bridgeName).pause(){_}; > > *Resolution:* > Maybe _StopRunnable::run_ should wait until _queue.getDeliveringCount() == 0_ > after removing consumer but before going further in the stop process > > > *UPDATE:* When using pause instead of stop in above scenari, I get message > not being develirable anymore > {*}Summary{*}: > When a bridge is paused while *large* messages being consumed by the target > node, it can lead to message not able to be delivered to consumers. > {*}Description{*}: > When Using bridge and programmatically pausing it while messages are being > consumed by the target node, If large messages are being delivered, the > thread In _BridgeImpl::deliverLargeMessage_ is not awaited, and the bridge is > paused then the Runnable of deliverLargeMessage is being run, but as consumer > has been removed, message can't be consume by target node, and the message > won't be delivered to new consumers -- This message was sent by Atlassian Jira (v8.20.10#820010) - To unsubscribe, e-mail: issues-unsubscr...@activemq.apache.org For additional commands, e-mail: issues-h...@activemq.apache.org For further information, visit: https://activemq.apache.org/contact
[jira] [Updated] (ARTEMIS-4794) CoreBridge: Duplicate message when bridge is stopped while messages being consumed by target node
[ https://issues.apache.org/jira/browse/ARTEMIS-4794?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] nmeylan updated ARTEMIS-4794: - Attachment: BridgeARTEMIS4794Test-1.java > CoreBridge: Duplicate message when bridge is stopped while messages being > consumed by target node > - > > Key: ARTEMIS-4794 > URL: https://issues.apache.org/jira/browse/ARTEMIS-4794 > Project: ActiveMQ Artemis > Issue Type: Bug > Components: Clustering >Affects Versions: 2.30.0, 2.34.0 >Reporter: nmeylan >Priority: Major > Attachments: BridgeARTEMIS4794Test.java, > message-not-deliverable.log.txt > > > +Attached test *BridgeDuplicateMessagesARTEMIS4794Test.java*+ highlights the > issue with _org.apache.activemq.artemis.core.server.cluster.impl.BridgeImpl_ > Place it under > _tests/integration-tests/src/test/java/org/apache/activemq/artemis/tests/integration/cluster/bridge_ > {*}Summary{*}: > When a bridge is stopped while messages being consumed by the target > node, it can lead to duplicate messages. > {*}Description{*}: > When Using bridge and programmatically *stopping* it while messages are > being consumed by the target node, the source node fails to get the > acknowledgement from target node and messages now exists on the source and > the target node. > It appears that the "active" flag being set to false when > BridgeImpl.StopRunnable is called prevent message to be acknowledged by > _BridgeImpl::sendAcknowledged_ function > > {*}Context{*}: > This bug appear in my code (a custom plugin) because is start and stop Bridge > programmatically to move messages from one node to another when some > conditions are met, if they are no longer met I want to stop the moving of > messages. > > *Notes:* > * Changing bridge configuration > {_}useDuplicateDetection{_},{_}confirmationWindowSize{_} or > _producerWindowSize_ parameter do not help to mitigate the issue > * Not related to large messages, i use large messages in my test to ease > reproduction > * Reproduced on 2.30 and 2.34 > * Calling pause() does not create duplicate > {_}server.getClusterManager().getBridges().get(bridgeName).pause(){_}; > > *Resolution:* > Maybe _StopRunnable::run_ should wait until _queue.getDeliveringCount() == 0_ > after removing consumer but before going further in the stop process > > > *UPDATE:* When using pause instead of stop in above scenari, I get message > not being develirable anymore > {*}Summary{*}: > When a bridge is paused while *large* messages being consumed by the target > node, it can lead to message not able to be delivered to consumers. > {*}Description{*}: > When Using bridge and programmatically pausing it while messages are being > consumed by the target node, If large messages are being delivered, the > thread In _BridgeImpl::deliverLargeMessage_ is not awaited, and the bridge is > paused then the Runnable of deliverLargeMessage is being run, but as consumer > has been removed, message can't be consume by target node, and the message > won't be delivered to new consumers -- This message was sent by Atlassian Jira (v8.20.10#820010) - To unsubscribe, e-mail: issues-unsubscr...@activemq.apache.org For additional commands, e-mail: issues-h...@activemq.apache.org For further information, visit: https://activemq.apache.org/contact
[jira] [Updated] (ARTEMIS-4794) CoreBridge: Duplicate message when bridge is stopped while messages being consumed by target node
[ https://issues.apache.org/jira/browse/ARTEMIS-4794?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] nmeylan updated ARTEMIS-4794: - Attachment: message-not-deliverable.log.txt > CoreBridge: Duplicate message when bridge is stopped while messages being > consumed by target node > - > > Key: ARTEMIS-4794 > URL: https://issues.apache.org/jira/browse/ARTEMIS-4794 > Project: ActiveMQ Artemis > Issue Type: Bug > Components: Clustering >Affects Versions: 2.30.0, 2.34.0 >Reporter: nmeylan >Priority: Major > Attachments: BridgeARTEMIS4794Test.java, > message-not-deliverable.log.txt > > > +Attached test *BridgeDuplicateMessagesARTEMIS4794Test.java*+ highlights the > issue with _org.apache.activemq.artemis.core.server.cluster.impl.BridgeImpl_ > Place it under > _tests/integration-tests/src/test/java/org/apache/activemq/artemis/tests/integration/cluster/bridge_ > {*}Summary{*}: > When a bridge is stopped while messages being consumed by the target > node, it can lead to duplicate messages. > {*}Description{*}: > When Using bridge and programmatically *stopping* it while messages are > being consumed by the target node, the source node fails to get the > acknowledgement from target node and messages now exists on the source and > the target node. > It appears that the "active" flag being set to false when > BridgeImpl.StopRunnable is called prevent message to be acknowledged by > _BridgeImpl::sendAcknowledged_ function > > {*}Context{*}: > This bug appear in my code (a custom plugin) because is start and stop Bridge > programmatically to move messages from one node to another when some > conditions are met, if they are no longer met I want to stop the moving of > messages. > > *Notes:* > * Changing bridge configuration > {_}useDuplicateDetection{_},{_}confirmationWindowSize{_} or > _producerWindowSize_ parameter do not help to mitigate the issue > * Not related to large messages, i use large messages in my test to ease > reproduction > * Reproduced on 2.30 and 2.34 > * Calling pause() does not create duplicate > {_}server.getClusterManager().getBridges().get(bridgeName).pause(){_}; > > *Resolution:* > Maybe _StopRunnable::run_ should wait until _queue.getDeliveringCount() == 0_ > after removing consumer but before going further in the stop process > > > *UPDATE:* When using pause instead of stop in above scenari, I get message > not being develirable anymore > {*}Summary{*}: > When a bridge is paused while *large* messages being consumed by the target > node, it can lead to message not able to be delivered to consumers. > {*}Description{*}: > When Using bridge and programmatically pausing it while messages are being > consumed by the target node, If large messages are being delivered, the > thread In _BridgeImpl::deliverLargeMessage_ is not awaited, and the bridge is > paused then the Runnable of deliverLargeMessage is being run, but as consumer > has been removed, message can't be consume by target node, and the message > won't be delivered to new consumers -- This message was sent by Atlassian Jira (v8.20.10#820010) - To unsubscribe, e-mail: issues-unsubscr...@activemq.apache.org For additional commands, e-mail: issues-h...@activemq.apache.org For further information, visit: https://activemq.apache.org/contact
[jira] [Updated] (ARTEMIS-4794) CoreBridge: Duplicate message when bridge is stopped while messages being consumed by target node
[ https://issues.apache.org/jira/browse/ARTEMIS-4794?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] nmeylan updated ARTEMIS-4794: - Attachment: BridgeARTEMIS4794Test.java > CoreBridge: Duplicate message when bridge is stopped while messages being > consumed by target node > - > > Key: ARTEMIS-4794 > URL: https://issues.apache.org/jira/browse/ARTEMIS-4794 > Project: ActiveMQ Artemis > Issue Type: Bug > Components: Clustering >Affects Versions: 2.30.0, 2.34.0 >Reporter: nmeylan >Priority: Major > Attachments: BridgeARTEMIS4794Test.java, > message-not-deliverable.log.txt > > > +Attached test *BridgeDuplicateMessagesARTEMIS4794Test.java*+ highlights the > issue with _org.apache.activemq.artemis.core.server.cluster.impl.BridgeImpl_ > Place it under > _tests/integration-tests/src/test/java/org/apache/activemq/artemis/tests/integration/cluster/bridge_ > {*}Summary{*}: > When a bridge is stopped while messages being consumed by the target > node, it can lead to duplicate messages. > {*}Description{*}: > When Using bridge and programmatically *stopping* it while messages are > being consumed by the target node, the source node fails to get the > acknowledgement from target node and messages now exists on the source and > the target node. > It appears that the "active" flag being set to false when > BridgeImpl.StopRunnable is called prevent message to be acknowledged by > _BridgeImpl::sendAcknowledged_ function > > {*}Context{*}: > This bug appear in my code (a custom plugin) because is start and stop Bridge > programmatically to move messages from one node to another when some > conditions are met, if they are no longer met I want to stop the moving of > messages. > > *Notes:* > * Changing bridge configuration > {_}useDuplicateDetection{_},{_}confirmationWindowSize{_} or > _producerWindowSize_ parameter do not help to mitigate the issue > * Not related to large messages, i use large messages in my test to ease > reproduction > * Reproduced on 2.30 and 2.34 > * Calling pause() does not create duplicate > {_}server.getClusterManager().getBridges().get(bridgeName).pause(){_}; > > *Resolution:* > Maybe _StopRunnable::run_ should wait until _queue.getDeliveringCount() == 0_ > after removing consumer but before going further in the stop process > > > *UPDATE:* When using pause instead of stop in above scenari, I get message > not being develirable anymore > {*}Summary{*}: > When a bridge is paused while *large* messages being consumed by the target > node, it can lead to message not able to be delivered to consumers. > {*}Description{*}: > When Using bridge and programmatically pausing it while messages are being > consumed by the target node, If large messages are being delivered, the > thread In _BridgeImpl::deliverLargeMessage_ is not awaited, and the bridge is > paused then the Runnable of deliverLargeMessage is being run, but as consumer > has been removed, message can't be consume by target node, and the message > won't be delivered to new consumers -- This message was sent by Atlassian Jira (v8.20.10#820010) - To unsubscribe, e-mail: issues-unsubscr...@activemq.apache.org For additional commands, e-mail: issues-h...@activemq.apache.org For further information, visit: https://activemq.apache.org/contact
[jira] [Updated] (ARTEMIS-4794) CoreBridge: Duplicate message when bridge is stopped while messages being consumed by target node
[ https://issues.apache.org/jira/browse/ARTEMIS-4794?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] nmeylan updated ARTEMIS-4794: - Attachment: (was: message-not-deliverable.log.txt) > CoreBridge: Duplicate message when bridge is stopped while messages being > consumed by target node > - > > Key: ARTEMIS-4794 > URL: https://issues.apache.org/jira/browse/ARTEMIS-4794 > Project: ActiveMQ Artemis > Issue Type: Bug > Components: Clustering >Affects Versions: 2.30.0, 2.34.0 >Reporter: nmeylan >Priority: Major > Attachments: BridgeARTEMIS4794Test.java, > message-not-deliverable.log.txt > > > +Attached test *BridgeDuplicateMessagesARTEMIS4794Test.java*+ highlights the > issue with _org.apache.activemq.artemis.core.server.cluster.impl.BridgeImpl_ > Place it under > _tests/integration-tests/src/test/java/org/apache/activemq/artemis/tests/integration/cluster/bridge_ > {*}Summary{*}: > When a bridge is stopped while messages being consumed by the target > node, it can lead to duplicate messages. > {*}Description{*}: > When Using bridge and programmatically *stopping* it while messages are > being consumed by the target node, the source node fails to get the > acknowledgement from target node and messages now exists on the source and > the target node. > It appears that the "active" flag being set to false when > BridgeImpl.StopRunnable is called prevent message to be acknowledged by > _BridgeImpl::sendAcknowledged_ function > > {*}Context{*}: > This bug appear in my code (a custom plugin) because is start and stop Bridge > programmatically to move messages from one node to another when some > conditions are met, if they are no longer met I want to stop the moving of > messages. > > *Notes:* > * Changing bridge configuration > {_}useDuplicateDetection{_},{_}confirmationWindowSize{_} or > _producerWindowSize_ parameter do not help to mitigate the issue > * Not related to large messages, i use large messages in my test to ease > reproduction > * Reproduced on 2.30 and 2.34 > * Calling pause() does not create duplicate > {_}server.getClusterManager().getBridges().get(bridgeName).pause(){_}; > > *Resolution:* > Maybe _StopRunnable::run_ should wait until _queue.getDeliveringCount() == 0_ > after removing consumer but before going further in the stop process > > > *UPDATE:* When using pause instead of stop in above scenari, I get message > not being develirable anymore > {*}Summary{*}: > When a bridge is paused while *large* messages being consumed by the target > node, it can lead to message not able to be delivered to consumers. > {*}Description{*}: > When Using bridge and programmatically pausing it while messages are being > consumed by the target node, If large messages are being delivered, the > thread In _BridgeImpl::deliverLargeMessage_ is not awaited, and the bridge is > paused then the Runnable of deliverLargeMessage is being run, but as consumer > has been removed, message can't be consume by target node, and the message > won't be delivered to new consumers -- This message was sent by Atlassian Jira (v8.20.10#820010) - To unsubscribe, e-mail: issues-unsubscr...@activemq.apache.org For additional commands, e-mail: issues-h...@activemq.apache.org For further information, visit: https://activemq.apache.org/contact
[jira] [Updated] (ARTEMIS-4794) CoreBridge: Duplicate message when bridge is stopped while messages being consumed by target node
[ https://issues.apache.org/jira/browse/ARTEMIS-4794?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] nmeylan updated ARTEMIS-4794: - Attachment: (was: BridgeDuplicateMessagesARTEMIS4794Test.java) > CoreBridge: Duplicate message when bridge is stopped while messages being > consumed by target node > - > > Key: ARTEMIS-4794 > URL: https://issues.apache.org/jira/browse/ARTEMIS-4794 > Project: ActiveMQ Artemis > Issue Type: Bug > Components: Clustering >Affects Versions: 2.30.0, 2.34.0 >Reporter: nmeylan >Priority: Major > Attachments: message-not-deliverable.log.txt > > > +Attached test *BridgeDuplicateMessagesARTEMIS4794Test.java*+ highlights the > issue with _org.apache.activemq.artemis.core.server.cluster.impl.BridgeImpl_ > Place it under > _tests/integration-tests/src/test/java/org/apache/activemq/artemis/tests/integration/cluster/bridge_ > {*}Summary{*}: > When a bridge is stopped while messages being consumed by the target > node, it can lead to duplicate messages. > {*}Description{*}: > When Using bridge and programmatically *stopping* it while messages are > being consumed by the target node, the source node fails to get the > acknowledgement from target node and messages now exists on the source and > the target node. > It appears that the "active" flag being set to false when > BridgeImpl.StopRunnable is called prevent message to be acknowledged by > _BridgeImpl::sendAcknowledged_ function > > {*}Context{*}: > This bug appear in my code (a custom plugin) because is start and stop Bridge > programmatically to move messages from one node to another when some > conditions are met, if they are no longer met I want to stop the moving of > messages. > > *Notes:* > * Changing bridge configuration > {_}useDuplicateDetection{_},{_}confirmationWindowSize{_} or > _producerWindowSize_ parameter do not help to mitigate the issue > * Not related to large messages, i use large messages in my test to ease > reproduction > * Reproduced on 2.30 and 2.34 > * Calling pause() does not create duplicate > {_}server.getClusterManager().getBridges().get(bridgeName).pause(){_}; > > *Resolution:* > Maybe _StopRunnable::run_ should wait until _queue.getDeliveringCount() == 0_ > after removing consumer but before going further in the stop process > > > *UPDATE:* When using pause instead of stop in above scenari, I get message > not being develirable anymore > {*}Summary{*}: > When a bridge is paused while *large* messages being consumed by the target > node, it can lead to message not able to be delivered to consumers. > {*}Description{*}: > When Using bridge and programmatically pausing it while messages are being > consumed by the target node, If large messages are being delivered, the > thread In _BridgeImpl::deliverLargeMessage_ is not awaited, and the bridge is > paused then the Runnable of deliverLargeMessage is being run, but as consumer > has been removed, message can't be consume by target node, and the message > won't be delivered to new consumers -- This message was sent by Atlassian Jira (v8.20.10#820010) - To unsubscribe, e-mail: issues-unsubscr...@activemq.apache.org For additional commands, e-mail: issues-h...@activemq.apache.org For further information, visit: https://activemq.apache.org/contact
[jira] [Updated] (ARTEMIS-4794) CoreBridge: Duplicate message when bridge is stopped while messages being consumed by target node
[ https://issues.apache.org/jira/browse/ARTEMIS-4794?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] nmeylan updated ARTEMIS-4794: - Attachment: message-not-deliverable.log.txt > CoreBridge: Duplicate message when bridge is stopped while messages being > consumed by target node > - > > Key: ARTEMIS-4794 > URL: https://issues.apache.org/jira/browse/ARTEMIS-4794 > Project: ActiveMQ Artemis > Issue Type: Bug > Components: Clustering >Affects Versions: 2.30.0, 2.34.0 >Reporter: nmeylan >Priority: Major > Attachments: BridgeDuplicateMessagesARTEMIS4794Test.java, > message-not-deliverable.log.txt > > > +Attached test *BridgeDuplicateMessagesARTEMIS4794Test.java*+ highlights the > issue with _org.apache.activemq.artemis.core.server.cluster.impl.BridgeImpl_ > Place it under > _tests/integration-tests/src/test/java/org/apache/activemq/artemis/tests/integration/cluster/bridge_ > {*}Summary{*}: > When a bridge is stopped while messages being consumed by the target > node, it can lead to duplicate messages. > {*}Description{*}: > When Using bridge and programmatically *stopping* it while messages are > being consumed by the target node, the source node fails to get the > acknowledgement from target node and messages now exists on the source and > the target node. > It appears that the "active" flag being set to false when > BridgeImpl.StopRunnable is called prevent message to be acknowledged by > _BridgeImpl::sendAcknowledged_ function > > {*}Context{*}: > This bug appear in my code (a custom plugin) because is start and stop Bridge > programmatically to move messages from one node to another when some > conditions are met, if they are no longer met I want to stop the moving of > messages. > > *Notes:* > * Changing bridge configuration > {_}useDuplicateDetection{_},{_}confirmationWindowSize{_} or > _producerWindowSize_ parameter do not help to mitigate the issue > * Not related to large messages, i use large messages in my test to ease > reproduction > * Reproduced on 2.30 and 2.34 > * Calling pause() does not create duplicate > {_}server.getClusterManager().getBridges().get(bridgeName).pause(){_}; > > *Resolution:* > Maybe _StopRunnable::run_ should wait until _queue.getDeliveringCount() == 0_ > after removing consumer but before going further in the stop process > > > *UPDATE:* When using pause instead of stop in above scenari, I get message > not being develirable anymore > {*}Summary{*}: > When a bridge is paused while *large* messages being consumed by the target > node, it can lead to message not able to be delivered to consumers. > {*}Description{*}: > When Using bridge and programmatically pausing it while messages are being > consumed by the target node, If large messages are being delivered, the > thread In _BridgeImpl::deliverLargeMessage_ is not awaited, and the bridge is > paused then the Runnable of deliverLargeMessage is being run, but as consumer > has been removed, message can't be consume by target node, and the message > won't be delivered to new consumers -- This message was sent by Atlassian Jira (v8.20.10#820010) - To unsubscribe, e-mail: issues-unsubscr...@activemq.apache.org For additional commands, e-mail: issues-h...@activemq.apache.org For further information, visit: https://activemq.apache.org/contact
[jira] [Updated] (ARTEMIS-4794) CoreBridge: Duplicate message when bridge is stopped while messages being consumed by target node
[ https://issues.apache.org/jira/browse/ARTEMIS-4794?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] nmeylan updated ARTEMIS-4794: - Description: +Attached test *BridgeDuplicateMessagesARTEMIS4794Test.java*+ highlights the issue with _org.apache.activemq.artemis.core.server.cluster.impl.BridgeImpl_ Place it under _tests/integration-tests/src/test/java/org/apache/activemq/artemis/tests/integration/cluster/bridge_ {*}Summary{*}: When a bridge is stopped while messages being consumed by the target node, it can lead to duplicate messages. {*}Description{*}: When Using bridge and programmatically *stopping* it while messages are being consumed by the target node, the source node fails to get the acknowledgement from target node and messages now exists on the source and the target node. It appears that the "active" flag being set to false when BridgeImpl.StopRunnable is called prevent message to be acknowledged by _BridgeImpl::sendAcknowledged_ function {*}Context{*}: This bug appear in my code (a custom plugin) because is start and stop Bridge programmatically to move messages from one node to another when some conditions are met, if they are no longer met I want to stop the moving of messages. *Notes:* * Changing bridge configuration {_}useDuplicateDetection{_},{_}confirmationWindowSize{_} or _producerWindowSize_ parameter do not help to mitigate the issue * Not related to large messages, i use large messages in my test to ease reproduction * Reproduced on 2.30 and 2.34 * Calling pause() does not create duplicate {_}server.getClusterManager().getBridges().get(bridgeName).pause(){_}; *Resolution:* Maybe _StopRunnable::run_ should wait until _queue.getDeliveringCount() == 0_ after removing consumer but before going further in the stop process *UPDATE:* When using pause instead of stop in above scenari, I get message not being develirable anymore {*}Summary{*}: When a bridge is paused while *large* messages being consumed by the target node, it can lead to message not able to be delivered to consumers. {*}Description{*}: When Using bridge and programmatically pausing it while messages are being consumed by the target node, If large messages are being delivered, the thread In _BridgeImpl::deliverLargeMessage_ is not awaited, and the bridge is paused then the Runnable of deliverLargeMessage is being run, but as consumer has been removed, message can't be consume by target node, and the message won't be delivered to new consumers was: +Attached test *BridgeDuplicateMessagesARTEMIS4794Test.java*+ highlights the issue with _org.apache.activemq.artemis.core.server.cluster.impl.BridgeImpl_ Place it under _tests/integration-tests/src/test/java/org/apache/activemq/artemis/tests/integration/cluster/bridge_ {*}Summary{*}: When a bridge is stopped while messages being consumed by the target node, it can lead to duplicate messages. {*}Description{*}: When Using bridge and programmatically *stopping* it while messages are being consumed by the target node, the source node fails to get the acknowledgement from target node and messages now exists on the source and the target node. It appears that the "active" flag being set to false when BridgeImpl.StopRunnable is called prevent message to be acknowledged by _BridgeImpl::sendAcknowledged_ function {*}Context{*}: This bug appear in my code (a custom plugin) because is start and stop Bridge programmatically to move messages from one node to another when some conditions are met, if they are no longer met I want to stop the moving of messages. *Notes:* * Changing bridge configuration {_}useDuplicateDetection{_},{_}confirmationWindowSize{_} or _producerWindowSize_ parameter do not help to mitigate the issue * Not related to large messages, i use large messages in my test to ease reproduction * Reproduced on 2.30 and 2.34 * Calling pause() does not create duplicate {_}server.getClusterManager().getBridges().get(bridgeName).pause(){_}; *Resolution:* Maybe _StopRunnable::run_ should wait until _queue.getDeliveringCount() == 0_ after removing consumer but before going further in the stop process > CoreBridge: Duplicate message when bridge is stopped while messages being > consumed by target node > - > > Key: ARTEMIS-4794 > URL: https://issues.apache.org/jira/browse/ARTEMIS-4794 > Project: ActiveMQ Artemis > Issue Type: Bug > Components: Clustering >Affects Versions: 2.30.0, 2.34.0 >Reporter: nmeylan >Priority: Major > Attachments: BridgeDuplicateMessagesARTEMIS4794Test.java > > > +Attached test *BridgeDuplicateMessagesARTEMIS4794Test.java*+ highlights the > issue with _org.apache.activemq.artemis.core.server.cluster.impl.BridgeI
[jira] [Updated] (ARTEMIS-4794) CoreBridge: Duplicate message when bridge is stopped while messages being consumed by target node
[ https://issues.apache.org/jira/browse/ARTEMIS-4794?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] nmeylan updated ARTEMIS-4794: - Attachment: (was: BridgeDuplicateMessagesARTEMIS4794Test.java) > CoreBridge: Duplicate message when bridge is stopped while messages being > consumed by target node > - > > Key: ARTEMIS-4794 > URL: https://issues.apache.org/jira/browse/ARTEMIS-4794 > Project: ActiveMQ Artemis > Issue Type: Bug > Components: Clustering >Affects Versions: 2.30.0, 2.34.0 >Reporter: nmeylan >Priority: Major > Attachments: BridgeDuplicateMessagesARTEMIS4794Test.java > > > +Attached test *BridgeDuplicateMessagesARTEMIS4794Test.java*+ highlights the > issue with _org.apache.activemq.artemis.core.server.cluster.impl.BridgeImpl_ > Place it under > _tests/integration-tests/src/test/java/org/apache/activemq/artemis/tests/integration/cluster/bridge_ > {*}Summary{*}: > When a bridge is stopped while messages being consumed by the target > node, it can lead to duplicate messages. > {*}Description{*}: > When Using bridge and programmatically *stopping* it while messages are > being consumed by the target node, the source node fails to get the > acknowledgement from target node and messages now exists on the source and > the target node. > It appears that the "active" flag being set to false when > BridgeImpl.StopRunnable is called prevent message to be acknowledged by > _BridgeImpl::sendAcknowledged_ function > > {*}Context{*}: > This bug appear in my code (a custom plugin) because is start and stop Bridge > programmatically to move messages from one node to another when some > conditions are met, if they are no longer met I want to stop the moving of > messages. > > *Notes:* > * Changing bridge configuration > {_}useDuplicateDetection{_},{_}confirmationWindowSize{_} or > _producerWindowSize_ parameter do not help to mitigate the issue > * Not related to large messages, i use large messages in my test to ease > reproduction > * Reproduced on 2.30 and 2.34 > * Calling pause() does not create duplicate > {_}server.getClusterManager().getBridges().get(bridgeName).pause(){_}; > > *Resolution:* > Maybe _StopRunnable::run_ should wait until _queue.getDeliveringCount() == 0_ > after removing consumer but before going further in the stop process -- This message was sent by Atlassian Jira (v8.20.10#820010) - To unsubscribe, e-mail: issues-unsubscr...@activemq.apache.org For additional commands, e-mail: issues-h...@activemq.apache.org For further information, visit: https://activemq.apache.org/contact
[jira] [Updated] (ARTEMIS-4794) CoreBridge: Duplicate message when bridge is stopped while messages being consumed by target node
[ https://issues.apache.org/jira/browse/ARTEMIS-4794?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] nmeylan updated ARTEMIS-4794: - Attachment: BridgeDuplicateMessagesARTEMIS4794Test.java > CoreBridge: Duplicate message when bridge is stopped while messages being > consumed by target node > - > > Key: ARTEMIS-4794 > URL: https://issues.apache.org/jira/browse/ARTEMIS-4794 > Project: ActiveMQ Artemis > Issue Type: Bug > Components: Clustering >Affects Versions: 2.30.0, 2.34.0 >Reporter: nmeylan >Priority: Major > Attachments: BridgeDuplicateMessagesARTEMIS4794Test.java > > > +Attached test *BridgeDuplicateMessagesARTEMIS4794Test.java*+ highlights the > issue with _org.apache.activemq.artemis.core.server.cluster.impl.BridgeImpl_ > Place it under > _tests/integration-tests/src/test/java/org/apache/activemq/artemis/tests/integration/cluster/bridge_ > {*}Summary{*}: > When a bridge is stopped while messages being consumed by the target > node, it can lead to duplicate messages. > {*}Description{*}: > When Using bridge and programmatically *stopping* it while messages are > being consumed by the target node, the source node fails to get the > acknowledgement from target node and messages now exists on the source and > the target node. > It appears that the "active" flag being set to false when > BridgeImpl.StopRunnable is called prevent message to be acknowledged by > _BridgeImpl::sendAcknowledged_ function > > {*}Context{*}: > This bug appear in my code (a custom plugin) because is start and stop Bridge > programmatically to move messages from one node to another when some > conditions are met, if they are no longer met I want to stop the moving of > messages. > > *Notes:* > * Changing bridge configuration > {_}useDuplicateDetection{_},{_}confirmationWindowSize{_} or > _producerWindowSize_ parameter do not help to mitigate the issue > * Not related to large messages, i use large messages in my test to ease > reproduction > * Reproduced on 2.30 and 2.34 > * Calling pause() does not create duplicate > {_}server.getClusterManager().getBridges().get(bridgeName).pause(){_}; > > *Resolution:* > Maybe _StopRunnable::run_ should wait until _queue.getDeliveringCount() == 0_ > after removing consumer but before going further in the stop process -- This message was sent by Atlassian Jira (v8.20.10#820010) - To unsubscribe, e-mail: issues-unsubscr...@activemq.apache.org For additional commands, e-mail: issues-h...@activemq.apache.org For further information, visit: https://activemq.apache.org/contact
[jira] [Updated] (ARTEMIS-4794) CoreBridge: Duplicate message when bridge is stopped while messages being consumed by target node
[ https://issues.apache.org/jira/browse/ARTEMIS-4794?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] nmeylan updated ARTEMIS-4794: - Attachment: (was: BridgeDuplicateMessagesARTEMIS4794Test.java) > CoreBridge: Duplicate message when bridge is stopped while messages being > consumed by target node > - > > Key: ARTEMIS-4794 > URL: https://issues.apache.org/jira/browse/ARTEMIS-4794 > Project: ActiveMQ Artemis > Issue Type: Bug > Components: Clustering >Affects Versions: 2.30.0, 2.34.0 >Reporter: nmeylan >Priority: Major > Attachments: BridgeDuplicateMessagesARTEMIS4794Test.java > > > +Attached test *BridgeDuplicateMessagesARTEMIS4794Test.java*+ highlights the > issue with _org.apache.activemq.artemis.core.server.cluster.impl.BridgeImpl_ > Place it under > _tests/integration-tests/src/test/java/org/apache/activemq/artemis/tests/integration/cluster/bridge_ > {*}Summary{*}: > When a bridge is stopped while messages being consumed by the target > node, it can lead to duplicate messages. > {*}Description{*}: > When Using bridge and programmatically *stopping* it while messages are > being consumed by the target node, the source node fails to get the > acknowledgement from target node and messages now exists on the source and > the target node. > It appears that the "active" flag being set to false when > BridgeImpl.StopRunnable is called prevent message to be acknowledged by > _BridgeImpl::sendAcknowledged_ function > > {*}Context{*}: > This bug appear in my code (a custom plugin) because is start and stop Bridge > programmatically to move messages from one node to another when some > conditions are met, if they are no longer met I want to stop the moving of > messages. > > *Notes:* > * Changing bridge configuration > {_}useDuplicateDetection{_},{_}confirmationWindowSize{_} or > _producerWindowSize_ parameter do not help to mitigate the issue > * Not related to large messages, i use large messages in my test to ease > reproduction > * Reproduced on 2.30 and 2.34 > * Calling pause() does not create duplicate > {_}server.getClusterManager().getBridges().get(bridgeName).pause(){_}; > > *Resolution:* > Maybe _StopRunnable::run_ should wait until _queue.getDeliveringCount() == 0_ > after removing consumer but before going further in the stop process -- This message was sent by Atlassian Jira (v8.20.10#820010) - To unsubscribe, e-mail: issues-unsubscr...@activemq.apache.org For additional commands, e-mail: issues-h...@activemq.apache.org For further information, visit: https://activemq.apache.org/contact
[jira] [Updated] (ARTEMIS-4794) CoreBridge: Duplicate message when bridge is stopped while messages being consumed by target node
[ https://issues.apache.org/jira/browse/ARTEMIS-4794?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] nmeylan updated ARTEMIS-4794: - Attachment: BridgeDuplicateMessagesARTEMIS4794Test.java > CoreBridge: Duplicate message when bridge is stopped while messages being > consumed by target node > - > > Key: ARTEMIS-4794 > URL: https://issues.apache.org/jira/browse/ARTEMIS-4794 > Project: ActiveMQ Artemis > Issue Type: Bug > Components: Clustering >Affects Versions: 2.30.0, 2.34.0 >Reporter: nmeylan >Priority: Major > Attachments: BridgeDuplicateMessagesARTEMIS4794Test.java > > > +Attached test *BridgeDuplicateMessagesARTEMIS4794Test.java*+ highlights the > issue with _org.apache.activemq.artemis.core.server.cluster.impl.BridgeImpl_ > Place it under > _tests/integration-tests/src/test/java/org/apache/activemq/artemis/tests/integration/cluster/bridge_ > {*}Summary{*}: > When a bridge is stopped while messages being consumed by the target > node, it can lead to duplicate messages. > {*}Description{*}: > When Using bridge and programmatically *stopping* it while messages are > being consumed by the target node, the source node fails to get the > acknowledgement from target node and messages now exists on the source and > the target node. > It appears that the "active" flag being set to false when > BridgeImpl.StopRunnable is called prevent message to be acknowledged by > _BridgeImpl::sendAcknowledged_ function > > {*}Context{*}: > This bug appear in my code (a custom plugin) because is start and stop Bridge > programmatically to move messages from one node to another when some > conditions are met, if they are no longer met I want to stop the moving of > messages. > > *Notes:* > * Changing bridge configuration > {_}useDuplicateDetection{_},{_}confirmationWindowSize{_} or > _producerWindowSize_ parameter do not help to mitigate the issue > * Not related to large messages, i use large messages in my test to ease > reproduction > * Reproduced on 2.30 and 2.34 > * Calling pause() does not create duplicate > {_}server.getClusterManager().getBridges().get(bridgeName).pause(){_}; > > *Resolution:* > Maybe _StopRunnable::run_ should wait until _queue.getDeliveringCount() == 0_ > after removing consumer but before going further in the stop process -- This message was sent by Atlassian Jira (v8.20.10#820010) - To unsubscribe, e-mail: issues-unsubscr...@activemq.apache.org For additional commands, e-mail: issues-h...@activemq.apache.org For further information, visit: https://activemq.apache.org/contact
[jira] [Updated] (ARTEMIS-4794) CoreBridge: Duplicate message when bridge is stopped while messages being consumed by target node
[ https://issues.apache.org/jira/browse/ARTEMIS-4794?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] nmeylan updated ARTEMIS-4794: - Description: +Attached test *BridgeDuplicateMessagesARTEMIS4794Test.java*+ highlights the issue with _org.apache.activemq.artemis.core.server.cluster.impl.BridgeImpl_ Place it under _tests/integration-tests/src/test/java/org/apache/activemq/artemis/tests/integration/cluster/bridge_ {*}Summary{*}: When a bridge is stopped while messages being consumed by the target node, it can lead to duplicate messages. {*}Description{*}: When Using bridge and programmatically *stopping* it while messages are being consumed by the target node, the source node fails to get the acknowledgement from target node and messages now exists on the source and the target node. It appears that the "active" flag being set to false when BridgeImpl.StopRunnable is called prevent message to be acknowledged by _BridgeImpl::sendAcknowledged_ function {*}Context{*}: This bug appear in my code (a custom plugin) because is start and stop Bridge programmatically to move messages from one node to another when some conditions are met, if they are no longer met I want to stop the moving of messages. *Notes:* * Changing bridge configuration {_}useDuplicateDetection{_},{_}confirmationWindowSize{_} or _producerWindowSize_ parameter do not help to mitigate the issue * Not related to large messages, i use large messages in my test to ease reproduction * Reproduced on 2.30 and 2.34 * Calling pause() does not create duplicate {_}server.getClusterManager().getBridges().get(bridgeName).pause(){_}; *Resolution:* Maybe _StopRunnable::run_ should wait until _queue.getDeliveringCount() == 0_ after removing consumer but before going further in the stop process was: +Attached test *BridgeDuplicateMessagesARTEMIS4794Test.java*+ highlights the issue with _org.apache.activemq.artemis.core.server.cluster.impl.BridgeImpl_ Place it under _tests/integration-tests/src/test/java/org/apache/activemq/artemis/tests/integration/cluster/bridge_ {*}Summary{*}: When a bridge is stopped while messages being consumed by the target node, it can lead to duplicate messages. {*}Description{*}: When Using bridge and programmatically *stopping* or *pausing* it while messages are being consumed by the target node, the source node fails to get the acknowledgement from target node and messages now exists on the source and the target node. It appears that the "active" flag being set to false when BridgeImpl.StopRunnable is called prevent message to be acknowledged by _BridgeImpl::sendAcknowledged_ function {*}Context{*}: This bug appear in my code (a custom plugin) because is start and stop Bridge programmatically to move messages from one node to another when some conditions are met, if they are no longer met I want to stop the moving of messages. *Notes:* * Changing bridge configuration {_}useDuplicateDetection{_},{_}confirmationWindowSize{_} or _producerWindowSize_ parameter do not help to mitigate the issue * Not related to large messages, i use large messages in my test to ease reproduction * Reproduced on 2.30 and 2.34 *Resolution:* Maybe _StopRunnable::run_ should wait until _queue.getDeliveringCount() == 0_ after removing consumer but before going further in the stop process > CoreBridge: Duplicate message when bridge is stopped while messages being > consumed by target node > - > > Key: ARTEMIS-4794 > URL: https://issues.apache.org/jira/browse/ARTEMIS-4794 > Project: ActiveMQ Artemis > Issue Type: Bug > Components: Clustering >Affects Versions: 2.30.0, 2.34.0 >Reporter: nmeylan >Priority: Major > Attachments: BridgeDuplicateMessagesARTEMIS4794Test.java > > > +Attached test *BridgeDuplicateMessagesARTEMIS4794Test.java*+ highlights the > issue with _org.apache.activemq.artemis.core.server.cluster.impl.BridgeImpl_ > Place it under > _tests/integration-tests/src/test/java/org/apache/activemq/artemis/tests/integration/cluster/bridge_ > {*}Summary{*}: > When a bridge is stopped while messages being consumed by the target > node, it can lead to duplicate messages. > {*}Description{*}: > When Using bridge and programmatically *stopping* it while messages are > being consumed by the target node, the source node fails to get the > acknowledgement from target node and messages now exists on the source and > the target node. > It appears that the "active" flag being set to false when > BridgeImpl.StopRunnable is called prevent message to be acknowledged by > _BridgeImpl::sendAcknowledged_ function > > {*}Context{*}: > This bug appear in my code (a custom plugin) because is start and stop Bridge > pr
[jira] [Updated] (ARTEMIS-4794) CoreBridge: Duplicate message when bridge is stopped while messages being consumed by target node
[ https://issues.apache.org/jira/browse/ARTEMIS-4794?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] nmeylan updated ARTEMIS-4794: - Description: +Attached test *BridgeDuplicateMessagesARTEMIS4794Test.java*+ highlights the issue with _org.apache.activemq.artemis.core.server.cluster.impl.BridgeImpl_ Place it under _tests/integration-tests/src/test/java/org/apache/activemq/artemis/tests/integration/cluster/bridge_ {*}Summary{*}: When a bridge is stopped while messages being consumed by the target node, it can lead to duplicate messages. {*}Description{*}: When Using bridge and programmatically *stopping* or *pausing* it while messages are being consumed by the target node, the source node fails to get the acknowledgement from target node and messages now exists on the source and the target node. It appears that the "active" flag being set to false when BridgeImpl.StopRunnable is called prevent message to be acknowledged by _BridgeImpl::sendAcknowledged_ function {*}Context{*}: This bug appear in my code (a custom plugin) because is start and stop Bridge programmatically to move messages from one node to another when some conditions are met, if they are no longer met I want to stop the moving of messages. *Notes:* * Changing bridge configuration {_}useDuplicateDetection{_},{_}confirmationWindowSize{_} or _producerWindowSize_ parameter do not help to mitigate the issue * Not related to large messages, i use large messages in my test to ease reproduction * Reproduced on 2.30 and 2.34 *Resolution:* Maybe _StopRunnable::run_ should wait until _queue.getDeliveringCount() == 0_ after removing consumer but before going further in the stop process was: +Attached test *BridgeDuplicateMessagesARTEMIS4794Test.java*+ highlights the issue with _org.apache.activemq.artemis.core.server.cluster.impl.BridgeImpl_ Place it under _tests/integration-tests/src/test/java/org/apache/activemq/artemis/tests/integration/cluster/bridge_ {*}Summary{*}: When a bridge is stopped while messages being consumed by the target node, it can lead to duplicate messages. {*}Description{*}: When Using bridge and programmatically *stopping* or *pausing* it while messages are being consumed by the target node, the source node fails to get the acknowledgement from target node and messages now exists on the source and the target node. It appears that the "active" flag being set to false when BridgeImpl.StopRunnable is called prevent message to be acknowledged by _BridgeImpl::sendAcknowledged_ function {*}Context{*}: This bug appear in my code because is start and stop Bridge programmatically to move messages from one node to another when some conditions are met, if they are no longer met I want to stop the moving of messages. *Notes:* * Changing bridge configuration {_}useDuplicateDetection{_},{_}confirmationWindowSize{_} or _producerWindowSize_ parameter do not help to mitigate the issue * Not related to large messages, i use large messages in my test to ease reproduction * Reproduced on 2.30 and 2.34 *Resolution:* Maybe _StopRunnable::run_ should wait until _queue.getDeliveringCount() == 0_ after removing consumer but before going further in the stop process > CoreBridge: Duplicate message when bridge is stopped while messages being > consumed by target node > - > > Key: ARTEMIS-4794 > URL: https://issues.apache.org/jira/browse/ARTEMIS-4794 > Project: ActiveMQ Artemis > Issue Type: Bug > Components: Clustering >Affects Versions: 2.30.0, 2.34.0 >Reporter: nmeylan >Priority: Major > Attachments: BridgeDuplicateMessagesARTEMIS4794Test.java > > > +Attached test *BridgeDuplicateMessagesARTEMIS4794Test.java*+ highlights the > issue with _org.apache.activemq.artemis.core.server.cluster.impl.BridgeImpl_ > Place it under > _tests/integration-tests/src/test/java/org/apache/activemq/artemis/tests/integration/cluster/bridge_ > {*}Summary{*}: > When a bridge is stopped while messages being consumed by the target > node, it can lead to duplicate messages. > {*}Description{*}: > When Using bridge and programmatically *stopping* or *pausing* it while > messages are being consumed by the target node, the source node fails to get > the acknowledgement from target node and messages now exists on the source > and the target node. > It appears that the "active" flag being set to false when > BridgeImpl.StopRunnable is called prevent message to be acknowledged by > _BridgeImpl::sendAcknowledged_ function > > {*}Context{*}: > This bug appear in my code (a custom plugin) because is start and stop Bridge > programmatically to move messages from one node to another when some > conditions are met, if they are no long
[jira] [Updated] (ARTEMIS-4794) CoreBridge: Duplicate message when bridge is stopped while messages being consumed by target node
[ https://issues.apache.org/jira/browse/ARTEMIS-4794?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] nmeylan updated ARTEMIS-4794: - Description: +Attached test *BridgeDuplicateMessagesARTEMIS4794Test.java*+ highlights the issue with _org.apache.activemq.artemis.core.server.cluster.impl.BridgeImpl_ Place it under _tests/integration-tests/src/test/java/org/apache/activemq/artemis/tests/integration/cluster/bridge_ {*}Summary{*}: When a bridge is stopped while messages being consumed by the target node, it can lead to duplicate messages. {*}Description{*}: When Using bridge and programmatically *stopping* or *pausing* it while messages are being consumed by the target node, the source node fails to get the acknowledgement from target node and messages now exists on the source and the target node. It appears that the "active" flag being set to false when BridgeImpl.StopRunnable is called prevent message to be acknowledged by _BridgeImpl::sendAcknowledged_ function {*}Context{*}: This bug appear in my code because is start and stop Bridge programmatically to move messages from one node to another when some conditions are met, if they are no longer met I want to stop the moving of messages. *Notes:* * Changing bridge configuration {_}useDuplicateDetection{_},{_}confirmationWindowSize{_} or _producerWindowSize_ parameter do not help to mitigate the issue * Not related to large messages, i use large messages in my test to ease reproduction * Reproduced on 2.30 and 2.34 *Resolution:* Maybe _StopRunnable::run_ should wait until _queue.getDeliveringCount() == 0_ after removing consumer but before going further in the stop process was: +Attached test *BridgeDuplicateMessagesARTEMIS4794Test.java* **+ highlights the issue with+ org.apache.activemq.artemis.core.server.cluster.impl.BridgeImpl Place it under _tests/integration-tests/src/test/java/org/apache/activemq/artemis/tests/integration/cluster/bridge_ {*}Summary{*}: When a bridge is stopped while messages being consumed by the target node, it can lead to duplicate messages. {*}Description{*}: When Using bridge and programmatically *stopping* or *pausing* it while messages are being consumed by the target node, the source node fails to get the acknowledgement from target node and messages now exists on the source and the target node. It appears that the "active" flag being set to false when BridgeImpl.StopRunnable is called prevent message to be acknowledged by _BridgeImpl::sendAcknowledged_ function {*}Context{*}: This bug appear in my code because is start and stop Bridge programmatically to move messages from one node to another when some conditions are met, if they are no longer met I want to stop the moving of messages. *Notes:* * Changing bridge configuration {_}useDuplicateDetection{_},{_}confirmationWindowSize{_} or _producerWindowSize_ parameter do not help to mitigate the issue * Not related to large messages, i use large messages in my test to ease reproduction * Reproduced on 2.30 and 2.34 *Resolution:* Maybe _StopRunnable::run_ should wait until _queue.getDeliveringCount() == 0_ after removing consumer but before going further in the stop process > CoreBridge: Duplicate message when bridge is stopped while messages being > consumed by target node > - > > Key: ARTEMIS-4794 > URL: https://issues.apache.org/jira/browse/ARTEMIS-4794 > Project: ActiveMQ Artemis > Issue Type: Bug > Components: Clustering >Affects Versions: 2.30.0, 2.34.0 >Reporter: nmeylan >Priority: Major > Attachments: BridgeDuplicateMessagesARTEMIS4794Test.java > > > +Attached test *BridgeDuplicateMessagesARTEMIS4794Test.java*+ highlights the > issue with _org.apache.activemq.artemis.core.server.cluster.impl.BridgeImpl_ > Place it under > _tests/integration-tests/src/test/java/org/apache/activemq/artemis/tests/integration/cluster/bridge_ > {*}Summary{*}: > When a bridge is stopped while messages being consumed by the target > node, it can lead to duplicate messages. > {*}Description{*}: > When Using bridge and programmatically *stopping* or *pausing* it while > messages are being consumed by the target node, the source node fails to get > the acknowledgement from target node and messages now exists on the source > and the target node. > It appears that the "active" flag being set to false when > BridgeImpl.StopRunnable is called prevent message to be acknowledged by > _BridgeImpl::sendAcknowledged_ function > > {*}Context{*}: > This bug appear in my code because is start and stop Bridge programmatically > to move messages from one node to another when some conditions are met, if > they are no longer met I want to stop the moving o
[jira] [Updated] (ARTEMIS-4794) CoreBridge: Duplicate message when bridge is stopped while messages being consumed by target node
[ https://issues.apache.org/jira/browse/ARTEMIS-4794?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] nmeylan updated ARTEMIS-4794: - Description: +Attached test *BridgeDuplicateMessagesARTEMIS4794Test.java* **+ highlights the issue with+ org.apache.activemq.artemis.core.server.cluster.impl.BridgeImpl Place it under _tests/integration-tests/src/test/java/org/apache/activemq/artemis/tests/integration/cluster/bridge_ {*}Summary{*}: When a bridge is stopped while messages being consumed by the target node, it can lead to duplicate messages. {*}Description{*}: When Using bridge and programmatically *stopping* or *pausing* it while messages are being consumed by the target node, the source node fails to get the acknowledgement from target node and messages now exists on the source and the target node. It appears that the "active" flag being set to false when BridgeImpl.StopRunnable is called prevent message to be acknowledged by _BridgeImpl::sendAcknowledged_ function {*}Context{*}: This bug appear in my code because is start and stop Bridge programmatically to move messages from one node to another when some conditions are met, if they are no longer met I want to stop the moving of messages. *Notes:* * Changing bridge configuration {_}useDuplicateDetection{_},{_}confirmationWindowSize{_} or _producerWindowSize_ parameter do not help to mitigate the issue * Not related to large messages, i use large messages in my test to ease reproduction * Reproduced on 2.30 and 2.34 *Resolution:* Maybe _StopRunnable::run_ should wait until _queue.getDeliveringCount() == 0_ after removing consumer but before going further in the stop process was: +Attached test *BridgeDuplicateMessagesARTEMIS4794Test.java* **+ highlights the issue with+ org.apache.activemq.artemis.core.server.cluster.impl.BridgeImpl Place it under _tests/integration-tests/src/test/java/org/apache/activemq/artemis/tests/integration/cluster/bridge_ {*}Summary{*}: When a bridge is stopped while messages being consumed by the target node, it can lead to duplicate messages. {*}Description{*}: When Using bridge and programmatically *stopping* or *pausing* it while messages are being consumed by the target node, the source node fails to get the acknowledgement from target node and messages now exists on the source and the target node. It appears that the "active" flag being set to false when BridgeImpl.StopRunnable is called prevent message to be acknowledged by _BridgeImpl::sendAcknowledged_ function {*}Context{*}: This bug appear in my code because is start and stop Bridge programmatically to move messages from one node to another when some conditions are met, if they are no longer met I want to stop the moving of messages. *Notes:* * Changing bridge configuration {_}useDuplicateDetection{_},{_}confirmationWindowSize{_} or _producerWindowSize_ parameter do not help to mitigate the issue * Not related to large messages, i use large messages in my test to ease reproduction * Bug present on 2.30 and 2.34 *Resolution:* Maybe _StopRunnable::run_ should wait until _queue.getDeliveringCount() == 0_ after removing consumer but before going further in the stop process > CoreBridge: Duplicate message when bridge is stopped while messages being > consumed by target node > - > > Key: ARTEMIS-4794 > URL: https://issues.apache.org/jira/browse/ARTEMIS-4794 > Project: ActiveMQ Artemis > Issue Type: Bug > Components: Clustering >Affects Versions: 2.30.0, 2.34.0 >Reporter: nmeylan >Priority: Major > Attachments: BridgeDuplicateMessagesARTEMIS4794Test.java > > > +Attached test *BridgeDuplicateMessagesARTEMIS4794Test.java* **+ highlights > the issue with+ > org.apache.activemq.artemis.core.server.cluster.impl.BridgeImpl > Place it under > _tests/integration-tests/src/test/java/org/apache/activemq/artemis/tests/integration/cluster/bridge_ > {*}Summary{*}: > When a bridge is stopped while messages being consumed by the target > node, it can lead to duplicate messages. > {*}Description{*}: > When Using bridge and programmatically *stopping* or *pausing* it while > messages are being consumed by the target node, the source node fails to get > the acknowledgement from target node and messages now exists on the source > and the target node. > It appears that the "active" flag being set to false when > BridgeImpl.StopRunnable is called prevent message to be acknowledged by > _BridgeImpl::sendAcknowledged_ function > > {*}Context{*}: > This bug appear in my code because is start and stop Bridge programmatically > to move messages from one node to another when some conditions are met, if > they are no longer met I want to stop the
[jira] [Updated] (ARTEMIS-4794) CoreBridge: Duplicate message when bridge is stopped while messages being consumed by target node
[ https://issues.apache.org/jira/browse/ARTEMIS-4794?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] nmeylan updated ARTEMIS-4794: - Attachment: BridgeDuplicateMessagesARTEMIS4794Test.java > CoreBridge: Duplicate message when bridge is stopped while messages being > consumed by target node > - > > Key: ARTEMIS-4794 > URL: https://issues.apache.org/jira/browse/ARTEMIS-4794 > Project: ActiveMQ Artemis > Issue Type: Bug > Components: Clustering >Affects Versions: 2.30.0, 2.34.0 >Reporter: nmeylan >Priority: Major > Attachments: BridgeDuplicateMessagesARTEMIS4794Test.java > > > +Attached test *BridgeDuplicateMessagesARTEMIS4794Test.java* **+ highlights > the issue with+ > org.apache.activemq.artemis.core.server.cluster.impl.BridgeImpl > Place it under > _tests/integration-tests/src/test/java/org/apache/activemq/artemis/tests/integration/cluster/bridge_ > {*}Summary{*}: > When a bridge is stopped while messages being consumed by the target > node, it can lead to duplicate messages. > {*}Description{*}: > When Using bridge and programmatically *stopping* or *pausing* it while > messages are being consumed by the target node, the source node fails to get > the acknowledgement from target node and messages now exists on the source > and the target node. > It appears that the "active" flag being set to false when > BridgeImpl.StopRunnable is called prevent message to be acknowledged by > _BridgeImpl::sendAcknowledged_ function > > {*}Context{*}: > This bug appear in my code because is start and stop Bridge programmatically > to move messages from one node to another when some conditions are met, if > they are no longer met I want to stop the moving of messages. > > *Notes:* > * Changing bridge configuration > {_}useDuplicateDetection{_},{_}confirmationWindowSize{_} or > _producerWindowSize_ parameter do not help to mitigate the issue > * Not related to large messages, i use large messages in my test to ease > reproduction > * Bug present on 2.30 and 2.34 > > *Resolution:* > Maybe _StopRunnable::run_ should wait until _queue.getDeliveringCount() == 0_ > after removing consumer but before going further in the stop process -- This message was sent by Atlassian Jira (v8.20.10#820010) - To unsubscribe, e-mail: issues-unsubscr...@activemq.apache.org For additional commands, e-mail: issues-h...@activemq.apache.org For further information, visit: https://activemq.apache.org/contact
[jira] [Updated] (ARTEMIS-4794) CoreBridge: Duplicate message when bridge is stopped while messages being consumed by target node
[ https://issues.apache.org/jira/browse/ARTEMIS-4794?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] nmeylan updated ARTEMIS-4794: - Attachment: (was: BridgeDuplicateMessagesARTEMIS4794Test.java) > CoreBridge: Duplicate message when bridge is stopped while messages being > consumed by target node > - > > Key: ARTEMIS-4794 > URL: https://issues.apache.org/jira/browse/ARTEMIS-4794 > Project: ActiveMQ Artemis > Issue Type: Bug > Components: Clustering >Affects Versions: 2.30.0, 2.34.0 >Reporter: nmeylan >Priority: Major > Attachments: BridgeDuplicateMessagesARTEMIS4794Test.java > > > +Attached test *BridgeDuplicateMessagesARTEMIS4794Test.java* **+ highlights > the issue with+ > org.apache.activemq.artemis.core.server.cluster.impl.BridgeImpl > Place it under > _tests/integration-tests/src/test/java/org/apache/activemq/artemis/tests/integration/cluster/bridge_ > {*}Summary{*}: > When a bridge is stopped while messages being consumed by the target > node, it can lead to duplicate messages. > {*}Description{*}: > When Using bridge and programmatically *stopping* or *pausing* it while > messages are being consumed by the target node, the source node fails to get > the acknowledgement from target node and messages now exists on the source > and the target node. > It appears that the "active" flag being set to false when > BridgeImpl.StopRunnable is called prevent message to be acknowledged by > _BridgeImpl::sendAcknowledged_ function > > {*}Context{*}: > This bug appear in my code because is start and stop Bridge programmatically > to move messages from one node to another when some conditions are met, if > they are no longer met I want to stop the moving of messages. > > *Notes:* > * Changing bridge configuration > {_}useDuplicateDetection{_},{_}confirmationWindowSize{_} or > _producerWindowSize_ parameter do not help to mitigate the issue > * Not related to large messages, i use large messages in my test to ease > reproduction > * Bug present on 2.30 and 2.34 > > *Resolution:* > Maybe _StopRunnable::run_ should wait until _queue.getDeliveringCount() == 0_ > after removing consumer but before going further in the stop process -- This message was sent by Atlassian Jira (v8.20.10#820010) - To unsubscribe, e-mail: issues-unsubscr...@activemq.apache.org For additional commands, e-mail: issues-h...@activemq.apache.org For further information, visit: https://activemq.apache.org/contact
[jira] [Updated] (ARTEMIS-4794) CoreBridge: Duplicate message when bridge is stopped while messages being consumed by target node
[ https://issues.apache.org/jira/browse/ARTEMIS-4794?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] nmeylan updated ARTEMIS-4794: - Description: +Attached test *BridgeDuplicateMessagesARTEMIS4794Test.java* **+ highlights the issue with+ org.apache.activemq.artemis.core.server.cluster.impl.BridgeImpl Place it under _tests/integration-tests/src/test/java/org/apache/activemq/artemis/tests/integration/cluster/bridge_ {*}Summary{*}: When a bridge is stopped while messages being consumed by the target node, it can lead to duplicate messages. {*}Description{*}: When Using bridge and programmatically *stopping* or *pausing* it while messages are being consumed by the target node, the source node fails to get the acknowledgement from target node and messages now exists on the source and the target node. It appears that the "active" flag being set to false when BridgeImpl.StopRunnable is called prevent message to be acknowledged by _BridgeImpl::sendAcknowledged_ function {*}Context{*}: This bug appear in my code because is start and stop Bridge programmatically to move messages from one node to another when some conditions are met, if they are no longer met I want to stop the moving of messages. *Notes:* * Changing bridge configuration {_}useDuplicateDetection{_},{_}confirmationWindowSize{_} or _producerWindowSize_ parameter do not help to mitigate the issue * Not related to large messages, i use large messages in my test to ease reproduction * Bug present on 2.30 and 2.34 *Resolution:* Maybe _StopRunnable::run_ should wait until _queue.getDeliveringCount() == 0_ after removing consumer but before going further in the stop process was: +Attached test *BridgeDuplicateMessagesARTEMIS4794Test.java* **+ highlights the issue with+ org.apache.activemq.artemis.core.server.cluster.impl.BridgeImpl Place it under _tests/integration-tests/src/test/java/org/apache/activemq/artemis/tests/integration/cluster/bridge_ {*}Summary{*}: When a bridge is stopped while messages being consumed by the target node, it can lead to duplicate messages. {*}Description{*}: When Using bridge and programmatically *stopping* or *pausing* it while messages are being consumed by the target node, the source node fails to get the acknowledgement from target node and messages now exists on the source and the target node. It appears that the "active" flag being set to false when BridgeImpl.StopRunnable is called prevent message to be acknowledged by _BridgeImpl::sendAcknowledged_ function {*}Context{*}: This bug appear in my code because is start and stop Bridge programmatically to move messages from one node to another when some conditions are met, if they are no longer met I want to stop the moving of messages. *Notes:* * Changing bridge configuration {_}useDuplicateDetection{_},{_}confirmationWindowSize{_} or _producerWindowSize_ parameter do not help to mitigate the issue * Not related to large messages, i use large messages in my test to ease reproduction * Bug present on 2.30 and 2.34 *Resolution:* Maybe _StopRunnable::run_ should wait until _queue.getDeliveringCount() == 0_ after removing consumer but before going further in the stop process > CoreBridge: Duplicate message when bridge is stopped while messages being > consumed by target node > - > > Key: ARTEMIS-4794 > URL: https://issues.apache.org/jira/browse/ARTEMIS-4794 > Project: ActiveMQ Artemis > Issue Type: Bug > Components: Clustering >Affects Versions: 2.30.0, 2.34.0 >Reporter: nmeylan >Priority: Major > Attachments: BridgeDuplicateMessagesARTEMIS4794Test.java > > > +Attached test *BridgeDuplicateMessagesARTEMIS4794Test.java* **+ highlights > the issue with+ > org.apache.activemq.artemis.core.server.cluster.impl.BridgeImpl > Place it under > _tests/integration-tests/src/test/java/org/apache/activemq/artemis/tests/integration/cluster/bridge_ > {*}Summary{*}: > When a bridge is stopped while messages being consumed by the target > node, it can lead to duplicate messages. > {*}Description{*}: > When Using bridge and programmatically *stopping* or *pausing* it while > messages are being consumed by the target node, the source node fails to get > the acknowledgement from target node and messages now exists on the source > and the target node. > It appears that the "active" flag being set to false when > BridgeImpl.StopRunnable is called prevent message to be acknowledged by > _BridgeImpl::sendAcknowledged_ function > > {*}Context{*}: > This bug appear in my code because is start and stop Bridge programmatically > to move messages from one node to another when some conditions are met, if > they are no longer met I want to stop the mo
[jira] [Updated] (ARTEMIS-4794) CoreBridge: Duplicate message when bridge is stopped while messages being consumed by target node
[ https://issues.apache.org/jira/browse/ARTEMIS-4794?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] nmeylan updated ARTEMIS-4794: - Description: +Attached test *BridgeDuplicateMessagesARTEMIS4794Test.java* **+ highlights the issue with+ org.apache.activemq.artemis.core.server.cluster.impl.BridgeImpl Place it under _tests/integration-tests/src/test/java/org/apache/activemq/artemis/tests/integration/cluster/bridge_ {*}Summary{*}: When a bridge is stopped while messages being consumed by the target node, it can lead to duplicate messages. {*}Description{*}: When Using bridge and programmatically *stopping* or *pausing* it while messages are being consumed by the target node, the source node fails to get the acknowledgement from target node and messages now exists on the source and the target node. It appears that the "active" flag being set to false when BridgeImpl.StopRunnable is called prevent message to be acknowledged by _BridgeImpl::sendAcknowledged_ function {*}Context{*}: This bug appear in my code because is start and stop Bridge programmatically to move messages from one node to another when some conditions are met, if they are no longer met I want to stop the moving of messages. *Notes:* * Changing bridge configuration {_}useDuplicateDetection{_},{_}confirmationWindowSize{_} or _producerWindowSize_ parameter do not help to mitigate the issue * Not related to large messages, i use large messages in my test to ease reproduction * Bug present on 2.30 and 2.34 *Resolution:* Maybe _StopRunnable::run_ should wait until _queue.getDeliveringCount() == 0_ after removing consumer but before going further in the stop process was: +Attached test +{*}BridgeDuplicateMessageBugTest.java{*}+ highlights the issue with+ org.apache.activemq.artemis.core.server.cluster.impl.BridgeImpl Place it under _tests/integration-tests/src/test/java/org/apache/activemq/artemis/tests/integration/cluster/bridge_ {*}Summary{*}: When a bridge is stopped while messages being consumed by the target node, it can lead to duplicate messages. {*}Description{*}: When Using bridge and programmatically *stopping* or *pausing* it while messages are being consumed by the target node, the source node fails to get the acknowledgement from target node and messages now exists on the source and the target node. It appears that the "active" flag being set to false when BridgeImpl.StopRunnable is called prevent message to be acknowledged by _BridgeImpl::sendAcknowledged_ function {*}Context{*}: This bug appear in my code because is start and stop Bridge programmatically to move messages from one node to another when some conditions are met, if they are no longer met I want to stop the moving of messages. *Notes:* * Changing bridge configuration {_}useDuplicateDetection{_},{_}confirmationWindowSize{_} or _producerWindowSize_ parameter do not help to mitigate the issue * Not related to large messages, i use large messages in my test to ease reproduction * Bug present on 2.30 and 2.34 *Resolution:* Maybe _StopRunnable::run_ should wait until _queue.getDeliveringCount() == 0_ after removing consumer but before going further in the stop process > CoreBridge: Duplicate message when bridge is stopped while messages being > consumed by target node > - > > Key: ARTEMIS-4794 > URL: https://issues.apache.org/jira/browse/ARTEMIS-4794 > Project: ActiveMQ Artemis > Issue Type: Bug > Components: Clustering >Affects Versions: 2.30.0, 2.34.0 >Reporter: nmeylan >Priority: Major > Attachments: BridgeDuplicateMessagesARTEMIS4794Test.java > > > +Attached test *BridgeDuplicateMessagesARTEMIS4794Test.java* **+ highlights > the issue with+ > org.apache.activemq.artemis.core.server.cluster.impl.BridgeImpl > Place it under > _tests/integration-tests/src/test/java/org/apache/activemq/artemis/tests/integration/cluster/bridge_ > {*}Summary{*}: > When a bridge is stopped while messages being consumed by the target > node, it can lead to duplicate messages. > {*}Description{*}: > When Using bridge and programmatically *stopping* or *pausing* it while > messages are being consumed by the target node, the source node fails to get > the acknowledgement from target node and messages now exists on the source > and the target node. > It appears that the "active" flag being set to false when > BridgeImpl.StopRunnable is called prevent message to be acknowledged by > _BridgeImpl::sendAcknowledged_ function > {*}Context{*}: > This bug appear in my code because is start and stop Bridge programmatically > to move messages from one node to another when some conditions are met, if > they are no longer met I want to stop the moving of messages. > > *Not
[jira] [Updated] (ARTEMIS-4794) CoreBridge: Duplicate message when bridge is stopped while messages being consumed by target node
[ https://issues.apache.org/jira/browse/ARTEMIS-4794?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] nmeylan updated ARTEMIS-4794: - Description: +Attached test *BridgeDuplicateMessagesARTEMIS4794Test.java* **+ highlights the issue with+ org.apache.activemq.artemis.core.server.cluster.impl.BridgeImpl Place it under _tests/integration-tests/src/test/java/org/apache/activemq/artemis/tests/integration/cluster/bridge_ {*}Summary{*}: When a bridge is stopped while messages being consumed by the target node, it can lead to duplicate messages. {*}Description{*}: When Using bridge and programmatically *stopping* or *pausing* it while messages are being consumed by the target node, the source node fails to get the acknowledgement from target node and messages now exists on the source and the target node. It appears that the "active" flag being set to false when BridgeImpl.StopRunnable is called prevent message to be acknowledged by _BridgeImpl::sendAcknowledged_ function {*}Context{*}: This bug appear in my code because is start and stop Bridge programmatically to move messages from one node to another when some conditions are met, if they are no longer met I want to stop the moving of messages. *Notes:* * Changing bridge configuration {_}useDuplicateDetection{_},{_}confirmationWindowSize{_} or _producerWindowSize_ parameter do not help to mitigate the issue * Not related to large messages, i use large messages in my test to ease reproduction * Bug present on 2.30 and 2.34 *Resolution:* Maybe _StopRunnable::run_ should wait until _queue.getDeliveringCount() == 0_ after removing consumer but before going further in the stop process was: +Attached test *BridgeDuplicateMessagesARTEMIS4794Test.java* **+ highlights the issue with+ org.apache.activemq.artemis.core.server.cluster.impl.BridgeImpl Place it under _tests/integration-tests/src/test/java/org/apache/activemq/artemis/tests/integration/cluster/bridge_ {*}Summary{*}: When a bridge is stopped while messages being consumed by the target node, it can lead to duplicate messages. {*}Description{*}: When Using bridge and programmatically *stopping* or *pausing* it while messages are being consumed by the target node, the source node fails to get the acknowledgement from target node and messages now exists on the source and the target node. It appears that the "active" flag being set to false when BridgeImpl.StopRunnable is called prevent message to be acknowledged by _BridgeImpl::sendAcknowledged_ function {*}Context{*}: This bug appear in my code because is start and stop Bridge programmatically to move messages from one node to another when some conditions are met, if they are no longer met I want to stop the moving of messages. *Notes:* * Changing bridge configuration {_}useDuplicateDetection{_},{_}confirmationWindowSize{_} or _producerWindowSize_ parameter do not help to mitigate the issue * Not related to large messages, i use large messages in my test to ease reproduction * Bug present on 2.30 and 2.34 *Resolution:* Maybe _StopRunnable::run_ should wait until _queue.getDeliveringCount() == 0_ after removing consumer but before going further in the stop process > CoreBridge: Duplicate message when bridge is stopped while messages being > consumed by target node > - > > Key: ARTEMIS-4794 > URL: https://issues.apache.org/jira/browse/ARTEMIS-4794 > Project: ActiveMQ Artemis > Issue Type: Bug > Components: Clustering >Affects Versions: 2.30.0, 2.34.0 >Reporter: nmeylan >Priority: Major > Attachments: BridgeDuplicateMessagesARTEMIS4794Test.java > > > +Attached test *BridgeDuplicateMessagesARTEMIS4794Test.java* **+ highlights > the issue with+ > org.apache.activemq.artemis.core.server.cluster.impl.BridgeImpl > Place it under > _tests/integration-tests/src/test/java/org/apache/activemq/artemis/tests/integration/cluster/bridge_ > {*}Summary{*}: > When a bridge is stopped while messages being consumed by the target > node, it can lead to duplicate messages. > {*}Description{*}: > When Using bridge and programmatically *stopping* or *pausing* it while > messages are being consumed by the target node, the source node fails to get > the acknowledgement from target node and messages now exists on the source > and the target node. > It appears that the "active" flag being set to false when > BridgeImpl.StopRunnable is called prevent message to be acknowledged by > _BridgeImpl::sendAcknowledged_ function > > {*}Context{*}: > This bug appear in my code because is start and stop Bridge programmatically > to move messages from one node to another when some conditions are met, if > they are no longer met I want to stop the moving of mess
[jira] [Updated] (ARTEMIS-4794) CoreBridge: Duplicate message when bridge is stopped while messages being consumed by target node
[ https://issues.apache.org/jira/browse/ARTEMIS-4794?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] nmeylan updated ARTEMIS-4794: - Summary: CoreBridge: Duplicate message when bridge is stopped while messages being consumed by target node (was: CoreBridge: Duplicate message when bridge is stopped while messages being consumed) > CoreBridge: Duplicate message when bridge is stopped while messages being > consumed by target node > - > > Key: ARTEMIS-4794 > URL: https://issues.apache.org/jira/browse/ARTEMIS-4794 > Project: ActiveMQ Artemis > Issue Type: Bug > Components: Clustering >Affects Versions: 2.30.0, 2.34.0 >Reporter: nmeylan >Priority: Major > Attachments: BridgeDuplicateMessagesARTEMIS4794Test.java > > > +Attached test +{*}BridgeDuplicateMessageBugTest.java{*}+ highlights the > issue with+ org.apache.activemq.artemis.core.server.cluster.impl.BridgeImpl > Place it under > _tests/integration-tests/src/test/java/org/apache/activemq/artemis/tests/integration/cluster/bridge_ > {*}Summary{*}: > When a bridge is stopped while messages being consumed by the target > node, it can lead to duplicate messages. > {*}Description{*}: > When Using bridge and programmatically *stopping* or *pausing* it while > messages are being consumed by the target node, the source node fails to get > the acknowledgement from target node and messages now exists on the source > and the target node. > It appears that the "active" flag being set to false when > BridgeImpl.StopRunnable is called prevent message to be acknowledged by > _BridgeImpl::sendAcknowledged_ function > {*}Context{*}: > This bug appear in my code because is start and stop Bridge programmatically > to move messages from one node to another when some conditions are met, if > they are no longer met I want to stop the moving of messages. > > *Notes:* > * Changing bridge configuration > {_}useDuplicateDetection{_},{_}confirmationWindowSize{_} or > _producerWindowSize_ parameter do not help to mitigate the issue > * Not related to large messages, i use large messages in my test to ease > reproduction > * Bug present on 2.30 and 2.34 > > *Resolution:* > Maybe _StopRunnable::run_ should wait until _queue.getDeliveringCount() == 0_ > after removing consumer but before going further in the stop process -- This message was sent by Atlassian Jira (v8.20.10#820010) - To unsubscribe, e-mail: issues-unsubscr...@activemq.apache.org For additional commands, e-mail: issues-h...@activemq.apache.org For further information, visit: https://activemq.apache.org/contact
[jira] [Updated] (ARTEMIS-4794) CoreBridge: Duplicate message when bridge is stopped while messages being consumed
[ https://issues.apache.org/jira/browse/ARTEMIS-4794?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] nmeylan updated ARTEMIS-4794: - Description: +Attached test +{*}BridgeDuplicateMessageBugTest.java{*}+ highlights the issue with+ org.apache.activemq.artemis.core.server.cluster.impl.BridgeImpl Place it under _tests/integration-tests/src/test/java/org/apache/activemq/artemis/tests/integration/cluster/bridge_ {*}Summary{*}: When a bridge is stopped while messages being consumed by the target node, it can lead to duplicate messages. {*}Description{*}: When Using bridge and programmatically *stopping* or *pausing* it while messages are being consumed by the target node, the source node fails to get the acknowledgement from target node and messages now exists on the source and the target node. It appears that the "active" flag being set to false when BridgeImpl.StopRunnable is called prevent message to be acknowledged by _BridgeImpl::sendAcknowledged_ function {*}Context{*}: This bug appear in my code because is start and stop Bridge programmatically to move messages from one node to another when some conditions are met, if they are no longer met I want to stop the moving of messages. *Notes:* * Changing bridge configuration {_}useDuplicateDetection{_},{_}confirmationWindowSize{_} or _producerWindowSize_ parameter do not help to mitigate the issue * Not related to large messages, i use large messages in my tests to ease reproduction * Bug present on 2.30 and 2.34 *Resolution:* Maybe _StopRunnable::run_ should wait until _queue.getDeliveringCount() == 0_ after removing consumer but before going further in the stop process was: +Attached test +*BridgeDuplicateMessageBugTest.java*+ highlights the issue with+ org.apache.activemq.artemis.core.server.cluster.impl.BridgeImpl Place it under _tests/integration-tests/src/test/java/org/apache/activemq/artemis/tests/integration/cluster/bridge_ {*}Summary{*}: When a bridge is stopped while messages being consumed by the target node, it can lead to duplicate messages. {*}Description{*}: When Using bridge and programmatically *stopping* or *pausing* it while messages are being consumed by the target node, the source node fails to get the acknowledgement from target node and messages now exists on the source and the target node. It appears that the "active" flag being set to false when BridgeImpl.StopRunnable is called prevent message to be acknowledged by _BridgeImpl::sendAcknowledged_ function {*}Context{*}: This bug appear in my code because is start and stop Bridge programmatically to move messages from one node to another when some conditions are met, if they are no longer met I want to stop the moving of messages. *Notes:* * Changing bridge configuration {_}useDuplicateDetection{_},{_}confirmationWindowSize{_} or _producerWindowSize_ parameter do not help to mitigate the issue * Bug present on 2.30 and 2.34 *Resolution:* Maybe _StopRunnable::run_ should wait until _queue.getDeliveringCount() == 0_ after removing consumer but before going further in the stop process > CoreBridge: Duplicate message when bridge is stopped while messages being > consumed > -- > > Key: ARTEMIS-4794 > URL: https://issues.apache.org/jira/browse/ARTEMIS-4794 > Project: ActiveMQ Artemis > Issue Type: Bug > Components: Clustering >Affects Versions: 2.30.0, 2.34.0 >Reporter: nmeylan >Priority: Major > Attachments: BridgeDuplicateMessagesARTEMIS4794Test.java > > > +Attached test +{*}BridgeDuplicateMessageBugTest.java{*}+ highlights the > issue with+ org.apache.activemq.artemis.core.server.cluster.impl.BridgeImpl > Place it under > _tests/integration-tests/src/test/java/org/apache/activemq/artemis/tests/integration/cluster/bridge_ > {*}Summary{*}: > When a bridge is stopped while messages being consumed by the target > node, it can lead to duplicate messages. > {*}Description{*}: > When Using bridge and programmatically *stopping* or *pausing* it while > messages are being consumed by the target node, the source node fails to get > the acknowledgement from target node and messages now exists on the source > and the target node. > It appears that the "active" flag being set to false when > BridgeImpl.StopRunnable is called prevent message to be acknowledged by > _BridgeImpl::sendAcknowledged_ function > {*}Context{*}: > This bug appear in my code because is start and stop Bridge programmatically > to move messages from one node to another when some conditions are met, if > they are no longer met I want to stop the moving of messages. > > *Notes:* > * Changing bridge configuration > {_}useDuplicateDetection{_},{_}confirmationWindowSize{_} or > _producerWindowSize_ parameter do
[jira] [Updated] (ARTEMIS-4794) CoreBridge: Duplicate message when bridge is stopped while messages being consumed
[ https://issues.apache.org/jira/browse/ARTEMIS-4794?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] nmeylan updated ARTEMIS-4794: - Description: +Attached test +{*}BridgeDuplicateMessageBugTest.java{*}+ highlights the issue with+ org.apache.activemq.artemis.core.server.cluster.impl.BridgeImpl Place it under _tests/integration-tests/src/test/java/org/apache/activemq/artemis/tests/integration/cluster/bridge_ {*}Summary{*}: When a bridge is stopped while messages being consumed by the target node, it can lead to duplicate messages. {*}Description{*}: When Using bridge and programmatically *stopping* or *pausing* it while messages are being consumed by the target node, the source node fails to get the acknowledgement from target node and messages now exists on the source and the target node. It appears that the "active" flag being set to false when BridgeImpl.StopRunnable is called prevent message to be acknowledged by _BridgeImpl::sendAcknowledged_ function {*}Context{*}: This bug appear in my code because is start and stop Bridge programmatically to move messages from one node to another when some conditions are met, if they are no longer met I want to stop the moving of messages. *Notes:* * Changing bridge configuration {_}useDuplicateDetection{_},{_}confirmationWindowSize{_} or _producerWindowSize_ parameter do not help to mitigate the issue * Not related to large messages, i use large messages in my test to ease reproduction * Bug present on 2.30 and 2.34 *Resolution:* Maybe _StopRunnable::run_ should wait until _queue.getDeliveringCount() == 0_ after removing consumer but before going further in the stop process was: +Attached test +{*}BridgeDuplicateMessageBugTest.java{*}+ highlights the issue with+ org.apache.activemq.artemis.core.server.cluster.impl.BridgeImpl Place it under _tests/integration-tests/src/test/java/org/apache/activemq/artemis/tests/integration/cluster/bridge_ {*}Summary{*}: When a bridge is stopped while messages being consumed by the target node, it can lead to duplicate messages. {*}Description{*}: When Using bridge and programmatically *stopping* or *pausing* it while messages are being consumed by the target node, the source node fails to get the acknowledgement from target node and messages now exists on the source and the target node. It appears that the "active" flag being set to false when BridgeImpl.StopRunnable is called prevent message to be acknowledged by _BridgeImpl::sendAcknowledged_ function {*}Context{*}: This bug appear in my code because is start and stop Bridge programmatically to move messages from one node to another when some conditions are met, if they are no longer met I want to stop the moving of messages. *Notes:* * Changing bridge configuration {_}useDuplicateDetection{_},{_}confirmationWindowSize{_} or _producerWindowSize_ parameter do not help to mitigate the issue * Not related to large messages, i use large messages in my tests to ease reproduction * Bug present on 2.30 and 2.34 *Resolution:* Maybe _StopRunnable::run_ should wait until _queue.getDeliveringCount() == 0_ after removing consumer but before going further in the stop process > CoreBridge: Duplicate message when bridge is stopped while messages being > consumed > -- > > Key: ARTEMIS-4794 > URL: https://issues.apache.org/jira/browse/ARTEMIS-4794 > Project: ActiveMQ Artemis > Issue Type: Bug > Components: Clustering >Affects Versions: 2.30.0, 2.34.0 >Reporter: nmeylan >Priority: Major > Attachments: BridgeDuplicateMessagesARTEMIS4794Test.java > > > +Attached test +{*}BridgeDuplicateMessageBugTest.java{*}+ highlights the > issue with+ org.apache.activemq.artemis.core.server.cluster.impl.BridgeImpl > Place it under > _tests/integration-tests/src/test/java/org/apache/activemq/artemis/tests/integration/cluster/bridge_ > {*}Summary{*}: > When a bridge is stopped while messages being consumed by the target > node, it can lead to duplicate messages. > {*}Description{*}: > When Using bridge and programmatically *stopping* or *pausing* it while > messages are being consumed by the target node, the source node fails to get > the acknowledgement from target node and messages now exists on the source > and the target node. > It appears that the "active" flag being set to false when > BridgeImpl.StopRunnable is called prevent message to be acknowledged by > _BridgeImpl::sendAcknowledged_ function > {*}Context{*}: > This bug appear in my code because is start and stop Bridge programmatically > to move messages from one node to another when some conditions are met, if > they are no longer met I want to stop the moving of messages. > > *Notes:* > * Changing bridge configuration > {_}
[jira] [Updated] (ARTEMIS-4794) CoreBridge: Duplicate message when bridge is stopped while messages being consumed
[ https://issues.apache.org/jira/browse/ARTEMIS-4794?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] nmeylan updated ARTEMIS-4794: - Attachment: BridgeDuplicateMessagesARTEMIS4794Test.java > CoreBridge: Duplicate message when bridge is stopped while messages being > consumed > -- > > Key: ARTEMIS-4794 > URL: https://issues.apache.org/jira/browse/ARTEMIS-4794 > Project: ActiveMQ Artemis > Issue Type: Bug > Components: Clustering >Affects Versions: 2.30.0, 2.34.0 >Reporter: nmeylan >Priority: Major > Attachments: BridgeDuplicateMessagesARTEMIS4794Test.java > > > +Attached test highlight the issue with *BridgeDuplicateMessageBugTest.java*+ > org.apache.activemq.artemis.core.server.cluster.impl.BridgeImpl > Place it under > _tests/integration-tests/src/test/java/org/apache/activemq/artemis/tests/integration/cluster/bridge_ > {*}Summary{*}: > When a bridge is stopped while messages being consumed by the target > node, it can lead to duplicate messages. > {*}Description{*}: > When Using bridge and programmatically *stopping* or *pausing* it while > messages are being consumed by the target node, the source node fails to get > the acknowledgement from target node and messages now exists on the source > and the target node. > It appears that the "active" flag being set to false when > BridgeImpl.StopRunnable is called prevent message to be acknowledged by > _BridgeImpl::sendAcknowledged_ function > {*}Context{*}: > This bug appear in my code because is start and stop Bridge programmatically > to move messages from one node to another when some conditions are met, if > they are no longer met I want to stop the moving of messages. > > *Notes:* > * Changing bridge configuration > {_}useDuplicateDetection{_},{_}confirmationWindowSize{_} or > _producerWindowSize_ parameter do not help to mitigate the issue > * Bug present on 2.30 and 2.34 > > *Resolution:* > Maybe _StopRunnable::run_ should wait until _queue.getDeliveringCount() == 0_ > after removing consumer but before going further in the stop process -- This message was sent by Atlassian Jira (v8.20.10#820010) - To unsubscribe, e-mail: issues-unsubscr...@activemq.apache.org For additional commands, e-mail: issues-h...@activemq.apache.org For further information, visit: https://activemq.apache.org/contact
[jira] [Updated] (ARTEMIS-4794) CoreBridge: Duplicate message when bridge is stopped while messages being consumed
[ https://issues.apache.org/jira/browse/ARTEMIS-4794?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] nmeylan updated ARTEMIS-4794: - Attachment: (was: BridgeDuplicateMessageBugTest.java) > CoreBridge: Duplicate message when bridge is stopped while messages being > consumed > -- > > Key: ARTEMIS-4794 > URL: https://issues.apache.org/jira/browse/ARTEMIS-4794 > Project: ActiveMQ Artemis > Issue Type: Bug > Components: Clustering >Affects Versions: 2.30.0, 2.34.0 >Reporter: nmeylan >Priority: Major > Attachments: BridgeDuplicateMessagesARTEMIS4794Test.java > > > +Attached test highlight the issue with *BridgeDuplicateMessageBugTest.java*+ > org.apache.activemq.artemis.core.server.cluster.impl.BridgeImpl > Place it under > _tests/integration-tests/src/test/java/org/apache/activemq/artemis/tests/integration/cluster/bridge_ > {*}Summary{*}: > When a bridge is stopped while messages being consumed by the target > node, it can lead to duplicate messages. > {*}Description{*}: > When Using bridge and programmatically *stopping* or *pausing* it while > messages are being consumed by the target node, the source node fails to get > the acknowledgement from target node and messages now exists on the source > and the target node. > It appears that the "active" flag being set to false when > BridgeImpl.StopRunnable is called prevent message to be acknowledged by > _BridgeImpl::sendAcknowledged_ function > {*}Context{*}: > This bug appear in my code because is start and stop Bridge programmatically > to move messages from one node to another when some conditions are met, if > they are no longer met I want to stop the moving of messages. > > *Notes:* > * Changing bridge configuration > {_}useDuplicateDetection{_},{_}confirmationWindowSize{_} or > _producerWindowSize_ parameter do not help to mitigate the issue > * Bug present on 2.30 and 2.34 > > *Resolution:* > Maybe _StopRunnable::run_ should wait until _queue.getDeliveringCount() == 0_ > after removing consumer but before going further in the stop process -- This message was sent by Atlassian Jira (v8.20.10#820010) - To unsubscribe, e-mail: issues-unsubscr...@activemq.apache.org For additional commands, e-mail: issues-h...@activemq.apache.org For further information, visit: https://activemq.apache.org/contact
[jira] [Updated] (ARTEMIS-4794) CoreBridge: Duplicate message when bridge is stopped while messages being consumed
[ https://issues.apache.org/jira/browse/ARTEMIS-4794?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] nmeylan updated ARTEMIS-4794: - Description: +Attached test +*BridgeDuplicateMessageBugTest.java*+ highlights the issue with+ org.apache.activemq.artemis.core.server.cluster.impl.BridgeImpl Place it under _tests/integration-tests/src/test/java/org/apache/activemq/artemis/tests/integration/cluster/bridge_ {*}Summary{*}: When a bridge is stopped while messages being consumed by the target node, it can lead to duplicate messages. {*}Description{*}: When Using bridge and programmatically *stopping* or *pausing* it while messages are being consumed by the target node, the source node fails to get the acknowledgement from target node and messages now exists on the source and the target node. It appears that the "active" flag being set to false when BridgeImpl.StopRunnable is called prevent message to be acknowledged by _BridgeImpl::sendAcknowledged_ function {*}Context{*}: This bug appear in my code because is start and stop Bridge programmatically to move messages from one node to another when some conditions are met, if they are no longer met I want to stop the moving of messages. *Notes:* * Changing bridge configuration {_}useDuplicateDetection{_},{_}confirmationWindowSize{_} or _producerWindowSize_ parameter do not help to mitigate the issue * Bug present on 2.30 and 2.34 *Resolution:* Maybe _StopRunnable::run_ should wait until _queue.getDeliveringCount() == 0_ after removing consumer but before going further in the stop process was: +Attached test highlight the issue with *BridgeDuplicateMessageBugTest.java*+ org.apache.activemq.artemis.core.server.cluster.impl.BridgeImpl Place it under _tests/integration-tests/src/test/java/org/apache/activemq/artemis/tests/integration/cluster/bridge_ {*}Summary{*}: When a bridge is stopped while messages being consumed by the target node, it can lead to duplicate messages. {*}Description{*}: When Using bridge and programmatically *stopping* or *pausing* it while messages are being consumed by the target node, the source node fails to get the acknowledgement from target node and messages now exists on the source and the target node. It appears that the "active" flag being set to false when BridgeImpl.StopRunnable is called prevent message to be acknowledged by _BridgeImpl::sendAcknowledged_ function {*}Context{*}: This bug appear in my code because is start and stop Bridge programmatically to move messages from one node to another when some conditions are met, if they are no longer met I want to stop the moving of messages. *Notes:* * Changing bridge configuration {_}useDuplicateDetection{_},{_}confirmationWindowSize{_} or _producerWindowSize_ parameter do not help to mitigate the issue * Bug present on 2.30 and 2.34 *Resolution:* Maybe _StopRunnable::run_ should wait until _queue.getDeliveringCount() == 0_ after removing consumer but before going further in the stop process > CoreBridge: Duplicate message when bridge is stopped while messages being > consumed > -- > > Key: ARTEMIS-4794 > URL: https://issues.apache.org/jira/browse/ARTEMIS-4794 > Project: ActiveMQ Artemis > Issue Type: Bug > Components: Clustering >Affects Versions: 2.30.0, 2.34.0 >Reporter: nmeylan >Priority: Major > Attachments: BridgeDuplicateMessagesARTEMIS4794Test.java > > > +Attached test +*BridgeDuplicateMessageBugTest.java*+ highlights the issue > with+ org.apache.activemq.artemis.core.server.cluster.impl.BridgeImpl > Place it under > _tests/integration-tests/src/test/java/org/apache/activemq/artemis/tests/integration/cluster/bridge_ > {*}Summary{*}: > When a bridge is stopped while messages being consumed by the target > node, it can lead to duplicate messages. > {*}Description{*}: > When Using bridge and programmatically *stopping* or *pausing* it while > messages are being consumed by the target node, the source node fails to get > the acknowledgement from target node and messages now exists on the source > and the target node. > It appears that the "active" flag being set to false when > BridgeImpl.StopRunnable is called prevent message to be acknowledged by > _BridgeImpl::sendAcknowledged_ function > {*}Context{*}: > This bug appear in my code because is start and stop Bridge programmatically > to move messages from one node to another when some conditions are met, if > they are no longer met I want to stop the moving of messages. > > *Notes:* > * Changing bridge configuration > {_}useDuplicateDetection{_},{_}confirmationWindowSize{_} or > _producerWindowSize_ parameter do not help to mitigate the issue > * Bug present on 2.30 and 2.34 > > *Resolution:* > Maybe _StopRu
[jira] [Updated] (ARTEMIS-4794) CoreBridge: Duplicate message when bridge is stopped while messages being consumed
[ https://issues.apache.org/jira/browse/ARTEMIS-4794?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] nmeylan updated ARTEMIS-4794: - Attachment: BridgeDuplicateMessageBugTest.java > CoreBridge: Duplicate message when bridge is stopped while messages being > consumed > -- > > Key: ARTEMIS-4794 > URL: https://issues.apache.org/jira/browse/ARTEMIS-4794 > Project: ActiveMQ Artemis > Issue Type: Bug > Components: Clustering >Affects Versions: 2.30.0, 2.34.0 >Reporter: nmeylan >Priority: Major > Attachments: BridgeDuplicateMessageBugTest.java > > > +Attached test highlight the issue with *BridgeDuplicateMessageBugTest.java*+ > org.apache.activemq.artemis.core.server.cluster.impl.BridgeImpl > Place it under > _tests/integration-tests/src/test/java/org/apache/activemq/artemis/tests/integration/cluster/bridge_ > {*}Summary{*}: > When a bridge is stopped while messages being consumed by the target > node, it can lead to duplicate messages. > {*}Description{*}: > When Using bridge and programmatically *stopping* or *pausing* it while > messages are being consumed by the target node, the source node fails to get > the acknowledgement from target node and messages now exists on the source > and the target node. > It appears that the "active" flag being set to false when > BridgeImpl.StopRunnable is called prevent message to be acknowledged by > _BridgeImpl::sendAcknowledged_ function > {*}Context{*}: > This bug appear in my code because is start and stop Bridge programmatically > to move messages from one node to another when some conditions are met, if > they are no longer met I want to stop the moving of messages. > > *Notes:* > * Changing bridge configuration > {_}useDuplicateDetection{_},{_}confirmationWindowSize{_} or > _producerWindowSize_ parameter do not help to mitigate the issue > * Bug present on 2.30 and 2.34 > > *Resolution:* > Maybe _StopRunnable::run_ should wait until _queue.getDeliveringCount() == 0_ > after removing consumer but before going further in the stop process -- This message was sent by Atlassian Jira (v8.20.10#820010) - To unsubscribe, e-mail: issues-unsubscr...@activemq.apache.org For additional commands, e-mail: issues-h...@activemq.apache.org For further information, visit: https://activemq.apache.org/contact
[jira] [Updated] (ARTEMIS-4794) CoreBridge: Duplicate message when bridge is stopped while messages being consumed
[ https://issues.apache.org/jira/browse/ARTEMIS-4794?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] nmeylan updated ARTEMIS-4794: - Attachment: (was: BridgeDuplicateMessageBugTest.java) > CoreBridge: Duplicate message when bridge is stopped while messages being > consumed > -- > > Key: ARTEMIS-4794 > URL: https://issues.apache.org/jira/browse/ARTEMIS-4794 > Project: ActiveMQ Artemis > Issue Type: Bug > Components: Clustering >Affects Versions: 2.30.0, 2.34.0 >Reporter: nmeylan >Priority: Major > Attachments: BridgeDuplicateMessageBugTest.java > > > +Attached test highlight the issue with *BridgeDuplicateMessageBugTest.java*+ > org.apache.activemq.artemis.core.server.cluster.impl.BridgeImpl > Place it under > _tests/integration-tests/src/test/java/org/apache/activemq/artemis/tests/integration/cluster/bridge_ > {*}Summary{*}: > When a bridge is stopped while messages being consumed by the target > node, it can lead to duplicate messages. > {*}Description{*}: > When Using bridge and programmatically *stopping* or *pausing* it while > messages are being consumed by the target node, the source node fails to get > the acknowledgement from target node and messages now exists on the source > and the target node. > It appears that the "active" flag being set to false when > BridgeImpl.StopRunnable is called prevent message to be acknowledged by > _BridgeImpl::sendAcknowledged_ function > {*}Context{*}: > This bug appear in my code because is start and stop Bridge programmatically > to move messages from one node to another when some conditions are met, if > they are no longer met I want to stop the moving of messages. > > *Notes:* > * Changing bridge configuration > {_}useDuplicateDetection{_},{_}confirmationWindowSize{_} or > _producerWindowSize_ parameter do not help to mitigate the issue > * Bug present on 2.30 and 2.34 > > *Resolution:* > Maybe _StopRunnable::run_ should wait until _queue.getDeliveringCount() == 0_ > after removing consumer but before going further in the stop process -- This message was sent by Atlassian Jira (v8.20.10#820010) - To unsubscribe, e-mail: issues-unsubscr...@activemq.apache.org For additional commands, e-mail: issues-h...@activemq.apache.org For further information, visit: https://activemq.apache.org/contact
[jira] [Created] (ARTEMIS-4794) CoreBridge: Duplicate message when bridge is stopped while messages being consumed
nmeylan created ARTEMIS-4794: Summary: CoreBridge: Duplicate message when bridge is stopped while messages being consumed Key: ARTEMIS-4794 URL: https://issues.apache.org/jira/browse/ARTEMIS-4794 Project: ActiveMQ Artemis Issue Type: Bug Components: Clustering Affects Versions: 2.30.0, 2.34.0 Reporter: nmeylan Attachments: BridgeDuplicateMessageBugTest.java +Attached test highlight the issue with *BridgeDuplicateMessageBugTest.java*+ org.apache.activemq.artemis.core.server.cluster.impl.BridgeImpl Place it under _tests/integration-tests/src/test/java/org/apache/activemq/artemis/tests/integration/cluster/bridge_ {*}Summary{*}: When a bridge is stopped while messages being consumed by the target node, it can lead to duplicate messages. {*}Description{*}: When Using bridge and programmatically *stopping* or *pausing* it while messages are being consumed by the target node, the source node fails to get the acknowledgement from target node and messages now exists on the source and the target node. It appears that the "active" flag being set to false when BridgeImpl.StopRunnable is called prevent message to be acknowledged by _BridgeImpl::sendAcknowledged_ function {*}Context{*}: This bug appear in my code because is start and stop Bridge programmatically to move messages from one node to another when some conditions are met, if they are no longer met I want to stop the moving of messages. *Notes:* * Changing bridge configuration {_}useDuplicateDetection{_},{_}confirmationWindowSize{_} or _producerWindowSize_ parameter do not help to mitigate the issue * Bug present on 2.30 and 2.34 *Resolution:* Maybe _StopRunnable::run_ should wait until _queue.getDeliveringCount() == 0_ after removing consumer but before going further in the stop process -- This message was sent by Atlassian Jira (v8.20.10#820010) - To unsubscribe, e-mail: issues-unsubscr...@activemq.apache.org For additional commands, e-mail: issues-h...@activemq.apache.org For further information, visit: https://activemq.apache.org/contact