[jira] [Commented] (ARTEMIS-4784) Large messages are being kept on the ReplicationEndpoint after they are closed.

2024-06-11 Thread ASF subversion and git services (Jira)


[ 
https://issues.apache.org/jira/browse/ARTEMIS-4784?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=17854241#comment-17854241
 ] 

ASF subversion and git services commented on ARTEMIS-4784:
--

Commit 4eb90765a7f2a6ca49664097cad7651cbc3e5439 in activemq-artemis's branch 
refs/heads/main from Clebert Suconic
[ https://gitbox.apache.org/repos/asf?p=activemq-artemis.git;h=4eb90765a7 ]

ARTEMIS-4813 Large Message in replication / sync could lose part of the body

This is a regressio after ARTEMIS-4784


> Large messages are being kept on the ReplicationEndpoint after they are 
> closed.
> ---
>
> Key: ARTEMIS-4784
> URL: https://issues.apache.org/jira/browse/ARTEMIS-4784
> Project: ActiveMQ Artemis
>  Issue Type: Bug
>Reporter: Clebert Suconic
>Assignee: Clebert Suconic
>Priority: Major
> Fix For: 2.34.0
>
>  Time Spent: 20m
>  Remaining Estimate: 0h
>
> The entries for these large messages need to be removed as soon as the file 
> is closed:
> https://github.com/apache/activemq-artemis/blob/49189cd7e63a64fcda947dbd72fd7849348b71c9/artemis-server/src/main/java/org/apache/activemq/artemis/core/replication/ReplicationEndpoint.java#L134
> When a remove is needed a new object should be created instead of keeping the 
> hash longer.



--
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] [Commented] (ARTEMIS-4813) LargeMessages could lose a body while in sync if backup becomes activated

2024-06-11 Thread ASF subversion and git services (Jira)


[ 
https://issues.apache.org/jira/browse/ARTEMIS-4813?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=17854240#comment-17854240
 ] 

ASF subversion and git services commented on ARTEMIS-4813:
--

Commit 4eb90765a7f2a6ca49664097cad7651cbc3e5439 in activemq-artemis's branch 
refs/heads/main from Clebert Suconic
[ https://gitbox.apache.org/repos/asf?p=activemq-artemis.git;h=4eb90765a7 ]

ARTEMIS-4813 Large Message in replication / sync could lose part of the body

This is a regressio after ARTEMIS-4784


> LargeMessages could lose a body while in sync if backup becomes activated
> -
>
> Key: ARTEMIS-4813
> URL: https://issues.apache.org/jira/browse/ARTEMIS-4813
> Project: ActiveMQ Artemis
>  Issue Type: Bug
>Affects Versions: 2.34.0
>Reporter: Clebert Suconic
>Assignee: Clebert Suconic
>Priority: Major
> Fix For: 2.35.0
>
>  Time Spent: 20m
>  Remaining Estimate: 0h
>
> This is a regression because of ARTEMIS-4784
> If a large message is received while synchronization still happening, and if 
> the backup becomes online right away you may lose partial of the large 
> message.
> testBackupStartsWhenPrimaryIsREceivingLargeMessage is failing because of this.



--
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] [Work logged] (ARTEMIS-4813) LargeMessages could lose a body while in sync if backup becomes activated

2024-06-11 Thread ASF GitHub Bot (Jira)


 [ 
https://issues.apache.org/jira/browse/ARTEMIS-4813?focusedWorklogId=923081=com.atlassian.jira.plugin.system.issuetabpanels:worklog-tabpanel#worklog-923081
 ]

ASF GitHub Bot logged work on ARTEMIS-4813:
---

Author: ASF GitHub Bot
Created on: 12/Jun/24 04:31
Start Date: 12/Jun/24 04:31
Worklog Time Spent: 10m 
  Work Description: clebertsuconic merged PR #4971:
URL: https://github.com/apache/activemq-artemis/pull/4971




Issue Time Tracking
---

Worklog Id: (was: 923081)
Time Spent: 20m  (was: 10m)

> LargeMessages could lose a body while in sync if backup becomes activated
> -
>
> Key: ARTEMIS-4813
> URL: https://issues.apache.org/jira/browse/ARTEMIS-4813
> Project: ActiveMQ Artemis
>  Issue Type: Bug
>Affects Versions: 2.34.0
>Reporter: Clebert Suconic
>Assignee: Clebert Suconic
>Priority: Major
> Fix For: 2.35.0
>
>  Time Spent: 20m
>  Remaining Estimate: 0h
>
> This is a regression because of ARTEMIS-4784
> If a large message is received while synchronization still happening, and if 
> the backup becomes online right away you may lose partial of the large 
> message.
> testBackupStartsWhenPrimaryIsREceivingLargeMessage is failing because of this.



--
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] [Work logged] (ARTEMIS-4780) Artemis web console does not ever set 'artemisJmxDomain' in localStorage

2024-06-11 Thread ASF GitHub Bot (Jira)


 [ 
https://issues.apache.org/jira/browse/ARTEMIS-4780?focusedWorklogId=923066=com.atlassian.jira.plugin.system.issuetabpanels:worklog-tabpanel#worklog-923066
 ]

ASF GitHub Bot logged work on ARTEMIS-4780:
---

Author: ASF GitHub Bot
Created on: 12/Jun/24 03:18
Start Date: 12/Jun/24 03:18
Worklog Time Spent: 10m 
  Work Description: joshb1050 commented on PR #18:
URL: 
https://github.com/apache/activemq-artemis-console/pull/18#issuecomment-2162027006

   @andytaylor Up to you—whichever makes most sense. Thanks for tackling!




Issue Time Tracking
---

Worklog Id: (was: 923066)
Time Spent: 1h 20m  (was: 1h 10m)

> Artemis web console does not ever set 'artemisJmxDomain' in localStorage
> 
>
> Key: ARTEMIS-4780
> URL: https://issues.apache.org/jira/browse/ARTEMIS-4780
> Project: ActiveMQ Artemis
>  Issue Type: Bug
>Affects Versions: 2.32.0
>Reporter: Josh Byster
>Assignee: Andy Taylor
>Priority: Minor
>  Time Spent: 1h 20m
>  Remaining Estimate: 0h
>
> We relocate our artemis packages as part of our shading process. 
> I did set up:
> 
> {code:java}
> aActiveMQServer.getConfiguration().setJMXDomain("com.abc.shaded.org.apache.activemq.artemis");
> {code}
> However the web console does not show up. I noticed in the code it's because 
> we try to read in localStorage['artemisJmxDomain'] but never actually set it 
> as far as I can tell. Thus we always default to org.apache.activemq.artemis.
> Everything works properly when setting localStorage['artemisJmxDomain'] = 
> "com.abc.shaded.org.apache.activemq.artemis"



--
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] [Work logged] (ARTEMIS-4814) Remove linear iteration to get direct bindings

2024-06-11 Thread ASF GitHub Bot (Jira)


 [ 
https://issues.apache.org/jira/browse/ARTEMIS-4814?focusedWorklogId=923065=com.atlassian.jira.plugin.system.issuetabpanels:worklog-tabpanel#worklog-923065
 ]

ASF GitHub Bot logged work on ARTEMIS-4814:
---

Author: ASF GitHub Bot
Created on: 12/Jun/24 03:14
Start Date: 12/Jun/24 03:14
Worklog Time Spent: 10m 
  Work Description: joshb1050 opened a new pull request, #4972:
URL: https://github.com/apache/activemq-artemis/pull/4972

   Currently, with 500K+ queues, the cleanup step of TempQueueCleanerUpper 
requires invoking WildcardAddressManager#getDirectBindings, which is O(k) in 
the number of queues.
   
   From method profiling, this can consume up to 95% of our CPU time when 
needing to clean up many of these.
   
   Add a new map to keep track of the direct bindings, and add a test assertion 
that fails if we don't properly remove it.




Issue Time Tracking
---

Worklog Id: (was: 923065)
Remaining Estimate: 0h
Time Spent: 10m

> Remove linear iteration to get direct bindings
> --
>
> Key: ARTEMIS-4814
> URL: https://issues.apache.org/jira/browse/ARTEMIS-4814
> Project: ActiveMQ Artemis
>  Issue Type: Task
>  Components: Broker
>Reporter: Josh Byster
>Priority: Minor
>  Time Spent: 10m
>  Remaining Estimate: 0h
>
> Currently, with 500K+ queues, the cleanup step of {{TempQueueCleanerUpper}} 
> requires invoking {{WildcardAddressManager#getDirectBindings}}, which is O(k) 
> in the number of queues.
> From method profiling, this can consume up to 95% of our CPU time when 
> needing to clean up many of these. 
> It would be nice to make this more efficient, which shouldn't be difficult 
> given the iteration just does a simple equality check.



--
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-4814) Remove linear iteration to get direct bindings

2024-06-11 Thread Josh Byster (Jira)


 [ 
https://issues.apache.org/jira/browse/ARTEMIS-4814?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Josh Byster updated ARTEMIS-4814:
-
Issue Type: Task  (was: New Feature)

> Remove linear iteration to get direct bindings
> --
>
> Key: ARTEMIS-4814
> URL: https://issues.apache.org/jira/browse/ARTEMIS-4814
> Project: ActiveMQ Artemis
>  Issue Type: Task
>  Components: Broker
>Reporter: Josh Byster
>Priority: Minor
>
> Currently, with 500K+ queues, the cleanup step of {{TempQueueCleanerUpper}} 
> requires invoking {{WildcardAddressManager#getDirectBindings}}, which is O(k) 
> in the number of queues.
> From method profiling, this can consume up to 95% of our CPU time when 
> needing to clean up many of these. 
> It would be nice to make this more efficient, which shouldn't be difficult 
> given the iteration just does a simple equality check.



--
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-4814) Remove linear iteration to get direct bindings

2024-06-11 Thread Josh Byster (Jira)
Josh Byster created ARTEMIS-4814:


 Summary: Remove linear iteration to get direct bindings
 Key: ARTEMIS-4814
 URL: https://issues.apache.org/jira/browse/ARTEMIS-4814
 Project: ActiveMQ Artemis
  Issue Type: New Feature
  Components: Broker
Reporter: Josh Byster


Currently, with 500K+ queues, the cleanup step of {{TempQueueCleanerUpper}} 
requires invoking {{WildcardAddressManager#getDirectBindings}}, which is O(k) 
in the number of queues.

>From method profiling, this can consume up to 95% of our CPU time when needing 
>to clean up many of these. 

It would be nice to make this more efficient, which shouldn't be difficult 
given the iteration just does a simple equality check.



--
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] [Work logged] (ARTEMIS-4809) Make intermediateMessageReferences initial capacity configurable

2024-06-11 Thread ASF GitHub Bot (Jira)


 [ 
https://issues.apache.org/jira/browse/ARTEMIS-4809?focusedWorklogId=923046=com.atlassian.jira.plugin.system.issuetabpanels:worklog-tabpanel#worklog-923046
 ]

ASF GitHub Bot logged work on ARTEMIS-4809:
---

Author: ASF GitHub Bot
Created on: 11/Jun/24 22:54
Start Date: 11/Jun/24 22:54
Worklog Time Spent: 10m 
  Work Description: joshb1050 commented on PR #4966:
URL: 
https://github.com/apache/activemq-artemis/pull/4966#issuecomment-2161730473

   @jbertram thank you—it's strange since I did run `mvn checkstyle:check` and 
`mvn -Pdev install` and both passed with the checkstyle error. It's also 
unclear given that `check` passed for 2 of the 3 failures. I have corrected the 
latest one that I see on CI though.




Issue Time Tracking
---

Worklog Id: (was: 923046)
Time Spent: 1h 50m  (was: 1h 40m)

> Make intermediateMessageReferences initial capacity configurable
> 
>
> Key: ARTEMIS-4809
> URL: https://issues.apache.org/jira/browse/ARTEMIS-4809
> Project: ActiveMQ Artemis
>  Issue Type: New Feature
>  Components: Broker
>Reporter: Josh Byster
>Priority: Minor
>  Time Spent: 1h 50m
>  Remaining Estimate: 0h
>
> In some setups, there could be a few hundred thousand queues that are created 
> due to many consumers that are connecting. However, most of these are empty 
> and stay empty for the entire day since there aren't necessarily messages to 
> be sent.
> The 8K {{intermediateMessageReferences}} instantiates an 64KB buffer 
> ({{Object[]}}). This means we have large allocation and live heap that 
> ultimately remains empty for almost the entire day.
> It would be quite nice if we could configure this initial size.



--
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] [Work logged] (ARTEMIS-4813) LargeMessages could lose a body while in sync if backup becomes activated

2024-06-11 Thread ASF GitHub Bot (Jira)


 [ 
https://issues.apache.org/jira/browse/ARTEMIS-4813?focusedWorklogId=923044=com.atlassian.jira.plugin.system.issuetabpanels:worklog-tabpanel#worklog-923044
 ]

ASF GitHub Bot logged work on ARTEMIS-4813:
---

Author: ASF GitHub Bot
Created on: 11/Jun/24 22:20
Start Date: 11/Jun/24 22:20
Worklog Time Spent: 10m 
  Work Description: clebertsuconic opened a new pull request, #4971:
URL: https://github.com/apache/activemq-artemis/pull/4971

   
   This is a regressio after ARTEMIS-4784




Issue Time Tracking
---

Worklog Id: (was: 923044)
Remaining Estimate: 0h
Time Spent: 10m

> LargeMessages could lose a body while in sync if backup becomes activated
> -
>
> Key: ARTEMIS-4813
> URL: https://issues.apache.org/jira/browse/ARTEMIS-4813
> Project: ActiveMQ Artemis
>  Issue Type: Bug
>Affects Versions: 2.34.0
>Reporter: Clebert Suconic
>Assignee: Clebert Suconic
>Priority: Major
> Fix For: 2.35.0
>
>  Time Spent: 10m
>  Remaining Estimate: 0h
>
> This is a regression because of ARTEMIS-4784
> If a large message is received while synchronization still happening, and if 
> the backup becomes online right away you may lose partial of the large 
> message.
> testBackupStartsWhenPrimaryIsREceivingLargeMessage is failing because of this.



--
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-4813) LargeMessages could lose a body while in sync if backup becomes activated

2024-06-11 Thread Clebert Suconic (Jira)
Clebert Suconic created ARTEMIS-4813:


 Summary: LargeMessages could lose a body while in sync if backup 
becomes activated
 Key: ARTEMIS-4813
 URL: https://issues.apache.org/jira/browse/ARTEMIS-4813
 Project: ActiveMQ Artemis
  Issue Type: Bug
Affects Versions: 2.34.0
Reporter: Clebert Suconic
Assignee: Clebert Suconic
 Fix For: 2.35.0


This is a regression because of ARTEMIS-4784

If a large message is received while synchronization still happening, and if 
the backup becomes online right away you may lose partial of the large message.

testBackupStartsWhenPrimaryIsREceivingLargeMessage is failing because of this.



--
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] [Work logged] (ARTEMIS-4809) Make intermediateMessageReferences initial capacity configurable

2024-06-11 Thread ASF GitHub Bot (Jira)


 [ 
https://issues.apache.org/jira/browse/ARTEMIS-4809?focusedWorklogId=923041=com.atlassian.jira.plugin.system.issuetabpanels:worklog-tabpanel#worklog-923041
 ]

ASF GitHub Bot logged work on ARTEMIS-4809:
---

Author: ASF GitHub Bot
Created on: 11/Jun/24 22:00
Start Date: 11/Jun/24 22:00
Worklog Time Spent: 10m 
  Work Description: jbertram commented on PR #4966:
URL: 
https://github.com/apache/activemq-artemis/pull/4966#issuecomment-2161671151

   For what it's worth you can run checkstyle locally using:
   ```
   mvn -Pdev install
   ```
   See the [hacking 
guide](https://activemq.apache.org/components/artemis/documentation/hacking-guide/#using-the-dev-profile)
 for more details.




Issue Time Tracking
---

Worklog Id: (was: 923041)
Time Spent: 1h 40m  (was: 1.5h)

> Make intermediateMessageReferences initial capacity configurable
> 
>
> Key: ARTEMIS-4809
> URL: https://issues.apache.org/jira/browse/ARTEMIS-4809
> Project: ActiveMQ Artemis
>  Issue Type: New Feature
>  Components: Broker
>Reporter: Josh Byster
>Priority: Minor
>  Time Spent: 1h 40m
>  Remaining Estimate: 0h
>
> In some setups, there could be a few hundred thousand queues that are created 
> due to many consumers that are connecting. However, most of these are empty 
> and stay empty for the entire day since there aren't necessarily messages to 
> be sent.
> The 8K {{intermediateMessageReferences}} instantiates an 64KB buffer 
> ({{Object[]}}). This means we have large allocation and live heap that 
> ultimately remains empty for almost the entire day.
> It would be quite nice if we could configure this initial size.



--
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] [Work logged] (ARTEMIS-4809) Make intermediateMessageReferences initial capacity configurable

2024-06-11 Thread ASF GitHub Bot (Jira)


 [ 
https://issues.apache.org/jira/browse/ARTEMIS-4809?focusedWorklogId=923039=com.atlassian.jira.plugin.system.issuetabpanels:worklog-tabpanel#worklog-923039
 ]

ASF GitHub Bot logged work on ARTEMIS-4809:
---

Author: ASF GitHub Bot
Created on: 11/Jun/24 21:47
Start Date: 11/Jun/24 21:47
Worklog Time Spent: 10m 
  Work Description: joshb1050 commented on PR #4966:
URL: 
https://github.com/apache/activemq-artemis/pull/4966#issuecomment-2161654314

   Checkstyle is fixed now as well.




Issue Time Tracking
---

Worklog Id: (was: 923039)
Time Spent: 1.5h  (was: 1h 20m)

> Make intermediateMessageReferences initial capacity configurable
> 
>
> Key: ARTEMIS-4809
> URL: https://issues.apache.org/jira/browse/ARTEMIS-4809
> Project: ActiveMQ Artemis
>  Issue Type: New Feature
>  Components: Broker
>Reporter: Josh Byster
>Priority: Minor
>  Time Spent: 1.5h
>  Remaining Estimate: 0h
>
> In some setups, there could be a few hundred thousand queues that are created 
> due to many consumers that are connecting. However, most of these are empty 
> and stay empty for the entire day since there aren't necessarily messages to 
> be sent.
> The 8K {{intermediateMessageReferences}} instantiates an 64KB buffer 
> ({{Object[]}}). This means we have large allocation and live heap that 
> ultimately remains empty for almost the entire day.
> It would be quite nice if we could configure this initial size.



--
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] [Work logged] (ARTEMIS-4809) Make intermediateMessageReferences initial capacity configurable

2024-06-11 Thread ASF GitHub Bot (Jira)


 [ 
https://issues.apache.org/jira/browse/ARTEMIS-4809?focusedWorklogId=923037=com.atlassian.jira.plugin.system.issuetabpanels:worklog-tabpanel#worklog-923037
 ]

ASF GitHub Bot logged work on ARTEMIS-4809:
---

Author: ASF GitHub Bot
Created on: 11/Jun/24 21:45
Start Date: 11/Jun/24 21:45
Worklog Time Spent: 10m 
  Work Description: joshb1050 commented on code in PR #4966:
URL: https://github.com/apache/activemq-artemis/pull/4966#discussion_r1635514051


##
artemis-server/src/main/resources/schema/artemis-configuration.xsd:
##
@@ -4457,6 +4457,15 @@
 
  
 
+ 

Review Comment:
   This is done.





Issue Time Tracking
---

Worklog Id: (was: 923037)
Time Spent: 1h 10m  (was: 1h)

> Make intermediateMessageReferences initial capacity configurable
> 
>
> Key: ARTEMIS-4809
> URL: https://issues.apache.org/jira/browse/ARTEMIS-4809
> Project: ActiveMQ Artemis
>  Issue Type: New Feature
>  Components: Broker
>Reporter: Josh Byster
>Priority: Minor
>  Time Spent: 1h 10m
>  Remaining Estimate: 0h
>
> In some setups, there could be a few hundred thousand queues that are created 
> due to many consumers that are connecting. However, most of these are empty 
> and stay empty for the entire day since there aren't necessarily messages to 
> be sent.
> The 8K {{intermediateMessageReferences}} instantiates an 64KB buffer 
> ({{Object[]}}). This means we have large allocation and live heap that 
> ultimately remains empty for almost the entire day.
> It would be quite nice if we could configure this initial size.



--
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] [Work logged] (ARTEMIS-4809) Make intermediateMessageReferences initial capacity configurable

2024-06-11 Thread ASF GitHub Bot (Jira)


 [ 
https://issues.apache.org/jira/browse/ARTEMIS-4809?focusedWorklogId=923038=com.atlassian.jira.plugin.system.issuetabpanels:worklog-tabpanel#worklog-923038
 ]

ASF GitHub Bot logged work on ARTEMIS-4809:
---

Author: ASF GitHub Bot
Created on: 11/Jun/24 21:45
Start Date: 11/Jun/24 21:45
Worklog Time Spent: 10m 
  Work Description: joshb1050 commented on code in PR #4966:
URL: https://github.com/apache/activemq-artemis/pull/4966#discussion_r1635514337


##
artemis-server/src/main/java/org/apache/activemq/artemis/core/settings/impl/AddressSettings.java:
##
@@ -1604,6 +1619,10 @@ public void decode(ActiveMQBuffer buffer, boolean 
tryCompatible) {
  prefetchPageMessages = BufferHelper.readNullableInteger(buffer);
   }
 
+  if (buffer.readableBytes() > 0) {
+ intermediateMessageBufferInitialSize = 
BufferHelper.readNullableInteger(buffer);
+  }
+

Review Comment:
   Missed that—done now.





Issue Time Tracking
---

Worklog Id: (was: 923038)
Time Spent: 1h 20m  (was: 1h 10m)

> Make intermediateMessageReferences initial capacity configurable
> 
>
> Key: ARTEMIS-4809
> URL: https://issues.apache.org/jira/browse/ARTEMIS-4809
> Project: ActiveMQ Artemis
>  Issue Type: New Feature
>  Components: Broker
>Reporter: Josh Byster
>Priority: Minor
>  Time Spent: 1h 20m
>  Remaining Estimate: 0h
>
> In some setups, there could be a few hundred thousand queues that are created 
> due to many consumers that are connecting. However, most of these are empty 
> and stay empty for the entire day since there aren't necessarily messages to 
> be sent.
> The 8K {{intermediateMessageReferences}} instantiates an 64KB buffer 
> ({{Object[]}}). This means we have large allocation and live heap that 
> ultimately remains empty for almost the entire day.
> It would be quite nice if we could configure this initial size.



--
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] [Work logged] (ARTEMIS-4809) Make intermediateMessageReferences initial capacity configurable

2024-06-11 Thread ASF GitHub Bot (Jira)


 [ 
https://issues.apache.org/jira/browse/ARTEMIS-4809?focusedWorklogId=923034=com.atlassian.jira.plugin.system.issuetabpanels:worklog-tabpanel#worklog-923034
 ]

ASF GitHub Bot logged work on ARTEMIS-4809:
---

Author: ASF GitHub Bot
Created on: 11/Jun/24 21:22
Start Date: 11/Jun/24 21:22
Worklog Time Spent: 10m 
  Work Description: jbertram commented on code in PR #4966:
URL: https://github.com/apache/activemq-artemis/pull/4966#discussion_r1635493471


##
artemis-server/src/main/resources/schema/artemis-configuration.xsd:
##
@@ -4457,6 +4457,15 @@
 
  
 
+ 

Review Comment:
   Specify the default value here as with the other elements (i.e. `8192`).





Issue Time Tracking
---

Worklog Id: (was: 923034)
Time Spent: 1h  (was: 50m)

> Make intermediateMessageReferences initial capacity configurable
> 
>
> Key: ARTEMIS-4809
> URL: https://issues.apache.org/jira/browse/ARTEMIS-4809
> Project: ActiveMQ Artemis
>  Issue Type: New Feature
>  Components: Broker
>Reporter: Josh Byster
>Priority: Minor
>  Time Spent: 1h
>  Remaining Estimate: 0h
>
> In some setups, there could be a few hundred thousand queues that are created 
> due to many consumers that are connecting. However, most of these are empty 
> and stay empty for the entire day since there aren't necessarily messages to 
> be sent.
> The 8K {{intermediateMessageReferences}} instantiates an 64KB buffer 
> ({{Object[]}}). This means we have large allocation and live heap that 
> ultimately remains empty for almost the entire day.
> It would be quite nice if we could configure this initial size.



--
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] [Work logged] (ARTEMIS-4809) Make intermediateMessageReferences initial capacity configurable

2024-06-11 Thread ASF GitHub Bot (Jira)


 [ 
https://issues.apache.org/jira/browse/ARTEMIS-4809?focusedWorklogId=923033=com.atlassian.jira.plugin.system.issuetabpanels:worklog-tabpanel#worklog-923033
 ]

ASF GitHub Bot logged work on ARTEMIS-4809:
---

Author: ASF GitHub Bot
Created on: 11/Jun/24 21:20
Start Date: 11/Jun/24 21:20
Worklog Time Spent: 10m 
  Work Description: jbertram commented on code in PR #4966:
URL: https://github.com/apache/activemq-artemis/pull/4966#discussion_r1635493471


##
artemis-server/src/main/resources/schema/artemis-configuration.xsd:
##
@@ -4457,6 +4457,15 @@
 
  
 
+ 

Review Comment:
   Specify the default value here as with the other elements.





Issue Time Tracking
---

Worklog Id: (was: 923033)
Time Spent: 50m  (was: 40m)

> Make intermediateMessageReferences initial capacity configurable
> 
>
> Key: ARTEMIS-4809
> URL: https://issues.apache.org/jira/browse/ARTEMIS-4809
> Project: ActiveMQ Artemis
>  Issue Type: New Feature
>  Components: Broker
>Reporter: Josh Byster
>Priority: Minor
>  Time Spent: 50m
>  Remaining Estimate: 0h
>
> In some setups, there could be a few hundred thousand queues that are created 
> due to many consumers that are connecting. However, most of these are empty 
> and stay empty for the entire day since there aren't necessarily messages to 
> be sent.
> The 8K {{intermediateMessageReferences}} instantiates an 64KB buffer 
> ({{Object[]}}). This means we have large allocation and live heap that 
> ultimately remains empty for almost the entire day.
> It would be quite nice if we could configure this initial size.



--
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] [Work logged] (ARTEMIS-4809) Make intermediateMessageReferences initial capacity configurable

2024-06-11 Thread ASF GitHub Bot (Jira)


 [ 
https://issues.apache.org/jira/browse/ARTEMIS-4809?focusedWorklogId=923032=com.atlassian.jira.plugin.system.issuetabpanels:worklog-tabpanel#worklog-923032
 ]

ASF GitHub Bot logged work on ARTEMIS-4809:
---

Author: ASF GitHub Bot
Created on: 11/Jun/24 21:19
Start Date: 11/Jun/24 21:19
Worklog Time Spent: 10m 
  Work Description: jbertram commented on code in PR #4966:
URL: https://github.com/apache/activemq-artemis/pull/4966#discussion_r1635492310


##
artemis-server/src/main/java/org/apache/activemq/artemis/core/settings/impl/AddressSettings.java:
##
@@ -1604,6 +1619,10 @@ public void decode(ActiveMQBuffer buffer, boolean 
tryCompatible) {
  prefetchPageMessages = BufferHelper.readNullableInteger(buffer);
   }
 
+  if (buffer.readableBytes() > 0) {
+ intermediateMessageBufferInitialSize = 
BufferHelper.readNullableInteger(buffer);
+  }
+

Review Comment:
   Notice the comment below. This code should be removed.





Issue Time Tracking
---

Worklog Id: (was: 923032)
Time Spent: 40m  (was: 0.5h)

> Make intermediateMessageReferences initial capacity configurable
> 
>
> Key: ARTEMIS-4809
> URL: https://issues.apache.org/jira/browse/ARTEMIS-4809
> Project: ActiveMQ Artemis
>  Issue Type: New Feature
>  Components: Broker
>Reporter: Josh Byster
>Priority: Minor
>  Time Spent: 40m
>  Remaining Estimate: 0h
>
> In some setups, there could be a few hundred thousand queues that are created 
> due to many consumers that are connecting. However, most of these are empty 
> and stay empty for the entire day since there aren't necessarily messages to 
> be sent.
> The 8K {{intermediateMessageReferences}} instantiates an 64KB buffer 
> ({{Object[]}}). This means we have large allocation and live heap that 
> ultimately remains empty for almost the entire day.
> It would be quite nice if we could configure this initial size.



--
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] [Work logged] (ARTEMIS-4811) Upgrade Netty to 4.1.111.Final

2024-06-11 Thread ASF GitHub Bot (Jira)


 [ 
https://issues.apache.org/jira/browse/ARTEMIS-4811?focusedWorklogId=923031=com.atlassian.jira.plugin.system.issuetabpanels:worklog-tabpanel#worklog-923031
 ]

ASF GitHub Bot logged work on ARTEMIS-4811:
---

Author: ASF GitHub Bot
Created on: 11/Jun/24 21:12
Start Date: 11/Jun/24 21:12
Worklog Time Spent: 10m 
  Work Description: jbertram merged PR #4969:
URL: https://github.com/apache/activemq-artemis/pull/4969




Issue Time Tracking
---

Worklog Id: (was: 923031)
Time Spent: 40m  (was: 0.5h)

> Upgrade Netty to 4.1.111.Final
> --
>
> Key: ARTEMIS-4811
> URL: https://issues.apache.org/jira/browse/ARTEMIS-4811
> Project: ActiveMQ Artemis
>  Issue Type: Dependency upgrade
>Reporter: Emmanuel Hugonnet
>Priority: Major
>  Time Spent: 40m
>  Remaining Estimate: 0h
>




--
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] [Commented] (ARTEMIS-4811) Upgrade Netty to 4.1.111.Final

2024-06-11 Thread ASF subversion and git services (Jira)


[ 
https://issues.apache.org/jira/browse/ARTEMIS-4811?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=17854199#comment-17854199
 ] 

ASF subversion and git services commented on ARTEMIS-4811:
--

Commit 2aff6504e17f2db95644d3dcc7058eed97cd1390 in activemq-artemis's branch 
refs/heads/main from Emmanuel Hugonnet
[ https://gitbox.apache.org/repos/asf?p=activemq-artemis.git;h=2aff6504e1 ]

ARTEMIS-4811 upgrade Netty to 4.1.111.Final

Signed-off-by: Emmanuel Hugonnet 


> Upgrade Netty to 4.1.111.Final
> --
>
> Key: ARTEMIS-4811
> URL: https://issues.apache.org/jira/browse/ARTEMIS-4811
> Project: ActiveMQ Artemis
>  Issue Type: Dependency upgrade
>Reporter: Emmanuel Hugonnet
>Priority: Major
>  Time Spent: 40m
>  Remaining Estimate: 0h
>




--
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-4811) Upgrade Netty to 4.1.111.Final

2024-06-11 Thread Emmanuel Hugonnet (Jira)


 [ 
https://issues.apache.org/jira/browse/ARTEMIS-4811?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Emmanuel Hugonnet updated ARTEMIS-4811:
---
Summary: Upgrade Netty to 4.1.111.Final  (was: Upgrade Netty to 
4.1.110.Final)

> Upgrade Netty to 4.1.111.Final
> --
>
> Key: ARTEMIS-4811
> URL: https://issues.apache.org/jira/browse/ARTEMIS-4811
> Project: ActiveMQ Artemis
>  Issue Type: Dependency upgrade
>Reporter: Emmanuel Hugonnet
>Priority: Major
>  Time Spent: 0.5h
>  Remaining Estimate: 0h
>




--
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] [Work logged] (ARTEMIS-4811) Upgrade Netty to 4.1.110.Final

2024-06-11 Thread ASF GitHub Bot (Jira)


 [ 
https://issues.apache.org/jira/browse/ARTEMIS-4811?focusedWorklogId=923022=com.atlassian.jira.plugin.system.issuetabpanels:worklog-tabpanel#worklog-923022
 ]

ASF GitHub Bot logged work on ARTEMIS-4811:
---

Author: ASF GitHub Bot
Created on: 11/Jun/24 19:27
Start Date: 11/Jun/24 19:27
Worklog Time Spent: 10m 
  Work Description: jbertram commented on PR #4969:
URL: 
https://github.com/apache/activemq-artemis/pull/4969#issuecomment-2161463400

   Actually 4.1.111.Final has already been released so just update your PR and 
this problem should go away.




Issue Time Tracking
---

Worklog Id: (was: 923022)
Time Spent: 0.5h  (was: 20m)

> Upgrade Netty to 4.1.110.Final
> --
>
> Key: ARTEMIS-4811
> URL: https://issues.apache.org/jira/browse/ARTEMIS-4811
> Project: ActiveMQ Artemis
>  Issue Type: Dependency upgrade
>Reporter: Emmanuel Hugonnet
>Priority: Major
>  Time Spent: 0.5h
>  Remaining Estimate: 0h
>




--
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] [Work logged] (ARTEMIS-4811) Upgrade Netty to 4.1.110.Final

2024-06-11 Thread ASF GitHub Bot (Jira)


 [ 
https://issues.apache.org/jira/browse/ARTEMIS-4811?focusedWorklogId=923021=com.atlassian.jira.plugin.system.issuetabpanels:worklog-tabpanel#worklog-923021
 ]

ASF GitHub Bot logged work on ARTEMIS-4811:
---

Author: ASF GitHub Bot
Created on: 11/Jun/24 19:22
Start Date: 11/Jun/24 19:22
Worklog Time Spent: 10m 
  Work Description: jbertram commented on PR #4969:
URL: 
https://github.com/apache/activemq-artemis/pull/4969#issuecomment-2161456131

   Looks like we may need to wait for 4.1.111.Final in order to get 
https://github.com/netty/netty/issues/14080.




Issue Time Tracking
---

Worklog Id: (was: 923021)
Time Spent: 20m  (was: 10m)

> Upgrade Netty to 4.1.110.Final
> --
>
> Key: ARTEMIS-4811
> URL: https://issues.apache.org/jira/browse/ARTEMIS-4811
> Project: ActiveMQ Artemis
>  Issue Type: Dependency upgrade
>Reporter: Emmanuel Hugonnet
>Priority: Major
>  Time Spent: 20m
>  Remaining Estimate: 0h
>




--
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] [Work logged] (ARTEMIS-4812) PageCursorInfo should be cleared on its Maps when page is marked as complete

2024-06-11 Thread ASF GitHub Bot (Jira)


 [ 
https://issues.apache.org/jira/browse/ARTEMIS-4812?focusedWorklogId=922981=com.atlassian.jira.plugin.system.issuetabpanels:worklog-tabpanel#worklog-922981
 ]

ASF GitHub Bot logged work on ARTEMIS-4812:
---

Author: ASF GitHub Bot
Created on: 11/Jun/24 16:03
Start Date: 11/Jun/24 16:03
Worklog Time Spent: 10m 
  Work Description: clebertsuconic merged PR #4970:
URL: https://github.com/apache/activemq-artemis/pull/4970




Issue Time Tracking
---

Worklog Id: (was: 922981)
Time Spent: 20m  (was: 10m)

> PageCursorInfo should be cleared on its Maps when page is marked as complete
> 
>
> Key: ARTEMIS-4812
> URL: https://issues.apache.org/jira/browse/ARTEMIS-4812
> Project: ActiveMQ Artemis
>  Issue Type: Bug
>Affects Versions: 2.34.0
>Reporter: Clebert Suconic
>Assignee: Clebert Suconic
>Priority: Major
> Fix For: 2.35.0
>
>  Time Spent: 20m
>  Remaining Estimate: 0h
>
> Say you have a paged destination where there is a lazy consumer. The other 
> queues will keep consuming, and they will mark a page as complete. However 
> PageCursorInfo::acks and PageCursorInfo::removedReferences should be cleared 
> upon completion otherwise they will only be GCed when the page file is 
> removed and the entries for PageCursorInfo removed.
> IntObjectHashMap also keeps an array of integers in memory and it won't 
> remove it when all elements are removed. to the reference to IntObjectHashMap 
> has to be set to null instead of removeAllReferences.



--
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] [Commented] (ARTEMIS-4812) PageCursorInfo should be cleared on its Maps when page is marked as complete

2024-06-11 Thread ASF subversion and git services (Jira)


[ 
https://issues.apache.org/jira/browse/ARTEMIS-4812?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=17854108#comment-17854108
 ] 

ASF subversion and git services commented on ARTEMIS-4812:
--

Commit 178f2e4b4d8b9ab0ba16750a716179f41e2ec8c5 in activemq-artemis's branch 
refs/heads/main from Clebert Suconic
[ https://gitbox.apache.org/repos/asf?p=activemq-artemis.git;h=178f2e4b4d ]

ARTEMIS-4812 Avoid IntObject accumulation after Page is set as complete

this could lead to OME if a lazy consumer is there for a long time with all 
pages being removed.


> PageCursorInfo should be cleared on its Maps when page is marked as complete
> 
>
> Key: ARTEMIS-4812
> URL: https://issues.apache.org/jira/browse/ARTEMIS-4812
> Project: ActiveMQ Artemis
>  Issue Type: Bug
>Affects Versions: 2.34.0
>Reporter: Clebert Suconic
>Assignee: Clebert Suconic
>Priority: Major
> Fix For: 2.35.0
>
>  Time Spent: 20m
>  Remaining Estimate: 0h
>
> Say you have a paged destination where there is a lazy consumer. The other 
> queues will keep consuming, and they will mark a page as complete. However 
> PageCursorInfo::acks and PageCursorInfo::removedReferences should be cleared 
> upon completion otherwise they will only be GCed when the page file is 
> removed and the entries for PageCursorInfo removed.
> IntObjectHashMap also keeps an array of integers in memory and it won't 
> remove it when all elements are removed. to the reference to IntObjectHashMap 
> has to be set to null instead of removeAllReferences.



--
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] [Resolved] (AMQ-9506) Upgrade to jackson 2.17.1

2024-06-11 Thread Jira


 [ 
https://issues.apache.org/jira/browse/AMQ-9506?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Jean-Baptiste Onofré resolved AMQ-9506.
---
Resolution: Fixed

> Upgrade to jackson 2.17.1
> -
>
> Key: AMQ-9506
> URL: https://issues.apache.org/jira/browse/AMQ-9506
> Project: ActiveMQ Classic
>  Issue Type: Dependency upgrade
>  Components: Broker, Web Console
>Reporter: Jean-Baptiste Onofré
>Assignee: Jean-Baptiste Onofré
>Priority: Major
> Fix For: 6.2.0
>
>  Time Spent: 20m
>  Remaining Estimate: 0h
>




--
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] [Work logged] (AMQ-9506) Upgrade to jackson 2.17.1

2024-06-11 Thread ASF GitHub Bot (Jira)


 [ 
https://issues.apache.org/jira/browse/AMQ-9506?focusedWorklogId=922974=com.atlassian.jira.plugin.system.issuetabpanels:worklog-tabpanel#worklog-922974
 ]

ASF GitHub Bot logged work on AMQ-9506:
---

Author: ASF GitHub Bot
Created on: 11/Jun/24 15:27
Start Date: 11/Jun/24 15:27
Worklog Time Spent: 10m 
  Work Description: jbonofre merged PR #1231:
URL: https://github.com/apache/activemq/pull/1231




Issue Time Tracking
---

Worklog Id: (was: 922974)
Time Spent: 20m  (was: 10m)

> Upgrade to jackson 2.17.1
> -
>
> Key: AMQ-9506
> URL: https://issues.apache.org/jira/browse/AMQ-9506
> Project: ActiveMQ Classic
>  Issue Type: Dependency upgrade
>  Components: Broker, Web Console
>Reporter: Jean-Baptiste Onofré
>Assignee: Jean-Baptiste Onofré
>Priority: Major
> Fix For: 6.2.0
>
>  Time Spent: 20m
>  Remaining Estimate: 0h
>




--
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] [Commented] (AMQ-9506) Upgrade to jackson 2.17.1

2024-06-11 Thread ASF subversion and git services (Jira)


[ 
https://issues.apache.org/jira/browse/AMQ-9506?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=17854098#comment-17854098
 ] 

ASF subversion and git services commented on AMQ-9506:
--

Commit 9d11e0d7e96c4871e190d0c99aa0f3cdc8ffb8db in activemq's branch 
refs/heads/main from JB Onofré
[ https://gitbox.apache.org/repos/asf?p=activemq.git;h=9d11e0d7e ]

Merge pull request #1231 from jbonofre/AMQ-9506

AMQ-9506: Upgrade to Jackson 2.17.1

> Upgrade to jackson 2.17.1
> -
>
> Key: AMQ-9506
> URL: https://issues.apache.org/jira/browse/AMQ-9506
> Project: ActiveMQ Classic
>  Issue Type: Dependency upgrade
>  Components: Broker, Web Console
>Reporter: Jean-Baptiste Onofré
>Assignee: Jean-Baptiste Onofré
>Priority: Major
> Fix For: 6.2.0
>
>  Time Spent: 20m
>  Remaining Estimate: 0h
>




--
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] [Commented] (AMQ-9506) Upgrade to jackson 2.17.1

2024-06-11 Thread ASF subversion and git services (Jira)


[ 
https://issues.apache.org/jira/browse/AMQ-9506?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=17854097#comment-17854097
 ] 

ASF subversion and git services commented on AMQ-9506:
--

Commit ba0f7b6690de62279103d68d29f08799d10fa3b0 in activemq's branch 
refs/heads/main from JB Onofré
[ https://gitbox.apache.org/repos/asf?p=activemq.git;h=ba0f7b669 ]

AMQ-9506: Upgrade to Jackson 2.17.1


> Upgrade to jackson 2.17.1
> -
>
> Key: AMQ-9506
> URL: https://issues.apache.org/jira/browse/AMQ-9506
> Project: ActiveMQ Classic
>  Issue Type: Dependency upgrade
>  Components: Broker, Web Console
>Reporter: Jean-Baptiste Onofré
>Assignee: Jean-Baptiste Onofré
>Priority: Major
> Fix For: 6.2.0
>
>  Time Spent: 20m
>  Remaining Estimate: 0h
>




--
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

2024-06-11 Thread nmeylan (Jira)


 [ 
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

2024-06-11 Thread nmeylan (Jira)


 [ 
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

2024-06-11 Thread nmeylan (Jira)


 [ 
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

2024-06-11 Thread nmeylan (Jira)


 [ 
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] [Work logged] (ARTEMIS-4812) PageCursorInfo should be cleared on its Maps when page is marked as complete

2024-06-11 Thread ASF GitHub Bot (Jira)


 [ 
https://issues.apache.org/jira/browse/ARTEMIS-4812?focusedWorklogId=922971=com.atlassian.jira.plugin.system.issuetabpanels:worklog-tabpanel#worklog-922971
 ]

ASF GitHub Bot logged work on ARTEMIS-4812:
---

Author: ASF GitHub Bot
Created on: 11/Jun/24 14:23
Start Date: 11/Jun/24 14:23
Worklog Time Spent: 10m 
  Work Description: clebertsuconic opened a new pull request, #4970:
URL: https://github.com/apache/activemq-artemis/pull/4970

   this could lead to OME if a lazy consumer is there for a long time with all 
pages being removed.




Issue Time Tracking
---

Worklog Id: (was: 922971)
Remaining Estimate: 0h
Time Spent: 10m

> PageCursorInfo should be cleared on its Maps when page is marked as complete
> 
>
> Key: ARTEMIS-4812
> URL: https://issues.apache.org/jira/browse/ARTEMIS-4812
> Project: ActiveMQ Artemis
>  Issue Type: Bug
>Affects Versions: 2.34.0
>Reporter: Clebert Suconic
>Assignee: Clebert Suconic
>Priority: Major
> Fix For: 2.35.0
>
>  Time Spent: 10m
>  Remaining Estimate: 0h
>
> Say you have a paged destination where there is a lazy consumer. The other 
> queues will keep consuming, and they will mark a page as complete. However 
> PageCursorInfo::acks and PageCursorInfo::removedReferences should be cleared 
> upon completion otherwise they will only be GCed when the page file is 
> removed and the entries for PageCursorInfo removed.
> IntObjectHashMap also keeps an array of integers in memory and it won't 
> remove it when all elements are removed. to the reference to IntObjectHashMap 
> has to be set to null instead of removeAllReferences.



--
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

2024-06-11 Thread nmeylan (Jira)


 [ 
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 

[jira] [Updated] (ARTEMIS-4794) CoreBridge: Duplicate message when bridge is stopped while messages being produced to target node

2024-06-11 Thread nmeylan (Jira)


 [ 
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 

[jira] [Updated] (ARTEMIS-4794) CoreBridge: Duplicate message when bridge is stopped while messages being produced to target node

2024-06-11 Thread nmeylan (Jira)


 [ 
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] [Created] (ARTEMIS-4812) PageCursorInfo should be cleared on its Maps when page is marked as complete

2024-06-11 Thread Clebert Suconic (Jira)
Clebert Suconic created ARTEMIS-4812:


 Summary: PageCursorInfo should be cleared on its Maps when page is 
marked as complete
 Key: ARTEMIS-4812
 URL: https://issues.apache.org/jira/browse/ARTEMIS-4812
 Project: ActiveMQ Artemis
  Issue Type: Bug
Affects Versions: 2.34.0
Reporter: Clebert Suconic
Assignee: Clebert Suconic
 Fix For: 2.35.0


Say you have a paged destination where there is a lazy consumer. The other 
queues will keep consuming, and they will mark a page as complete. However 
PageCursorInfo::acks and PageCursorInfo::removedReferences should be cleared 
upon completion otherwise they will only be GCed when the page file is removed 
and the entries for PageCursorInfo removed.

IntObjectHashMap also keeps an array of integers in memory and it won't remove 
it when all elements are removed. to the reference to IntObjectHashMap has to 
be set to null instead of removeAllReferences.



--
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

2024-06-11 Thread nmeylan (Jira)


 [ 
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 

[jira] [Work logged] (AMQ-9498) Upgrade to maven-xbean-plugin 4.25

2024-06-11 Thread ASF GitHub Bot (Jira)


 [ 
https://issues.apache.org/jira/browse/AMQ-9498?focusedWorklogId=922928=com.atlassian.jira.plugin.system.issuetabpanels:worklog-tabpanel#worklog-922928
 ]

ASF GitHub Bot logged work on AMQ-9498:
---

Author: ASF GitHub Bot
Created on: 11/Jun/24 09:50
Start Date: 11/Jun/24 09:50
Worklog Time Spent: 10m 
  Work Description: jbonofre merged PR #1229:
URL: https://github.com/apache/activemq/pull/1229




Issue Time Tracking
---

Worklog Id: (was: 922928)
Time Spent: 40m  (was: 0.5h)

> Upgrade to maven-xbean-plugin 4.25
> --
>
> Key: AMQ-9498
> URL: https://issues.apache.org/jira/browse/AMQ-9498
> Project: ActiveMQ Classic
>  Issue Type: Dependency upgrade
>Reporter: Jean-Baptiste Onofré
>Assignee: Jean-Baptiste Onofré
>Priority: Major
> Fix For: 6.2.0
>
>  Time Spent: 40m
>  Remaining Estimate: 0h
>




--
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] [Commented] (AMQ-9498) Upgrade to maven-xbean-plugin 4.25

2024-06-11 Thread ASF subversion and git services (Jira)


[ 
https://issues.apache.org/jira/browse/AMQ-9498?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=17853996#comment-17853996
 ] 

ASF subversion and git services commented on AMQ-9498:
--

Commit 6bdb8e26e061318b5b4f28fb4f66586471b7177b in activemq's branch 
refs/heads/main from JB Onofré
[ https://gitbox.apache.org/repos/asf?p=activemq.git;h=6bdb8e26e ]

Merge pull request #1229 from jbonofre/AMQ-9498

AMQ-9498: Upgrade to xbean 4.25

> Upgrade to maven-xbean-plugin 4.25
> --
>
> Key: AMQ-9498
> URL: https://issues.apache.org/jira/browse/AMQ-9498
> Project: ActiveMQ Classic
>  Issue Type: Dependency upgrade
>Reporter: Jean-Baptiste Onofré
>Assignee: Jean-Baptiste Onofré
>Priority: Major
> Fix For: 6.2.0
>
>  Time Spent: 40m
>  Remaining Estimate: 0h
>




--
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] [Commented] (AMQ-9498) Upgrade to maven-xbean-plugin 4.25

2024-06-11 Thread ASF subversion and git services (Jira)


[ 
https://issues.apache.org/jira/browse/AMQ-9498?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=17853995#comment-17853995
 ] 

ASF subversion and git services commented on AMQ-9498:
--

Commit d9b795c7c4258e6511a214fef26866e71e514a0a in activemq's branch 
refs/heads/main from JB Onofré
[ https://gitbox.apache.org/repos/asf?p=activemq.git;h=d9b795c7c ]

AMQ-9498: Upgrade to xbean 4.25


> Upgrade to maven-xbean-plugin 4.25
> --
>
> Key: AMQ-9498
> URL: https://issues.apache.org/jira/browse/AMQ-9498
> Project: ActiveMQ Classic
>  Issue Type: Dependency upgrade
>Reporter: Jean-Baptiste Onofré
>Assignee: Jean-Baptiste Onofré
>Priority: Major
> Fix For: 6.2.0
>
>  Time Spent: 40m
>  Remaining Estimate: 0h
>




--
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] [Resolved] (AMQ-9498) Upgrade to maven-xbean-plugin 4.25

2024-06-11 Thread Jira


 [ 
https://issues.apache.org/jira/browse/AMQ-9498?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Jean-Baptiste Onofré resolved AMQ-9498.
---
Resolution: Fixed

> Upgrade to maven-xbean-plugin 4.25
> --
>
> Key: AMQ-9498
> URL: https://issues.apache.org/jira/browse/AMQ-9498
> Project: ActiveMQ Classic
>  Issue Type: Dependency upgrade
>Reporter: Jean-Baptiste Onofré
>Assignee: Jean-Baptiste Onofré
>Priority: Major
> Fix For: 6.2.0
>
>  Time Spent: 40m
>  Remaining Estimate: 0h
>




--
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

2024-06-11 Thread nmeylan (Jira)


 [ 
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

2024-06-11 Thread nmeylan (Jira)


 [ 
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

2024-06-11 Thread nmeylan (Jira)


 [ 
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

2024-06-11 Thread nmeylan (Jira)


 [ 
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

2024-06-11 Thread nmeylan (Jira)


 [ 
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

2024-06-11 Thread nmeylan (Jira)


 [ 
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

2024-06-11 Thread nmeylan (Jira)


 [ 
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

2024-06-11 Thread nmeylan (Jira)


 [ 
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

2024-06-11 Thread nmeylan (Jira)


 [ 
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

2024-06-11 Thread nmeylan (Jira)


 [ 
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

2024-06-11 Thread nmeylan (Jira)


 [ 
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

2024-06-11 Thread nmeylan (Jira)


 [ 
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 

[jira] [Updated] (ARTEMIS-4794) CoreBridge: Duplicate message when bridge is stopped while messages being consumed by target node

2024-06-11 Thread nmeylan (Jira)


 [ 
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

2024-06-11 Thread nmeylan (Jira)


 [ 
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

2024-06-11 Thread nmeylan (Jira)


 [ 
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

2024-06-11 Thread nmeylan (Jira)


 [ 
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