[jira] [Work logged] (ARTEMIS-4924) Do not allow sending messages directly to store-and-forward queues
[ https://issues.apache.org/jira/browse/ARTEMIS-4924?focusedWorklogId=927264=com.atlassian.jira.plugin.system.issuetabpanels:worklog-tabpanel#worklog-927264 ] ASF GitHub Bot logged work on ARTEMIS-4924: --- Author: ASF GitHub Bot Created on: 24/Jul/24 16:19 Start Date: 24/Jul/24 16:19 Worklog Time Spent: 10m Work Description: clebertsuconic commented on code in PR #5091: URL: https://github.com/apache/activemq-artemis/pull/5091#discussion_r1690102571 ## artemis-server/src/main/java/org/apache/activemq/artemis/core/server/cluster/impl/ClusterConnectionImpl.java: ## @@ -712,6 +712,19 @@ private synchronized void activate() throws Exception { serverLocator.start(server.getExecutorFactory().getExecutor()); } + // add security role to disallow send/edit directly to sf queues + if (server.getConfiguration().isSecurityEnabled()) { + Set roles = new HashSet<>(); + String addressMatch = storeAndForwardPrefix + name + "." + server.getConfiguration().getWildcardConfiguration().getSingleWordString(); Review Comment: @gtully I was going to merge it now.. but it seems you still have some things to discuss on this one. i will skip this one from the next apache artemis release I'm doing... it will be in the next one. Issue Time Tracking --- Worklog Id: (was: 927264) Time Spent: 1h 40m (was: 1.5h) > Do not allow sending messages directly to store-and-forward queues > -- > > Key: ARTEMIS-4924 > URL: https://issues.apache.org/jira/browse/ARTEMIS-4924 > Project: ActiveMQ Artemis > Issue Type: Bug > Components: Clustering >Affects Versions: 2.35.0 >Reporter: Howard Gao >Assignee: Howard Gao >Priority: Major > Time Spent: 1h 40m > Remaining Estimate: 0h > > Currently, if a poison message missing queue information ends up in the SF > queue, the broker logs an error, like: > AMQ222110: no queue IDs defined... > but the message remains in the queue, with the result that the bridge > continuously reconnects, encounters the failure, then evicts the bridge > consumer. -- 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-4924) Do not allow sending messages directly to store-and-forward queues
[ https://issues.apache.org/jira/browse/ARTEMIS-4924?focusedWorklogId=927246=com.atlassian.jira.plugin.system.issuetabpanels:worklog-tabpanel#worklog-927246 ] ASF GitHub Bot logged work on ARTEMIS-4924: --- Author: ASF GitHub Bot Created on: 24/Jul/24 15:12 Start Date: 24/Jul/24 15:12 Worklog Time Spent: 10m Work Description: gaohoward commented on code in PR #5091: URL: https://github.com/apache/activemq-artemis/pull/5091#discussion_r1689998704 ## artemis-server/src/main/java/org/apache/activemq/artemis/core/server/impl/QueueImpl.java: ## @@ -1284,6 +1284,15 @@ public void addTail(final MessageReference ref, final boolean direct) { if (scheduleIfPossible(ref)) { return; } + if (checkInvalid(ref)) { +//send to dlq +try { + sendToDeadLetterAddress(null, ref); Review Comment: I think that's the simple way to go. The message should be checked before it goes into queue. By the time it goes to deliver process, it's too late I think. But adding a header perhaps to tell the reason makes sense to me. Issue Time Tracking --- Worklog Id: (was: 927246) Time Spent: 1.5h (was: 1h 20m) > Do not allow sending messages directly to store-and-forward queues > -- > > Key: ARTEMIS-4924 > URL: https://issues.apache.org/jira/browse/ARTEMIS-4924 > Project: ActiveMQ Artemis > Issue Type: Bug > Components: Clustering >Affects Versions: 2.35.0 >Reporter: Howard Gao >Assignee: Howard Gao >Priority: Major > Time Spent: 1.5h > Remaining Estimate: 0h > > Currently, if a poison message missing queue information ends up in the SF > queue, the broker logs an error, like: > AMQ222110: no queue IDs defined... > but the message remains in the queue, with the result that the bridge > continuously reconnects, encounters the failure, then evicts the bridge > consumer. -- 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-4924) Do not allow sending messages directly to store-and-forward queues
[ https://issues.apache.org/jira/browse/ARTEMIS-4924?focusedWorklogId=927243=com.atlassian.jira.plugin.system.issuetabpanels:worklog-tabpanel#worklog-927243 ] ASF GitHub Bot logged work on ARTEMIS-4924: --- Author: ASF GitHub Bot Created on: 24/Jul/24 15:07 Start Date: 24/Jul/24 15:07 Worklog Time Spent: 10m Work Description: gaohoward commented on code in PR #5091: URL: https://github.com/apache/activemq-artemis/pull/5091#discussion_r1689989969 ## artemis-server/src/main/java/org/apache/activemq/artemis/core/server/cluster/impl/ClusterConnectionImpl.java: ## @@ -712,6 +712,19 @@ private synchronized void activate() throws Exception { serverLocator.start(server.getExecutorFactory().getExecutor()); } + // add security role to disallow send/edit directly to sf queues + if (server.getConfiguration().isSecurityEnabled()) { + Set roles = new HashSet<>(); + String addressMatch = storeAndForwardPrefix + name + "." + server.getConfiguration().getWildcardConfiguration().getSingleWordString(); Review Comment: @gtully I'm not sure I understand. Can you be a bit more specific as to where should the rbac be set in? Issue Time Tracking --- Worklog Id: (was: 927243) Time Spent: 1h 20m (was: 1h 10m) > Do not allow sending messages directly to store-and-forward queues > -- > > Key: ARTEMIS-4924 > URL: https://issues.apache.org/jira/browse/ARTEMIS-4924 > Project: ActiveMQ Artemis > Issue Type: Bug > Components: Clustering >Affects Versions: 2.35.0 >Reporter: Howard Gao >Assignee: Howard Gao >Priority: Major > Time Spent: 1h 20m > Remaining Estimate: 0h > > Currently, if a poison message missing queue information ends up in the SF > queue, the broker logs an error, like: > AMQ222110: no queue IDs defined... > but the message remains in the queue, with the result that the bridge > continuously reconnects, encounters the failure, then evicts the bridge > consumer. -- 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-4924) Do not allow sending messages directly to store-and-forward queues
[ https://issues.apache.org/jira/browse/ARTEMIS-4924?focusedWorklogId=927242=com.atlassian.jira.plugin.system.issuetabpanels:worklog-tabpanel#worklog-927242 ] ASF GitHub Bot logged work on ARTEMIS-4924: --- Author: ASF GitHub Bot Created on: 24/Jul/24 15:05 Start Date: 24/Jul/24 15:05 Worklog Time Spent: 10m Work Description: gaohoward commented on code in PR #5091: URL: https://github.com/apache/activemq-artemis/pull/5091#discussion_r1689986457 ## artemis-server/src/main/java/org/apache/activemq/artemis/core/server/cluster/impl/ClusterConnectionBridge.java: ## @@ -201,12 +201,6 @@ protected Message beforeForward(final Message message, final SimpleString forwar byte[] queueIds = message.getExtraBytesProperty(idsHeaderName); - if (queueIds == null) { - // Sanity check only - ActiveMQServerLogger.LOGGER.noQueueIdDefined(message, messageCopy, idsHeaderName); Review Comment: I think it would be better to check before it enters the queue, by this time it is too late. Issue Time Tracking --- Worklog Id: (was: 927242) Time Spent: 1h 10m (was: 1h) > Do not allow sending messages directly to store-and-forward queues > -- > > Key: ARTEMIS-4924 > URL: https://issues.apache.org/jira/browse/ARTEMIS-4924 > Project: ActiveMQ Artemis > Issue Type: Bug > Components: Clustering >Affects Versions: 2.35.0 >Reporter: Howard Gao >Assignee: Howard Gao >Priority: Major > Time Spent: 1h 10m > Remaining Estimate: 0h > > Currently, if a poison message missing queue information ends up in the SF > queue, the broker logs an error, like: > AMQ222110: no queue IDs defined... > but the message remains in the queue, with the result that the bridge > continuously reconnects, encounters the failure, then evicts the bridge > consumer. -- 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-4930) Refactor storage manager tests
[ https://issues.apache.org/jira/browse/ARTEMIS-4930?focusedWorklogId=927226=com.atlassian.jira.plugin.system.issuetabpanels:worklog-tabpanel#worklog-927226 ] ASF GitHub Bot logged work on ARTEMIS-4930: --- Author: ASF GitHub Bot Created on: 24/Jul/24 13:51 Start Date: 24/Jul/24 13:51 Worklog Time Spent: 10m Work Description: gemmellr merged PR #5109: URL: https://github.com/apache/activemq-artemis/pull/5109 Issue Time Tracking --- Worklog Id: (was: 927226) Time Spent: 50m (was: 40m) > Refactor storage manager tests > -- > > Key: ARTEMIS-4930 > URL: https://issues.apache.org/jira/browse/ARTEMIS-4930 > Project: ActiveMQ Artemis > Issue Type: Improvement >Reporter: Justin Bertram >Assignee: Justin Bertram >Priority: Major > Time Spent: 50m > 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-4950) MBeanGuard throws an NPE
[ https://issues.apache.org/jira/browse/ARTEMIS-4950?focusedWorklogId=927225=com.atlassian.jira.plugin.system.issuetabpanels:worklog-tabpanel#worklog-927225 ] ASF GitHub Bot logged work on ARTEMIS-4950: --- Author: ASF GitHub Bot Created on: 24/Jul/24 13:50 Start Date: 24/Jul/24 13:50 Worklog Time Spent: 10m Work Description: clebertsuconic merged PR #5111: URL: https://github.com/apache/activemq-artemis/pull/5111 Issue Time Tracking --- Worklog Id: (was: 927225) Time Spent: 20m (was: 10m) > MBeanGuard throws an NPE > > > Key: ARTEMIS-4950 > URL: https://issues.apache.org/jira/browse/ARTEMIS-4950 > Project: ActiveMQ Artemis > Issue Type: Bug >Reporter: Andy Taylor >Assignee: Andy Taylor >Priority: Major > Time Spent: 20m > Remaining Estimate: 0h > > HawtIO calls invoke with a null operationName as a coarse grained way of > authenticating against all the operations on an mbean. This throws a null > pointer on operationName later in this call which is swallowed by HawtIO. > Since fine grained checks are carried out against every operation this was > never an issue however the new console based on HawtIO 4 passes this > exception back to the console which breaks it. Since it is just an > optimisation it is fine to always return true. Note that the alternative > ArtemisRbacInvocationHandler does allow the ability to restrict a whole mbean -- 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-9539) Add sonar code quality report to Jenkins build
[ https://issues.apache.org/jira/browse/AMQ-9539?focusedWorklogId=927222=com.atlassian.jira.plugin.system.issuetabpanels:worklog-tabpanel#worklog-927222 ] ASF GitHub Bot logged work on AMQ-9539: --- Author: ASF GitHub Bot Created on: 24/Jul/24 13:47 Start Date: 24/Jul/24 13:47 Worklog Time Spent: 10m Work Description: mattrpav opened a new pull request, #1274: URL: https://github.com/apache/activemq/pull/1274 (no comment) Issue Time Tracking --- Worklog Id: (was: 927222) Time Spent: 0.5h (was: 20m) > Add sonar code quality report to Jenkins build > -- > > Key: AMQ-9539 > URL: https://issues.apache.org/jira/browse/AMQ-9539 > Project: ActiveMQ Classic > Issue Type: Task >Reporter: Matt Pavlovich >Priority: Minor > 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] (AMQ-9539) Add sonar code quality report to Jenkins build
[ https://issues.apache.org/jira/browse/AMQ-9539?focusedWorklogId=927223=com.atlassian.jira.plugin.system.issuetabpanels:worklog-tabpanel#worklog-927223 ] ASF GitHub Bot logged work on AMQ-9539: --- Author: ASF GitHub Bot Created on: 24/Jul/24 13:47 Start Date: 24/Jul/24 13:47 Worklog Time Spent: 10m Work Description: mattrpav merged PR #1274: URL: https://github.com/apache/activemq/pull/1274 Issue Time Tracking --- Worklog Id: (was: 927223) Time Spent: 40m (was: 0.5h) > Add sonar code quality report to Jenkins build > -- > > Key: AMQ-9539 > URL: https://issues.apache.org/jira/browse/AMQ-9539 > Project: ActiveMQ Classic > Issue Type: Task >Reporter: Matt Pavlovich >Priority: Minor > 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] [Work logged] (ARTEMIS-4780) Artemis web console does not ever set 'artemisJmxDomain' in localStorage
[ https://issues.apache.org/jira/browse/ARTEMIS-4780?focusedWorklogId=927211=com.atlassian.jira.plugin.system.issuetabpanels:worklog-tabpanel#worklog-927211 ] ASF GitHub Bot logged work on ARTEMIS-4780: --- Author: ASF GitHub Bot Created on: 24/Jul/24 12:59 Start Date: 24/Jul/24 12:59 Worklog Time Spent: 10m Work Description: andytaylor closed pull request #5028: ARTEMIS-4780 - fix console when jmx-domain is non default URL: https://github.com/apache/activemq-artemis/pull/5028 Issue Time Tracking --- Worklog Id: (was: 927211) Time Spent: 2h (was: 1h 50m) > 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: 2h > 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-4950) MBeanGuard throws an NPE
[ https://issues.apache.org/jira/browse/ARTEMIS-4950?focusedWorklogId=927199=com.atlassian.jira.plugin.system.issuetabpanels:worklog-tabpanel#worklog-927199 ] ASF GitHub Bot logged work on ARTEMIS-4950: --- Author: ASF GitHub Bot Created on: 24/Jul/24 11:39 Start Date: 24/Jul/24 11:39 Worklog Time Spent: 10m Work Description: andytaylor opened a new pull request, #5111: URL: https://github.com/apache/activemq-artemis/pull/5111 Although this doesnt affect the current console it does the new so needs addressing Issue Time Tracking --- Worklog Id: (was: 927199) Remaining Estimate: 0h Time Spent: 10m > MBeanGuard throws an NPE > > > Key: ARTEMIS-4950 > URL: https://issues.apache.org/jira/browse/ARTEMIS-4950 > Project: ActiveMQ Artemis > Issue Type: Bug >Reporter: Andy Taylor >Assignee: Andy Taylor >Priority: Major > Time Spent: 10m > Remaining Estimate: 0h > > HawtIO calls invoke with a null operationName as a coarse grained way of > authenticating against all the operations on an mbean. This throws a null > pointer on operationName later in this call which is swallowed by HawtIO. > Since fine grained checks are carried out against every operation this was > never an issue however the new console based on HawtIO 4 passes this > exception back to the console which breaks it. Since it is just an > optimisation it is fine to always return true. Note that the alternative > ArtemisRbacInvocationHandler does allow the ability to restrict a whole mbean -- 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-4924) Do not allow sending messages directly to store-and-forward queues
[ https://issues.apache.org/jira/browse/ARTEMIS-4924?focusedWorklogId=927157=com.atlassian.jira.plugin.system.issuetabpanels:worklog-tabpanel#worklog-927157 ] ASF GitHub Bot logged work on ARTEMIS-4924: --- Author: ASF GitHub Bot Created on: 24/Jul/24 08:30 Start Date: 24/Jul/24 08:30 Worklog Time Spent: 10m Work Description: gtully commented on code in PR #5091: URL: https://github.com/apache/activemq-artemis/pull/5091#discussion_r1687972386 ## artemis-server/src/main/java/org/apache/activemq/artemis/core/server/cluster/impl/ClusterConnectionImpl.java: ## @@ -712,6 +712,19 @@ private synchronized void activate() throws Exception { serverLocator.start(server.getExecutorFactory().getExecutor()); } + // add security role to disallow send/edit directly to sf queues + if (server.getConfiguration().isSecurityEnabled()) { + Set roles = new HashSet<>(); + String addressMatch = storeAndForwardPrefix + name + "." + server.getConfiguration().getWildcardConfiguration().getSingleWordString(); Review Comment: I don't know that we want to add rbac to cluster connection in a special way. My reference to rbac was in the context of a user using a producer to send to the sfn, the assumption being that the cluster connection would be not being doing this. ## artemis-server/src/main/java/org/apache/activemq/artemis/core/server/impl/QueueImpl.java: ## @@ -1284,6 +1284,15 @@ public void addTail(final MessageReference ref, final boolean direct) { if (scheduleIfPossible(ref)) { return; } + if (checkInvalid(ref)) { +//send to dlq +try { + sendToDeadLetterAddress(null, ref); Review Comment: this looks sensible. Do we need to have some way to set a reason as to why the message is on the DLQ? Or will it be implicit by peeking at the empty id properties. ## artemis-server/src/main/java/org/apache/activemq/artemis/core/server/cluster/impl/ClusterConnectionBridge.java: ## @@ -201,12 +201,6 @@ protected Message beforeForward(final Message message, final SimpleString forwar byte[] queueIds = message.getExtraBytesProperty(idsHeaderName); - if (queueIds == null) { - // Sanity check only - ActiveMQServerLogger.LOGGER.noQueueIdDefined(message, messageCopy, idsHeaderName); Review Comment: seems like routing to the DLQ here is the simplest solution. ## artemis-server/src/main/java/org/apache/activemq/artemis/core/server/impl/QueueImpl.java: ## @@ -1284,6 +1284,15 @@ public void addTail(final MessageReference ref, final boolean direct) { if (scheduleIfPossible(ref)) { return; } + if (checkInvalid(ref)) { +//send to dlq +try { + sendToDeadLetterAddress(null, ref); Review Comment: do we need a new queue type and valid check, is is possible to just replace the error AMQ222110 with a sent do dlq? Issue Time Tracking --- Worklog Id: (was: 927157) Time Spent: 1h (was: 50m) > Do not allow sending messages directly to store-and-forward queues > -- > > Key: ARTEMIS-4924 > URL: https://issues.apache.org/jira/browse/ARTEMIS-4924 > Project: ActiveMQ Artemis > Issue Type: Bug > Components: Clustering >Affects Versions: 2.35.0 >Reporter: Howard Gao >Assignee: Howard Gao >Priority: Major > Time Spent: 1h > Remaining Estimate: 0h > > Currently, if a poison message missing queue information ends up in the SF > queue, the broker logs an error, like: > AMQ222110: no queue IDs defined... > but the message remains in the queue, with the result that the bridge > continuously reconnects, encounters the failure, then evicts the bridge > consumer. -- 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-4924) Do not allow sending messages directly to store-and-forward queues
[ https://issues.apache.org/jira/browse/ARTEMIS-4924?focusedWorklogId=927139=com.atlassian.jira.plugin.system.issuetabpanels:worklog-tabpanel#worklog-927139 ] ASF GitHub Bot logged work on ARTEMIS-4924: --- Author: ASF GitHub Bot Created on: 24/Jul/24 03:08 Start Date: 24/Jul/24 03:08 Worklog Time Spent: 10m Work Description: gaohoward commented on PR #5091: URL: https://github.com/apache/activemq-artemis/pull/5091#issuecomment-2246775844 > I'm running the whole test suite now. if it's good it LGTM. > > @gtully let me know what you think... I will post the results for the test suite here. We should probably merge this before the release if it's all good. Thanks @clebertsuconic Issue Time Tracking --- Worklog Id: (was: 927139) Time Spent: 50m (was: 40m) > Do not allow sending messages directly to store-and-forward queues > -- > > Key: ARTEMIS-4924 > URL: https://issues.apache.org/jira/browse/ARTEMIS-4924 > Project: ActiveMQ Artemis > Issue Type: Bug > Components: Clustering >Affects Versions: 2.35.0 >Reporter: Howard Gao >Assignee: Howard Gao >Priority: Major > Time Spent: 50m > Remaining Estimate: 0h > > Currently, if a poison message missing queue information ends up in the SF > queue, the broker logs an error, like: > AMQ222110: no queue IDs defined... > but the message remains in the queue, with the result that the bridge > continuously reconnects, encounters the failure, then evicts the bridge > consumer. -- 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-4924) Do not allow sending messages directly to store-and-forward queues
[ https://issues.apache.org/jira/browse/ARTEMIS-4924?focusedWorklogId=927135=com.atlassian.jira.plugin.system.issuetabpanels:worklog-tabpanel#worklog-927135 ] ASF GitHub Bot logged work on ARTEMIS-4924: --- Author: ASF GitHub Bot Created on: 23/Jul/24 23:22 Start Date: 23/Jul/24 23:22 Worklog Time Spent: 10m Work Description: clebertsuconic commented on PR #5091: URL: https://github.com/apache/activemq-artemis/pull/5091#issuecomment-2246472578 I'm running the whole test suite now. if it's good it LGTM. @gtully let me know what you think... I will post the results for the test suite here. We should probably merge this before the release if it's all good. Issue Time Tracking --- Worklog Id: (was: 927135) Time Spent: 40m (was: 0.5h) > Do not allow sending messages directly to store-and-forward queues > -- > > Key: ARTEMIS-4924 > URL: https://issues.apache.org/jira/browse/ARTEMIS-4924 > Project: ActiveMQ Artemis > Issue Type: Bug > Components: Clustering >Affects Versions: 2.35.0 >Reporter: Howard Gao >Assignee: Howard Gao >Priority: Major > Time Spent: 40m > Remaining Estimate: 0h > > Currently, if a poison message missing queue information ends up in the SF > queue, the broker logs an error, like: > AMQ222110: no queue IDs defined... > but the message remains in the queue, with the result that the bridge > continuously reconnects, encounters the failure, then evicts the bridge > consumer. -- 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-9539) Add sonar code quality report to Jenkins build
[ https://issues.apache.org/jira/browse/AMQ-9539?focusedWorklogId=927129=com.atlassian.jira.plugin.system.issuetabpanels:worklog-tabpanel#worklog-927129 ] ASF GitHub Bot logged work on AMQ-9539: --- Author: ASF GitHub Bot Created on: 23/Jul/24 21:47 Start Date: 23/Jul/24 21:47 Worklog Time Spent: 10m Work Description: mattrpav merged PR #1273: URL: https://github.com/apache/activemq/pull/1273 Issue Time Tracking --- Worklog Id: (was: 927129) Time Spent: 20m (was: 10m) > Add sonar code quality report to Jenkins build > -- > > Key: AMQ-9539 > URL: https://issues.apache.org/jira/browse/AMQ-9539 > Project: ActiveMQ Classic > Issue Type: Task >Reporter: Matt Pavlovich >Priority: Minor > 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-9539) Add sonar code quality report to Jenkins build
[ https://issues.apache.org/jira/browse/AMQ-9539?focusedWorklogId=927127=com.atlassian.jira.plugin.system.issuetabpanels:worklog-tabpanel#worklog-927127 ] ASF GitHub Bot logged work on AMQ-9539: --- Author: ASF GitHub Bot Created on: 23/Jul/24 21:44 Start Date: 23/Jul/24 21:44 Worklog Time Spent: 10m Work Description: mattrpav opened a new pull request, #1273: URL: https://github.com/apache/activemq/pull/1273 (no comment) Issue Time Tracking --- Worklog Id: (was: 927127) Remaining Estimate: 0h Time Spent: 10m > Add sonar code quality report to Jenkins build > -- > > Key: AMQ-9539 > URL: https://issues.apache.org/jira/browse/AMQ-9539 > Project: ActiveMQ Classic > Issue Type: Task >Reporter: Matt Pavlovich >Priority: Minor > Time Spent: 10m > 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-4930) Refactor storage manager tests
[ https://issues.apache.org/jira/browse/ARTEMIS-4930?focusedWorklogId=927121=com.atlassian.jira.plugin.system.issuetabpanels:worklog-tabpanel#worklog-927121 ] ASF GitHub Bot logged work on ARTEMIS-4930: --- Author: ASF GitHub Bot Created on: 23/Jul/24 21:05 Start Date: 23/Jul/24 21:05 Worklog Time Spent: 10m Work Description: jbertram commented on PR #5109: URL: https://github.com/apache/activemq-artemis/pull/5109#issuecomment-2246318621 I disabled the failing test in the first commit and enabled it again in the following commit. Issue Time Tracking --- Worklog Id: (was: 927121) Time Spent: 40m (was: 0.5h) > Refactor storage manager tests > -- > > Key: ARTEMIS-4930 > URL: https://issues.apache.org/jira/browse/ARTEMIS-4930 > Project: ActiveMQ Artemis > Issue Type: Improvement >Reporter: Justin Bertram >Assignee: Justin Bertram >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] [Work logged] (ARTEMIS-4930) Refactor storage manager tests
[ https://issues.apache.org/jira/browse/ARTEMIS-4930?focusedWorklogId=927120=com.atlassian.jira.plugin.system.issuetabpanels:worklog-tabpanel#worklog-927120 ] ASF GitHub Bot logged work on ARTEMIS-4930: --- Author: ASF GitHub Bot Created on: 23/Jul/24 21:04 Start Date: 23/Jul/24 21:04 Worklog Time Spent: 10m Work Description: jbertram commented on code in PR #5109: URL: https://github.com/apache/activemq-artemis/pull/5109#discussion_r1688727615 ## artemis-server/src/test/java/org/apache/activemq/artemis/core/config/BridgeConfigurationEncodingTest.java: ## @@ -0,0 +1,522 @@ +/* + * Licensed to the Apache Software Foundation (ASF) under one or more + * contributor license agreements. See the NOTICE file distributed with + * this work for additional information regarding copyright ownership. + * The ASF licenses this file to You under the Apache License, Version 2.0 + * (the "License"); you may not use this file except in compliance with + * the License. You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ +package org.apache.activemq.artemis.core.config; + +import java.util.List; +import java.util.Map; + +import org.apache.activemq.artemis.api.core.ActiveMQBuffer; +import org.apache.activemq.artemis.api.core.ActiveMQBuffers; +import org.apache.activemq.artemis.core.server.ComponentConfigurationRoutingType; +import org.apache.activemq.artemis.utils.DataConstants; +import org.junit.jupiter.api.Test; + +import static org.junit.jupiter.api.Assertions.assertArrayEquals; +import static org.junit.jupiter.api.Assertions.assertEquals; +import static org.junit.jupiter.api.Assertions.assertNotNull; +import static org.junit.jupiter.api.Assertions.assertNull; + +public class BridgeConfigurationEncodingTest { + + @Test + public void testEncodedBytesWithTransformer() { + doEncodedBytesTestImpl(true, true); + } + + @Test + public void testEncodedBytesWithTransformerWithNoProperties() { + doEncodedBytesTestImpl(true, false); + } + + @Test + public void testEncodedBytesWithoutTransformer() { + doEncodedBytesTestImpl(false, false); + } + + private void doEncodedBytesTestImpl(final boolean transformer, boolean properties) { + if (properties && !transformer) { + throw new IllegalArgumentException("Must have transformer to have properties for it"); + } + + final String name = "aa"; + final String parentName = "bb"; + final String queueName = "cc"; + final String forwardingAddress = "dd"; + final String filterString = "ee"; + final String discoveryGroup = "ff"; + final boolean ha = true; + final long retryInterval = 0L; + final double retryIntervalMultiplier = 0.0; + final int initialConnectAttempts = 0; + final int reconnectAttempts = 1; + final int reconnectAttemptsOnSameNode = 2; + final boolean useDuplicateDetection = false; + final int confirmationWindowSize = 3; + final int producerWindowSize = 4; + final long clientFailureCheckPeriod = 1L; + final String user = "gg"; + final String password = "hh"; + final long connectionTtl = 2L; + final long maxRetryInterval = 3L; + final int minLargeMessageSize = 5; + final long callTimeout = 4L; + final int concurrency = 6; + final boolean configurationManaged = false; + final ComponentConfigurationRoutingType routingType = ComponentConfigurationRoutingType.ANYCAST; + final long pendingAckTimeout = 5L; + final String staticConnector = "ii"; + + BridgeConfiguration configuration = new BridgeConfiguration() + .setName(name) + .setParentName(parentName) + .setQueueName(queueName) + .setForwardingAddress(forwardingAddress) + .setFilterString(filterString) + .setDiscoveryGroupName(discoveryGroup) + .setHA(ha) + .setRetryInterval(retryInterval) + .setRetryIntervalMultiplier(retryIntervalMultiplier) + .setInitialConnectAttempts(initialConnectAttempts) + .setReconnectAttempts(reconnectAttempts) + .setReconnectAttemptsOnSameNode(reconnectAttemptsOnSameNode) + .setUseDuplicateDetection(useDuplicateDetection) + .setConfirmationWindowSize(confirmationWindowSize) + .setProducerWindowSize(producerWindowSize) + .setClientFailureCheckPeriod(clientFailureCheckPeriod) + .setUser(user) + .setPassword(password) + .setConnectionTTL(connectionTtl) +
[jira] [Work logged] (ARTEMIS-4949) java.nio.channels.ClosedChannelException with slower devices and NIO journal
[ https://issues.apache.org/jira/browse/ARTEMIS-4949?focusedWorklogId=927096=com.atlassian.jira.plugin.system.issuetabpanels:worklog-tabpanel#worklog-927096 ] ASF GitHub Bot logged work on ARTEMIS-4949: --- Author: ASF GitHub Bot Created on: 23/Jul/24 16:56 Start Date: 23/Jul/24 16:56 Worklog Time Spent: 10m Work Description: clebertsuconic merged PR #5110: URL: https://github.com/apache/activemq-artemis/pull/5110 Issue Time Tracking --- Worklog Id: (was: 927096) Time Spent: 0.5h (was: 20m) > java.nio.channels.ClosedChannelException with slower devices and NIO journal > > > Key: ARTEMIS-4949 > URL: https://issues.apache.org/jira/browse/ARTEMIS-4949 > Project: ActiveMQ Artemis > Issue Type: Bug >Affects Versions: 2.35.0 >Reporter: Clebert Suconic >Assignee: Clebert Suconic >Priority: Major > Fix For: 2.36.0 > > Time Spent: 0.5h > Remaining Estimate: 0h > > It is possible to get the following exception, with NIO and on a NFS file > system. > {code:java} > java.nio.channels.ClosedChannelException: null > at > java.base/sun.nio.ch.FileChannelImpl.ensureOpen(FileChannelImpl.java:159) > ~[?:?] > at java.base/sun.nio.ch.FileChannelImpl.force(FileChannelImpl.java:459) > ~[?:?] > at > org.apache.activemq.artemis.core.io.nio.NIOSequentialFile.syncChannel(NIOSequentialFile.java:340) > ~[classes/:?] > at > org.apache.activemq.artemis.tests.unit.core.journal.impl.TimedBufferTest$3$1.syncChannel(TimedBufferTest.java:238) > ~[test-classes/:?] > at > org.apache.activemq.artemis.core.io.nio.NIOSequentialFile.sync(NIOSequentialFile.java:323) > ~[classes/:?] > at > org.apache.activemq.artemis.core.io.AbstractSequentialFile$LocalBufferObserver.checkSync(AbstractSequentialFile.java:304) > [classes/:?] > at > org.apache.activemq.artemis.core.io.buffer.TimedBuffer.flushBatch(TimedBuffer.java:362) > [classes/:?] > at > org.apache.activemq.artemis.core.io.buffer.TimedBuffer$CheckTimer.run(TimedBuffer.java:466) > [classes/:?] > at java.base/java.lang.Thread.run(Thread.java:833) [?:? > {code} > although I can see in the code inspection this could happen on a local file > system as well, but I could not reproduce this easily on a local file system. > (although it seems possible). -- 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-4949) java.nio.channels.ClosedChannelException with slower devices and NIO journal
[ https://issues.apache.org/jira/browse/ARTEMIS-4949?focusedWorklogId=927092=com.atlassian.jira.plugin.system.issuetabpanels:worklog-tabpanel#worklog-927092 ] ASF GitHub Bot logged work on ARTEMIS-4949: --- Author: ASF GitHub Bot Created on: 23/Jul/24 16:21 Start Date: 23/Jul/24 16:21 Worklog Time Spent: 10m Work Description: clebertsuconic commented on code in PR #5110: URL: https://github.com/apache/activemq-artemis/pull/5110#discussion_r1688352434 ## artemis-journal/src/main/java/org/apache/activemq/artemis/core/io/nio/NIOSequentialFile.java: ## @@ -387,7 +396,7 @@ public void blockingWriteDirect(ByteBuffer bytes, boolean sync, boolean releaseB internalWrite(bytes, sync, null, releaseBuffer); } - private synchronized void internalWrite(final ByteBuffer bytes, + private void internalWrite(final ByteBuffer bytes, Review Comment: I didn't mean to remove this synchronized. adding it back. Issue Time Tracking --- Worklog Id: (was: 927092) Time Spent: 20m (was: 10m) > java.nio.channels.ClosedChannelException with slower devices and NIO journal > > > Key: ARTEMIS-4949 > URL: https://issues.apache.org/jira/browse/ARTEMIS-4949 > Project: ActiveMQ Artemis > Issue Type: Bug >Affects Versions: 2.35.0 >Reporter: Clebert Suconic >Assignee: Clebert Suconic >Priority: Major > Fix For: 2.36.0 > > Time Spent: 20m > Remaining Estimate: 0h > > It is possible to get the following exception, with NIO and on a NFS file > system. > {code:java} > java.nio.channels.ClosedChannelException: null > at > java.base/sun.nio.ch.FileChannelImpl.ensureOpen(FileChannelImpl.java:159) > ~[?:?] > at java.base/sun.nio.ch.FileChannelImpl.force(FileChannelImpl.java:459) > ~[?:?] > at > org.apache.activemq.artemis.core.io.nio.NIOSequentialFile.syncChannel(NIOSequentialFile.java:340) > ~[classes/:?] > at > org.apache.activemq.artemis.tests.unit.core.journal.impl.TimedBufferTest$3$1.syncChannel(TimedBufferTest.java:238) > ~[test-classes/:?] > at > org.apache.activemq.artemis.core.io.nio.NIOSequentialFile.sync(NIOSequentialFile.java:323) > ~[classes/:?] > at > org.apache.activemq.artemis.core.io.AbstractSequentialFile$LocalBufferObserver.checkSync(AbstractSequentialFile.java:304) > [classes/:?] > at > org.apache.activemq.artemis.core.io.buffer.TimedBuffer.flushBatch(TimedBuffer.java:362) > [classes/:?] > at > org.apache.activemq.artemis.core.io.buffer.TimedBuffer$CheckTimer.run(TimedBuffer.java:466) > [classes/:?] > at java.base/java.lang.Thread.run(Thread.java:833) [?:? > {code} > although I can see in the code inspection this could happen on a local file > system as well, but I could not reproduce this easily on a local file system. > (although it seems possible). -- 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-4949) java.nio.channels.ClosedChannelException with slower devices and NIO journal
[ https://issues.apache.org/jira/browse/ARTEMIS-4949?focusedWorklogId=927089=com.atlassian.jira.plugin.system.issuetabpanels:worklog-tabpanel#worklog-927089 ] ASF GitHub Bot logged work on ARTEMIS-4949: --- Author: ASF GitHub Bot Created on: 23/Jul/24 16:17 Start Date: 23/Jul/24 16:17 Worklog Time Spent: 10m Work Description: clebertsuconic opened a new pull request, #5110: URL: https://github.com/apache/activemq-artemis/pull/5110 (no comment) Issue Time Tracking --- Worklog Id: (was: 927089) Remaining Estimate: 0h Time Spent: 10m > java.nio.channels.ClosedChannelException with slower devices and NIO journal > > > Key: ARTEMIS-4949 > URL: https://issues.apache.org/jira/browse/ARTEMIS-4949 > Project: ActiveMQ Artemis > Issue Type: Bug >Affects Versions: 2.35.0 >Reporter: Clebert Suconic >Assignee: Clebert Suconic >Priority: Major > Fix For: 2.36.0 > > Time Spent: 10m > Remaining Estimate: 0h > > It is possible to get the following exception, with NIO and on a NFS file > system. > {code:java} > java.nio.channels.ClosedChannelException: null > at > java.base/sun.nio.ch.FileChannelImpl.ensureOpen(FileChannelImpl.java:159) > ~[?:?] > at java.base/sun.nio.ch.FileChannelImpl.force(FileChannelImpl.java:459) > ~[?:?] > at > org.apache.activemq.artemis.core.io.nio.NIOSequentialFile.syncChannel(NIOSequentialFile.java:340) > ~[classes/:?] > at > org.apache.activemq.artemis.tests.unit.core.journal.impl.TimedBufferTest$3$1.syncChannel(TimedBufferTest.java:238) > ~[test-classes/:?] > at > org.apache.activemq.artemis.core.io.nio.NIOSequentialFile.sync(NIOSequentialFile.java:323) > ~[classes/:?] > at > org.apache.activemq.artemis.core.io.AbstractSequentialFile$LocalBufferObserver.checkSync(AbstractSequentialFile.java:304) > [classes/:?] > at > org.apache.activemq.artemis.core.io.buffer.TimedBuffer.flushBatch(TimedBuffer.java:362) > [classes/:?] > at > org.apache.activemq.artemis.core.io.buffer.TimedBuffer$CheckTimer.run(TimedBuffer.java:466) > [classes/:?] > at java.base/java.lang.Thread.run(Thread.java:833) [?:? > {code} > although I can see in the code inspection this could happen on a local file > system as well, but I could not reproduce this easily on a local file system. > (although it seems possible). -- 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-4923) Reduce synchronization in ManagementServiceImpl
[ https://issues.apache.org/jira/browse/ARTEMIS-4923?focusedWorklogId=927091=com.atlassian.jira.plugin.system.issuetabpanels:worklog-tabpanel#worklog-927091 ] ASF GitHub Bot logged work on ARTEMIS-4923: --- Author: ASF GitHub Bot Created on: 23/Jul/24 16:19 Start Date: 23/Jul/24 16:19 Worklog Time Spent: 10m Work Description: tabish121 merged PR #5087: URL: https://github.com/apache/activemq-artemis/pull/5087 Issue Time Tracking --- Worklog Id: (was: 927091) Time Spent: 1h 10m (was: 1h) > Reduce synchronization in ManagementServiceImpl > --- > > Key: ARTEMIS-4923 > URL: https://issues.apache.org/jira/browse/ARTEMIS-4923 > Project: ActiveMQ Artemis > Issue Type: Improvement >Reporter: Justin Bertram >Assignee: Justin Bertram >Priority: Major > Time Spent: 1h 10m > Remaining Estimate: 0h > > The {{ManagementService}} is used by the broker to register and unregister > components for management as well as send notifications. When the broker is > busy dealing with new sessions and auto-creating queues, addresses, etc. > there is a lot of contention in this service. However, much of the > synchronization can be removed completely or replaced with more efficient > thread-safe underlying data structures. -- 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-4930) Refactor storage manager tests
[ https://issues.apache.org/jira/browse/ARTEMIS-4930?focusedWorklogId=927073=com.atlassian.jira.plugin.system.issuetabpanels:worklog-tabpanel#worklog-927073 ] ASF GitHub Bot logged work on ARTEMIS-4930: --- Author: ASF GitHub Bot Created on: 23/Jul/24 14:52 Start Date: 23/Jul/24 14:52 Worklog Time Spent: 10m Work Description: gemmellr commented on code in PR #5109: URL: https://github.com/apache/activemq-artemis/pull/5109#discussion_r1688197298 ## artemis-server/src/test/java/org/apache/activemq/artemis/core/config/BridgeConfigurationEncodingTest.java: ## @@ -0,0 +1,522 @@ +/* + * Licensed to the Apache Software Foundation (ASF) under one or more + * contributor license agreements. See the NOTICE file distributed with + * this work for additional information regarding copyright ownership. + * The ASF licenses this file to You under the Apache License, Version 2.0 + * (the "License"); you may not use this file except in compliance with + * the License. You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ +package org.apache.activemq.artemis.core.config; + +import java.util.List; +import java.util.Map; + +import org.apache.activemq.artemis.api.core.ActiveMQBuffer; +import org.apache.activemq.artemis.api.core.ActiveMQBuffers; +import org.apache.activemq.artemis.core.server.ComponentConfigurationRoutingType; +import org.apache.activemq.artemis.utils.DataConstants; +import org.junit.jupiter.api.Test; + +import static org.junit.jupiter.api.Assertions.assertArrayEquals; +import static org.junit.jupiter.api.Assertions.assertEquals; +import static org.junit.jupiter.api.Assertions.assertNotNull; +import static org.junit.jupiter.api.Assertions.assertNull; + +public class BridgeConfigurationEncodingTest { + + @Test + public void testEncodedBytesWithTransformer() { + doEncodedBytesTestImpl(true, true); + } + + @Test + public void testEncodedBytesWithTransformerWithNoProperties() { + doEncodedBytesTestImpl(true, false); + } + + @Test + public void testEncodedBytesWithoutTransformer() { + doEncodedBytesTestImpl(false, false); + } + + private void doEncodedBytesTestImpl(final boolean transformer, boolean properties) { + if (properties && !transformer) { + throw new IllegalArgumentException("Must have transformer to have properties for it"); + } + + final String name = "aa"; + final String parentName = "bb"; + final String queueName = "cc"; + final String forwardingAddress = "dd"; + final String filterString = "ee"; + final String discoveryGroup = "ff"; + final boolean ha = true; + final long retryInterval = 0L; + final double retryIntervalMultiplier = 0.0; + final int initialConnectAttempts = 0; + final int reconnectAttempts = 1; + final int reconnectAttemptsOnSameNode = 2; + final boolean useDuplicateDetection = false; + final int confirmationWindowSize = 3; + final int producerWindowSize = 4; + final long clientFailureCheckPeriod = 1L; + final String user = "gg"; + final String password = "hh"; + final long connectionTtl = 2L; + final long maxRetryInterval = 3L; + final int minLargeMessageSize = 5; + final long callTimeout = 4L; + final int concurrency = 6; + final boolean configurationManaged = false; + final ComponentConfigurationRoutingType routingType = ComponentConfigurationRoutingType.ANYCAST; + final long pendingAckTimeout = 5L; + final String staticConnector = "ii"; + + BridgeConfiguration configuration = new BridgeConfiguration() + .setName(name) + .setParentName(parentName) + .setQueueName(queueName) + .setForwardingAddress(forwardingAddress) + .setFilterString(filterString) + .setDiscoveryGroupName(discoveryGroup) + .setHA(ha) + .setRetryInterval(retryInterval) + .setRetryIntervalMultiplier(retryIntervalMultiplier) + .setInitialConnectAttempts(initialConnectAttempts) + .setReconnectAttempts(reconnectAttempts) + .setReconnectAttemptsOnSameNode(reconnectAttemptsOnSameNode) + .setUseDuplicateDetection(useDuplicateDetection) + .setConfirmationWindowSize(confirmationWindowSize) + .setProducerWindowSize(producerWindowSize) + .setClientFailureCheckPeriod(clientFailureCheckPeriod) + .setUser(user) + .setPassword(password) + .setConnectionTTL(connectionTtl) +
[jira] [Work logged] (ARTEMIS-4939) Allow configuring request header size for embedded web server
[ https://issues.apache.org/jira/browse/ARTEMIS-4939?focusedWorklogId=927051=com.atlassian.jira.plugin.system.issuetabpanels:worklog-tabpanel#worklog-927051 ] ASF GitHub Bot logged work on ARTEMIS-4939: --- Author: ASF GitHub Bot Created on: 23/Jul/24 12:20 Start Date: 23/Jul/24 12:20 Worklog Time Spent: 10m Work Description: gtully commented on PR #5103: URL: https://github.com/apache/activemq-artemis/pull/5103#issuecomment-2245102635 If there are a bunch of other config that we currently don't support in the DTO, it may make sense to add a property[] and use beanutils to set arbitrary config properties. Issue Time Tracking --- Worklog Id: (was: 927051) Time Spent: 50m (was: 40m) > Allow configuring request header size for embedded web server > - > > Key: ARTEMIS-4939 > URL: https://issues.apache.org/jira/browse/ARTEMIS-4939 > Project: ActiveMQ Artemis > Issue Type: Bug >Reporter: Justin Bertram >Assignee: Justin Bertram >Priority: Major > Time Spent: 50m > Remaining Estimate: 0h > > In use-cases with large HTTP headers (e.g. using SSO) Jetty can choke on > large headers and emit a message like: > {noformat} > 2024-07-12 11:41:32,875 WARN [org.eclipse.jetty.http.HttpParser] Header is > too large 8193>8192{noformat} > This should be configurable in {{bootstrap.xml}}. -- 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-4924) Do not allow sending messages directly to store-and-forward queues
[ https://issues.apache.org/jira/browse/ARTEMIS-4924?focusedWorklogId=926981=com.atlassian.jira.plugin.system.issuetabpanels:worklog-tabpanel#worklog-926981 ] ASF GitHub Bot logged work on ARTEMIS-4924: --- Author: ASF GitHub Bot Created on: 23/Jul/24 02:15 Start Date: 23/Jul/24 02:15 Worklog Time Spent: 10m Work Description: gaohoward commented on PR #5091: URL: https://github.com/apache/activemq-artemis/pull/5091#issuecomment-2244120494 @gtully @jbertram I've upated the PR. Now when a cluster connection is activated, a Role is added so that when security is enabled any client will be denied of sending messages to store and forward queues. When security is disabled, or user overrides the role in security settings, messages are sent to snf queue will be moved to DLQ during delivery time. Issue Time Tracking --- Worklog Id: (was: 926981) Time Spent: 0.5h (was: 20m) > Do not allow sending messages directly to store-and-forward queues > -- > > Key: ARTEMIS-4924 > URL: https://issues.apache.org/jira/browse/ARTEMIS-4924 > Project: ActiveMQ Artemis > Issue Type: Bug > Components: Clustering >Affects Versions: 2.35.0 >Reporter: Howard Gao >Assignee: Howard Gao >Priority: Major > Time Spent: 0.5h > Remaining Estimate: 0h > > Currently, if a poison message missing queue information ends up in the SF > queue, the broker logs an error, like: > AMQ222110: no queue IDs defined... > but the message remains in the queue, with the result that the bridge > continuously reconnects, encounters the failure, then evicts the bridge > consumer. -- 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-9538) DataFileAccessorPoolTest backport byte buddy fix for JDK 17+
[ https://issues.apache.org/jira/browse/AMQ-9538?focusedWorklogId=926976=com.atlassian.jira.plugin.system.issuetabpanels:worklog-tabpanel#worklog-926976 ] ASF GitHub Bot logged work on AMQ-9538: --- Author: ASF GitHub Bot Created on: 23/Jul/24 01:04 Start Date: 23/Jul/24 01:04 Worklog Time Spent: 10m Work Description: mattrpav opened a new pull request, #1267: URL: https://github.com/apache/activemq/pull/1267 [x] KahaDB tests [ ] TODO: Fix up activemq-ra tests Issue Time Tracking --- Worklog Id: (was: 926976) Remaining Estimate: 0h Time Spent: 10m > DataFileAccessorPoolTest backport byte buddy fix for JDK 17+ > > > Key: AMQ-9538 > URL: https://issues.apache.org/jira/browse/AMQ-9538 > Project: ActiveMQ Classic > Issue Type: Task >Reporter: Matt Pavlovich >Assignee: Matt Pavlovich >Priority: Trivial > Fix For: 5.18.6 > > Time Spent: 10m > Remaining Estimate: 0h > > h/t [~cshannon] for finding this issue -- 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-4923) Reduce synchronization in ManagementServiceImpl
[ https://issues.apache.org/jira/browse/ARTEMIS-4923?focusedWorklogId=926958=com.atlassian.jira.plugin.system.issuetabpanels:worklog-tabpanel#worklog-926958 ] ASF GitHub Bot logged work on ARTEMIS-4923: --- Author: ASF GitHub Bot Created on: 22/Jul/24 20:41 Start Date: 22/Jul/24 20:41 Worklog Time Spent: 10m Work Description: jbertram commented on PR #5087: URL: https://github.com/apache/activemq-artemis/pull/5087#issuecomment-224311 @clebertsuconic, this should be ready to go. Issue Time Tracking --- Worklog Id: (was: 926958) Time Spent: 1h (was: 50m) > Reduce synchronization in ManagementServiceImpl > --- > > Key: ARTEMIS-4923 > URL: https://issues.apache.org/jira/browse/ARTEMIS-4923 > Project: ActiveMQ Artemis > Issue Type: Improvement >Reporter: Justin Bertram >Assignee: Justin Bertram >Priority: Major > Time Spent: 1h > Remaining Estimate: 0h > > The {{ManagementService}} is used by the broker to register and unregister > components for management as well as send notifications. When the broker is > busy dealing with new sessions and auto-creating queues, addresses, etc. > there is a lot of contention in this service. However, much of the > synchronization can be removed completely or replaced with more efficient > thread-safe underlying data structures. -- 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-4930) Refactor storage manager tests
[ https://issues.apache.org/jira/browse/ARTEMIS-4930?focusedWorklogId=926951=com.atlassian.jira.plugin.system.issuetabpanels:worklog-tabpanel#worklog-926951 ] ASF GitHub Bot logged work on ARTEMIS-4930: --- Author: ASF GitHub Bot Created on: 22/Jul/24 20:00 Start Date: 22/Jul/24 20:00 Worklog Time Spent: 10m Work Description: jbertram opened a new pull request, #5109: URL: https://github.com/apache/activemq-artemis/pull/5109 (no comment) Issue Time Tracking --- Worklog Id: (was: 926951) Remaining Estimate: 0h Time Spent: 10m > Refactor storage manager tests > -- > > Key: ARTEMIS-4930 > URL: https://issues.apache.org/jira/browse/ARTEMIS-4930 > Project: ActiveMQ Artemis > Issue Type: Improvement >Reporter: Justin Bertram >Assignee: Justin Bertram >Priority: Major > Time Spent: 10m > 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-4941) Remove update estimate after ARTEMIS-3067
[ https://issues.apache.org/jira/browse/ARTEMIS-4941?focusedWorklogId=926944=com.atlassian.jira.plugin.system.issuetabpanels:worklog-tabpanel#worklog-926944 ] ASF GitHub Bot logged work on ARTEMIS-4941: --- Author: ASF GitHub Bot Created on: 22/Jul/24 19:31 Start Date: 22/Jul/24 19:31 Worklog Time Spent: 10m Work Description: clebertsuconic merged PR #5108: URL: https://github.com/apache/activemq-artemis/pull/5108 Issue Time Tracking --- Worklog Id: (was: 926944) Time Spent: 20m (was: 10m) > Remove update estimate after ARTEMIS-3067 > - > > Key: ARTEMIS-4941 > URL: https://issues.apache.org/jira/browse/ARTEMIS-4941 > Project: ActiveMQ Artemis > Issue Type: Bug >Reporter: Clebert Suconic >Assignee: Clebert Suconic >Priority: Major > Time Spent: 20m > Remaining Estimate: 0h > > Since the new paging model, where we don't keep paged messages for long as we > used to keep, I'm going to remove the lazy application properties update done > per ARTEMIS-3067. > Say a message is updated after decoded for whatever reason, it gets difficult > to trace back to its original calculations. > I had already had issues in mirroring, and now it turns out that if you send > a message in AMQP and receive with Core, and paging is involved the > calculation will never return to 0 because the sizing might have been > updated. and it's fairly difficult to trace back to when the message is going > to leave the VM as it could still be referenced. > ARTEMIS-3067 alleviated some consequences of the page cache we used to have > with the older model, but with the newer model this should not be an issue > any longer. The remedy is having more consequences than intended anyways. -- 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-9537) The provided user-guide.html is out of date.
[ https://issues.apache.org/jira/browse/AMQ-9537?focusedWorklogId=926925=com.atlassian.jira.plugin.system.issuetabpanels:worklog-tabpanel#worklog-926925 ] ASF GitHub Bot logged work on AMQ-9537: --- Author: ASF GitHub Bot Created on: 22/Jul/24 18:02 Start Date: 22/Jul/24 18:02 Worklog Time Spent: 10m Work Description: AlexejTimonin commented on code in PR #1266: URL: https://github.com/apache/activemq/pull/1266#discussion_r1686933958 ## assembly/src/release/docs/user-guide.html: ## @@ -98,7 +98,7 @@ Access the web demos cd bin -activemq.bat console xbean:examples/conf/activemq-demo.xml +activemq.bat start xbean:../examples/conf/activemq-demo.xml Review Comment: Thank you for the review! You are correct that the activemq.bat file does not take any arguments directly, but it does pass the provided arguments to the jar using %*. For reference, see this line: https://github.com/apache/activemq/blob/6b6f5fbe24550452cd09aab9c4d7094cf782a04f/assembly/src/release/bin/activemq.bat#L99 Running ``activemq.bat`` without ``start`` argument will not start the broker. Issue Time Tracking --- Worklog Id: (was: 926925) Time Spent: 40m (was: 0.5h) > The provided user-guide.html is out of date. > > > Key: AMQ-9537 > URL: https://issues.apache.org/jira/browse/AMQ-9537 > Project: ActiveMQ Classic > Issue Type: Improvement >Reporter: Alexej Timonin >Priority: Major > Time Spent: 40m > Remaining Estimate: 0h > > The guide in docs directory is out of date. When following the guide things > are not working. How to start broker on windows does not work. Starting > broker with demo apps on windows does not work. The ANT part is irrelevant. -- 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-9537) The provided user-guide.html is out of date.
[ https://issues.apache.org/jira/browse/AMQ-9537?focusedWorklogId=926900=com.atlassian.jira.plugin.system.issuetabpanels:worklog-tabpanel#worklog-926900 ] ASF GitHub Bot logged work on AMQ-9537: --- Author: ASF GitHub Bot Created on: 22/Jul/24 16:34 Start Date: 22/Jul/24 16:34 Worklog Time Spent: 10m Work Description: jbonofre commented on code in PR #1266: URL: https://github.com/apache/activemq/pull/1266#discussion_r1686832983 ## assembly/src/release/examples/conf/jetty-demo-5.x.xml: ## @@ -0,0 +1,180 @@ + + + +http://www.springframework.org/schema/beans; xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance; Review Comment: I would completely remove this file as it's ActiveMQ 5.x specific (not 6). Issue Time Tracking --- Worklog Id: (was: 926900) Time Spent: 0.5h (was: 20m) > The provided user-guide.html is out of date. > > > Key: AMQ-9537 > URL: https://issues.apache.org/jira/browse/AMQ-9537 > Project: ActiveMQ Classic > Issue Type: Improvement >Reporter: Alexej Timonin >Priority: Major > Time Spent: 0.5h > Remaining Estimate: 0h > > The guide in docs directory is out of date. When following the guide things > are not working. How to start broker on windows does not work. Starting > broker with demo apps on windows does not work. The ANT part is irrelevant. -- 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-9537) The provided user-guide.html is out of date.
[ https://issues.apache.org/jira/browse/AMQ-9537?focusedWorklogId=926899=com.atlassian.jira.plugin.system.issuetabpanels:worklog-tabpanel#worklog-926899 ] ASF GitHub Bot logged work on AMQ-9537: --- Author: ASF GitHub Bot Created on: 22/Jul/24 16:33 Start Date: 22/Jul/24 16:33 Worklog Time Spent: 10m Work Description: jbonofre commented on code in PR #1266: URL: https://github.com/apache/activemq/pull/1266#discussion_r1686831691 ## assembly/src/release/docs/user-guide.html: ## @@ -98,7 +98,7 @@ Access the web demos cd bin -activemq.bat console xbean:examples/conf/activemq-demo.xml +activemq.bat start xbean:../examples/conf/activemq-demo.xml Review Comment: NB: `activemq console` is actually valid (at least for Unix shell script). `activemq.bat` doesn't really take any action arg. Maybe we should clean the arg. Issue Time Tracking --- Worklog Id: (was: 926899) Time Spent: 20m (was: 10m) > The provided user-guide.html is out of date. > > > Key: AMQ-9537 > URL: https://issues.apache.org/jira/browse/AMQ-9537 > Project: ActiveMQ Classic > Issue Type: Improvement >Reporter: Alexej Timonin >Priority: Major > Time Spent: 20m > Remaining Estimate: 0h > > The guide in docs directory is out of date. When following the guide things > are not working. How to start broker on windows does not work. Starting > broker with demo apps on windows does not work. The ANT part is irrelevant. -- 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-4941) Remove update estimate after ARTEMIS-3067
[ https://issues.apache.org/jira/browse/ARTEMIS-4941?focusedWorklogId=926898=com.atlassian.jira.plugin.system.issuetabpanels:worklog-tabpanel#worklog-926898 ] ASF GitHub Bot logged work on ARTEMIS-4941: --- Author: ASF GitHub Bot Created on: 22/Jul/24 16:25 Start Date: 22/Jul/24 16:25 Worklog Time Spent: 10m Work Description: clebertsuconic opened a new pull request, #5108: URL: https://github.com/apache/activemq-artemis/pull/5108 (no comment) Issue Time Tracking --- Worklog Id: (was: 926898) Remaining Estimate: 0h Time Spent: 10m > Remove update estimate after ARTEMIS-3067 > - > > Key: ARTEMIS-4941 > URL: https://issues.apache.org/jira/browse/ARTEMIS-4941 > Project: ActiveMQ Artemis > Issue Type: Bug >Reporter: Clebert Suconic >Assignee: Clebert Suconic >Priority: Major > Time Spent: 10m > Remaining Estimate: 0h > > Since the new paging model, where we don't keep paged messages for long as we > used to keep, I'm going to remove the lazy application properties update done > per ARTEMIS-3067. > Say a message is updated after decoded for whatever reason, it gets difficult > to trace back to its original calculations. > I had already had issues in mirroring, and now it turns out that if you send > a message in AMQP and receive with Core, and paging is involved the > calculation will never return to 0 because the sizing might have been > updated. and it's fairly difficult to trace back to when the message is going > to leave the VM as it could still be referenced. > ARTEMIS-3067 alleviated some consequences of the page cache we used to have > with the older model, but with the newer model this should not be an issue > any longer. The remedy is having more consequences than intended anyways. -- 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-4913) Provide more details on error callbacks
[ https://issues.apache.org/jira/browse/ARTEMIS-4913?focusedWorklogId=926884=com.atlassian.jira.plugin.system.issuetabpanels:worklog-tabpanel#worklog-926884 ] ASF GitHub Bot logged work on ARTEMIS-4913: --- Author: ASF GitHub Bot Created on: 22/Jul/24 14:38 Start Date: 22/Jul/24 14:38 Worklog Time Spent: 10m Work Description: gemmellr merged PR #5078: URL: https://github.com/apache/activemq-artemis/pull/5078 Issue Time Tracking --- Worklog Id: (was: 926884) Time Spent: 1h 10m (was: 1h) > Provide more details on error callbacks > --- > > Key: ARTEMIS-4913 > URL: https://issues.apache.org/jira/browse/ARTEMIS-4913 > Project: ActiveMQ Artemis > Issue Type: Improvement >Reporter: Justin Bertram >Assignee: Justin Bertram >Priority: Major > Time Spent: 1h 10m > Remaining Estimate: 0h > > Currently much of the code invoking callbacks on errors doesn't provide many > details. If, for example, {{getMessage()}} on the relevant {{Exception}} > returns {{null}} it's almost impossible to understand what actually failed > and how. -- 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-4821) OperationContext may leak between servers in embedded/test mode
[ https://issues.apache.org/jira/browse/ARTEMIS-4821?focusedWorklogId=926815=com.atlassian.jira.plugin.system.issuetabpanels:worklog-tabpanel#worklog-926815 ] ASF GitHub Bot logged work on ARTEMIS-4821: --- Author: ASF GitHub Bot Created on: 22/Jul/24 02:23 Start Date: 22/Jul/24 02:23 Worklog Time Spent: 10m Work Description: clebertsuconic merged PR #5104: URL: https://github.com/apache/activemq-artemis/pull/5104 Issue Time Tracking --- Worklog Id: (was: 926815) Time Spent: 20m (was: 10m) > OperationContext may leak between servers in embedded/test mode > --- > > Key: ARTEMIS-4821 > URL: https://issues.apache.org/jira/browse/ARTEMIS-4821 > Project: ActiveMQ Artemis > Issue Type: Bug >Affects Versions: 2.35.0 >Reporter: nmeylan >Priority: Minor > Attachments: MessageCount230Test.java, MessageCount235Test.java > > Time Spent: 20m > Remaining Estimate: 0h > > After upgrading from 2.30 to 2.34 one of my test case is failling > {{QueueImpl::getMessageCount()}} does not returns what was expected > See attached Test [^MessageCount235Test.java] case > *testMessageCount_whenFailoverHappenWhileBridgeIsOpen* which is failing, I > attempt other scenario which succeed > I link also [^MessageCount230Test.java] for version 2.30 (it is another file > because due to renaming of master/slave, SimpleString and migration to > junit5, code needs to be adapt), all scenario are succeed > > {code:java} > Topology: Simulating DC1 (1 primary + backup pair) > Simulating DC2 1 single primary node > 1. Produce messages on dc1Primary1 > 2. Start a bridge from dc1Primary1 to dc2Primary1 > 3. Stop dc1Primary1 while transfer has started but not finished > 4. dc1Backup1 become alive > 5. Start a bridge from dc1Backup1 to dc2Primary1 > 6. dc2Primary1 has received all messages produced originally > 7. Expected: messageCount on dc1Backup1 to be equal to 0, but actual is > 0 > Notes: if address is not paging, there is no issue > {code} > After investigation it happen only when address is paging. > Also as I face the issue only when using bridge, issue might be due to async > acknowledgement -- This message was sent by Atlassian Jira (v8.20.10#820010) - To unsubscribe, e-mail: issues-unsubscr...@activemq.apache.org For additional commands, e-mail: issues-h...@activemq.apache.org For further information, visit: https://activemq.apache.org/contact
[jira] [Work logged] (AMQ-9537) The provided user-guide.html is out of date.
[ https://issues.apache.org/jira/browse/AMQ-9537?focusedWorklogId=926808=com.atlassian.jira.plugin.system.issuetabpanels:worklog-tabpanel#worklog-926808 ] ASF GitHub Bot logged work on AMQ-9537: --- Author: ASF GitHub Bot Created on: 21/Jul/24 18:47 Start Date: 21/Jul/24 18:47 Worklog Time Spent: 10m Work Description: AlexejTimonin opened a new pull request, #1266: URL: https://github.com/apache/activemq/pull/1266 Updated things I've noticed that did not work when following the guide: - Windows example of starting the broker did not work. The broker on windows can be started with activemq.bat start - Removed the mentions of ANT in the guide, the ANT examples were removed in 5.16.0 - Updated instructions on how to start the broker on windows with web apps. - Starting broker with the demo apps did not work, updated the configuration to use the config the broker ships with, saved the 5.x demo config for reference. - Updated in the guide where to change the default credentials. Issue Time Tracking --- Worklog Id: (was: 926808) Remaining Estimate: 0h Time Spent: 10m > The provided user-guide.html is out of date. > > > Key: AMQ-9537 > URL: https://issues.apache.org/jira/browse/AMQ-9537 > Project: ActiveMQ Classic > Issue Type: Improvement >Reporter: Alexej Timonin >Priority: Major > Time Spent: 10m > 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-4821) OperationContext may leak between servers in embedded/test mode
[ https://issues.apache.org/jira/browse/ARTEMIS-4821?focusedWorklogId=926745=com.atlassian.jira.plugin.system.issuetabpanels:worklog-tabpanel#worklog-926745 ] ASF GitHub Bot logged work on ARTEMIS-4821: --- Author: ASF GitHub Bot Created on: 19/Jul/24 21:59 Start Date: 19/Jul/24 21:59 Worklog Time Spent: 10m Work Description: clebertsuconic opened a new pull request, #5104: URL: https://github.com/apache/activemq-artemis/pull/5104 I am also doing some tweaks into page counters and paging as part of this commit co-authored: nmeylan (test attached to the JIRA) Issue Time Tracking --- Worklog Id: (was: 926745) Remaining Estimate: 0h Time Spent: 10m > OperationContext may leak between servers in embedded/test mode > --- > > Key: ARTEMIS-4821 > URL: https://issues.apache.org/jira/browse/ARTEMIS-4821 > Project: ActiveMQ Artemis > Issue Type: Bug >Affects Versions: 2.35.0 >Reporter: nmeylan >Priority: Minor > Attachments: MessageCount230Test.java, MessageCount235Test.java > > Time Spent: 10m > Remaining Estimate: 0h > > After upgrading from 2.30 to 2.34 one of my test case is failling > {{QueueImpl::getMessageCount()}} does not returns what was expected > See attached Test [^MessageCount235Test.java] case > *testMessageCount_whenFailoverHappenWhileBridgeIsOpen* which is failing, I > attempt other scenario which succeed > I link also [^MessageCount230Test.java] for version 2.30 (it is another file > because due to renaming of master/slave, SimpleString and migration to > junit5, code needs to be adapt), all scenario are succeed > > {code:java} > Topology: Simulating DC1 (1 primary + backup pair) > Simulating DC2 1 single primary node > 1. Produce messages on dc1Primary1 > 2. Start a bridge from dc1Primary1 to dc2Primary1 > 3. Stop dc1Primary1 while transfer has started but not finished > 4. dc1Backup1 become alive > 5. Start a bridge from dc1Backup1 to dc2Primary1 > 6. dc2Primary1 has received all messages produced originally > 7. Expected: messageCount on dc1Backup1 to be equal to 0, but actual is > 0 > Notes: if address is not paging, there is no issue > {code} > After investigation it happen only when address is paging. > Also as I face the issue only when using bridge, issue might be due to async > acknowledgement -- This message was sent by Atlassian Jira (v8.20.10#820010) - To unsubscribe, e-mail: issues-unsubscr...@activemq.apache.org For additional commands, e-mail: issues-h...@activemq.apache.org For further information, visit: https://activemq.apache.org/contact
[jira] [Work logged] (ARTEMIS-4913) Provide more details on error callbacks
[ https://issues.apache.org/jira/browse/ARTEMIS-4913?focusedWorklogId=926732=com.atlassian.jira.plugin.system.issuetabpanels:worklog-tabpanel#worklog-926732 ] ASF GitHub Bot logged work on ARTEMIS-4913: --- Author: ASF GitHub Bot Created on: 19/Jul/24 20:06 Start Date: 19/Jul/24 20:06 Worklog Time Spent: 10m Work Description: jbertram commented on PR #5078: URL: https://github.com/apache/activemq-artemis/pull/5078#issuecomment-2240036059 I don't see any places where callbacks are sending these error messages back to clients. It's all for server-side logging as far as I can tell. Issue Time Tracking --- Worklog Id: (was: 926732) Time Spent: 1h (was: 50m) > Provide more details on error callbacks > --- > > Key: ARTEMIS-4913 > URL: https://issues.apache.org/jira/browse/ARTEMIS-4913 > Project: ActiveMQ Artemis > Issue Type: Improvement >Reporter: Justin Bertram >Assignee: Justin Bertram >Priority: Major > Time Spent: 1h > Remaining Estimate: 0h > > Currently much of the code invoking callbacks on errors doesn't provide many > details. If, for example, {{getMessage()}} on the relevant {{Exception}} > returns {{null}} it's almost impossible to understand what actually failed > and how. -- 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-4912) Filter is not enforced when sending message to queue via web console
[ https://issues.apache.org/jira/browse/ARTEMIS-4912?focusedWorklogId=926731=com.atlassian.jira.plugin.system.issuetabpanels:worklog-tabpanel#worklog-926731 ] ASF GitHub Bot logged work on ARTEMIS-4912: --- Author: ASF GitHub Bot Created on: 19/Jul/24 20:00 Start Date: 19/Jul/24 20:00 Worklog Time Spent: 10m Work Description: jbertram merged PR #5076: URL: https://github.com/apache/activemq-artemis/pull/5076 Issue Time Tracking --- Worklog Id: (was: 926731) Time Spent: 20m (was: 10m) > Filter is not enforced when sending message to queue via web console > > > Key: ARTEMIS-4912 > URL: https://issues.apache.org/jira/browse/ARTEMIS-4912 > Project: ActiveMQ Artemis > Issue Type: Bug >Reporter: Justin Bertram >Assignee: Justin Bertram >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-4939) Allow configuring request header size for embedded web server
[ https://issues.apache.org/jira/browse/ARTEMIS-4939?focusedWorklogId=926724=com.atlassian.jira.plugin.system.issuetabpanels:worklog-tabpanel#worklog-926724 ] ASF GitHub Bot logged work on ARTEMIS-4939: --- Author: ASF GitHub Bot Created on: 19/Jul/24 18:45 Start Date: 19/Jul/24 18:45 Worklog Time Spent: 10m Work Description: jbertram commented on PR #5103: URL: https://github.com/apache/activemq-artemis/pull/5103#issuecomment-2239907314 Don't merge this just yet. I think I'm going to add the ability to configure the max _response_ header size as well since large request headers may result in large response headers. Issue Time Tracking --- Worklog Id: (was: 926724) Time Spent: 40m (was: 0.5h) > Allow configuring request header size for embedded web server > - > > Key: ARTEMIS-4939 > URL: https://issues.apache.org/jira/browse/ARTEMIS-4939 > Project: ActiveMQ Artemis > Issue Type: Bug >Reporter: Justin Bertram >Assignee: Justin Bertram >Priority: Major > Time Spent: 40m > Remaining Estimate: 0h > > In use-cases with large HTTP headers (e.g. using SSO) Jetty can choke on > large headers and emit a message like: > {noformat} > 2024-07-12 11:41:32,875 WARN [org.eclipse.jetty.http.HttpParser] Header is > too large 8193>8192{noformat} > This should be configurable in {{bootstrap.xml}}. -- 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-4939) Allow configuring request header size for embedded web server
[ https://issues.apache.org/jira/browse/ARTEMIS-4939?focusedWorklogId=926723=com.atlassian.jira.plugin.system.issuetabpanels:worklog-tabpanel#worklog-926723 ] ASF GitHub Bot logged work on ARTEMIS-4939: --- Author: ASF GitHub Bot Created on: 19/Jul/24 18:26 Start Date: 19/Jul/24 18:26 Worklog Time Spent: 10m Work Description: jbertram commented on code in PR #5103: URL: https://github.com/apache/activemq-artemis/pull/5103#discussion_r1684801694 ## artemis-dto/src/main/java/org/apache/activemq/artemis/dto/WebServerDTO.java: ## @@ -107,6 +107,9 @@ public class WebServerDTO extends ComponentDTO { @XmlAttribute public Integer scanPeriod; + @XmlAttribute + public Integer requestHeaderSize; Review Comment: I actually had the same thought. Issue Time Tracking --- Worklog Id: (was: 926723) Time Spent: 0.5h (was: 20m) > Allow configuring request header size for embedded web server > - > > Key: ARTEMIS-4939 > URL: https://issues.apache.org/jira/browse/ARTEMIS-4939 > Project: ActiveMQ Artemis > Issue Type: Bug >Reporter: Justin Bertram >Assignee: Justin Bertram >Priority: Major > Time Spent: 0.5h > Remaining Estimate: 0h > > In use-cases with large HTTP headers (e.g. using SSO) Jetty can choke on > large headers and emit a message like: > {noformat} > 2024-07-12 11:41:32,875 WARN [org.eclipse.jetty.http.HttpParser] Header is > too large 8193>8192{noformat} > This should be configurable in {{bootstrap.xml}}. -- 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-4939) Allow configuring request header size for embedded web server
[ https://issues.apache.org/jira/browse/ARTEMIS-4939?focusedWorklogId=926722=com.atlassian.jira.plugin.system.issuetabpanels:worklog-tabpanel#worklog-926722 ] ASF GitHub Bot logged work on ARTEMIS-4939: --- Author: ASF GitHub Bot Created on: 19/Jul/24 18:24 Start Date: 19/Jul/24 18:24 Worklog Time Spent: 10m Work Description: tabish121 commented on code in PR #5103: URL: https://github.com/apache/activemq-artemis/pull/5103#discussion_r1684798818 ## artemis-dto/src/main/java/org/apache/activemq/artemis/dto/WebServerDTO.java: ## @@ -107,6 +107,9 @@ public class WebServerDTO extends ComponentDTO { @XmlAttribute public Integer scanPeriod; + @XmlAttribute + public Integer requestHeaderSize; Review Comment: My only comment here is that this attribute name, while matching the HttpConfiguration type's value isn't exactly self documenting as it doesn't really convey it is a limit unlike the other options in this DTO. I'd have gone with something like requestHeaderSizeLimit or maxRequestHeaderSize just so it conveys the intent more clearly. Issue Time Tracking --- Worklog Id: (was: 926722) Time Spent: 20m (was: 10m) > Allow configuring request header size for embedded web server > - > > Key: ARTEMIS-4939 > URL: https://issues.apache.org/jira/browse/ARTEMIS-4939 > Project: ActiveMQ Artemis > Issue Type: Bug >Reporter: Justin Bertram >Assignee: Justin Bertram >Priority: Major > Time Spent: 20m > Remaining Estimate: 0h > > In use-cases with large HTTP headers (e.g. using SSO) Jetty can choke on > large headers and emit a message like: > {noformat} > 2024-07-12 11:41:32,875 WARN [org.eclipse.jetty.http.HttpParser] Header is > too large 8193>8192{noformat} > This should be configurable in {{bootstrap.xml}}. -- 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-4939) Allow configuring request header size for embedded web server
[ https://issues.apache.org/jira/browse/ARTEMIS-4939?focusedWorklogId=926721=com.atlassian.jira.plugin.system.issuetabpanels:worklog-tabpanel#worklog-926721 ] ASF GitHub Bot logged work on ARTEMIS-4939: --- Author: ASF GitHub Bot Created on: 19/Jul/24 17:53 Start Date: 19/Jul/24 17:53 Worklog Time Spent: 10m Work Description: jbertram opened a new pull request, #5103: URL: https://github.com/apache/activemq-artemis/pull/5103 (no comment) Issue Time Tracking --- Worklog Id: (was: 926721) Remaining Estimate: 0h Time Spent: 10m > Allow configuring request header size for embedded web server > - > > Key: ARTEMIS-4939 > URL: https://issues.apache.org/jira/browse/ARTEMIS-4939 > Project: ActiveMQ Artemis > Issue Type: Bug >Reporter: Justin Bertram >Assignee: Justin Bertram >Priority: Major > Time Spent: 10m > Remaining Estimate: 0h > > In use-cases with large HTTP headers (e.g. using SSO) Jetty can choke on > large headers and emit a message like: > {noformat} > 2024-07-12 11:41:32,875 WARN [org.eclipse.jetty.http.HttpParser] Header is > too large 8193>8192{noformat} > This should be configurable in {{bootstrap.xml}}. -- 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-4936) Verify response correlationId in Core client
[ https://issues.apache.org/jira/browse/ARTEMIS-4936?focusedWorklogId=926702=com.atlassian.jira.plugin.system.issuetabpanels:worklog-tabpanel#worklog-926702 ] ASF GitHub Bot logged work on ARTEMIS-4936: --- Author: ASF GitHub Bot Created on: 19/Jul/24 14:05 Start Date: 19/Jul/24 14:05 Worklog Time Spent: 10m Work Description: tabish121 merged PR #5102: URL: https://github.com/apache/activemq-artemis/pull/5102 Issue Time Tracking --- Worklog Id: (was: 926702) Time Spent: 0.5h (was: 20m) > Verify response correlationId in Core client > > > Key: ARTEMIS-4936 > URL: https://issues.apache.org/jira/browse/ARTEMIS-4936 > Project: ActiveMQ Artemis > Issue Type: Bug >Reporter: Justin Bertram >Assignee: Justin Bertram >Priority: Major > Time Spent: 0.5h > Remaining Estimate: 0h > > Consider a Core client sending packets with blocking semantics and a > confirmationWindowSize >= 0. For example, consider such a client sending > multiple durable messages in a transaction and then committing that > transaction. If, for whatever reason, the response for the commit packet is > never returned it's possible that the call to commit will _still_ succeed. > This is because {{ChannelImple}} does not verify the correlation ID set on > the commit packet and will interpret a _previous_ response as the current > response to the commit. -- 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-4936) Verify response correlationId in Core client
[ https://issues.apache.org/jira/browse/ARTEMIS-4936?focusedWorklogId=926618=com.atlassian.jira.plugin.system.issuetabpanels:worklog-tabpanel#worklog-926618 ] ASF GitHub Bot logged work on ARTEMIS-4936: --- Author: ASF GitHub Bot Created on: 19/Jul/24 04:34 Start Date: 19/Jul/24 04:34 Worklog Time Spent: 10m Work Description: jbertram commented on PR #5102: URL: https://github.com/apache/activemq-artemis/pull/5102#issuecomment-2238110669 FYI - the full test-suite looks good on this. Issue Time Tracking --- Worklog Id: (was: 926618) Time Spent: 20m (was: 10m) > Verify response correlationId in Core client > > > Key: ARTEMIS-4936 > URL: https://issues.apache.org/jira/browse/ARTEMIS-4936 > Project: ActiveMQ Artemis > Issue Type: Bug >Reporter: Justin Bertram >Assignee: Justin Bertram >Priority: Major > Time Spent: 20m > Remaining Estimate: 0h > > Consider a Core client sending packets with blocking semantics and a > confirmationWindowSize >= 0. For example, consider such a client sending > multiple durable messages in a transaction and then committing that > transaction. If, for whatever reason, the response for the commit packet is > never returned it's possible that the call to commit will _still_ succeed. > This is because {{ChannelImple}} does not verify the correlation ID set on > the commit packet and will interpret a _previous_ response as the current > response to the commit. -- 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-4936) Verify response correlationId in Core client
[ https://issues.apache.org/jira/browse/ARTEMIS-4936?focusedWorklogId=926617=com.atlassian.jira.plugin.system.issuetabpanels:worklog-tabpanel#worklog-926617 ] ASF GitHub Bot logged work on ARTEMIS-4936: --- Author: ASF GitHub Bot Created on: 19/Jul/24 04:15 Start Date: 19/Jul/24 04:15 Worklog Time Spent: 10m Work Description: jbertram opened a new pull request, #5102: URL: https://github.com/apache/activemq-artemis/pull/5102 If, for whatever reason, the response for a packet sent with blocking semantics is never returned it's possible that an async response received in the interventing time will be interpreted as the current response. This is because ChannelImpl does not verify the correlation ID set on the response packet when it is received. Issue Time Tracking --- Worklog Id: (was: 926617) Remaining Estimate: 0h Time Spent: 10m > Verify response correlationId in Core client > > > Key: ARTEMIS-4936 > URL: https://issues.apache.org/jira/browse/ARTEMIS-4936 > Project: ActiveMQ Artemis > Issue Type: Bug >Reporter: Justin Bertram >Assignee: Justin Bertram >Priority: Major > Time Spent: 10m > Remaining Estimate: 0h > > Consider a Core client sending packets with blocking semantics and a > confirmationWindowSize >= 0. For example, consider such a client sending > multiple durable messages in a transaction and then committing that > transaction. If, for whatever reason, the response for the commit packet is > never returned it's possible that the call to commit will _still_ succeed. > This is because {{ChannelImple}} does not verify the correlation ID set on > the commit packet and will interpret a _previous_ response as the current > response to the commit. -- 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-4913) Provide more details on error callbacks
[ https://issues.apache.org/jira/browse/ARTEMIS-4913?focusedWorklogId=926559=com.atlassian.jira.plugin.system.issuetabpanels:worklog-tabpanel#worklog-926559 ] ASF GitHub Bot logged work on ARTEMIS-4913: --- Author: ASF GitHub Bot Created on: 18/Jul/24 20:39 Start Date: 18/Jul/24 20:39 Worklog Time Spent: 10m Work Description: tabish121 commented on PR #5078: URL: https://github.com/apache/activemq-artemis/pull/5078#issuecomment-2237533585 > Some of the changes add file names to the error messages...can those message ever make it out to a client? Might not want to be passing filenames if it could? It looks like some of the existing loggers already do add filenames for a quick scan. Issue Time Tracking --- Worklog Id: (was: 926559) Time Spent: 50m (was: 40m) > Provide more details on error callbacks > --- > > Key: ARTEMIS-4913 > URL: https://issues.apache.org/jira/browse/ARTEMIS-4913 > Project: ActiveMQ Artemis > Issue Type: Improvement >Reporter: Justin Bertram >Assignee: Justin Bertram >Priority: Major > Time Spent: 50m > Remaining Estimate: 0h > > Currently much of the code invoking callbacks on errors doesn't provide many > details. If, for example, {{getMessage()}} on the relevant {{Exception}} > returns {{null}} it's almost impossible to understand what actually failed > and how. -- 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-4923) Reduce synchronization in ManagementServiceImpl
[ https://issues.apache.org/jira/browse/ARTEMIS-4923?focusedWorklogId=926549=com.atlassian.jira.plugin.system.issuetabpanels:worklog-tabpanel#worklog-926549 ] ASF GitHub Bot logged work on ARTEMIS-4923: --- Author: ASF GitHub Bot Created on: 18/Jul/24 20:07 Start Date: 18/Jul/24 20:07 Worklog Time Spent: 10m Work Description: clebertsuconic commented on PR #5087: URL: https://github.com/apache/activemq-artemis/pull/5087#issuecomment-2237472962 @jbertram can you fix conflicts please? there's a conflict with another PR merged from you. I wasn't 100% sure how to fix it.. if you could do it please? Issue Time Tracking --- Worklog Id: (was: 926549) Time Spent: 50m (was: 40m) > Reduce synchronization in ManagementServiceImpl > --- > > Key: ARTEMIS-4923 > URL: https://issues.apache.org/jira/browse/ARTEMIS-4923 > Project: ActiveMQ Artemis > Issue Type: Improvement >Reporter: Justin Bertram >Assignee: Justin Bertram >Priority: Major > Time Spent: 50m > Remaining Estimate: 0h > > The {{ManagementService}} is used by the broker to register and unregister > components for management as well as send notifications. When the broker is > busy dealing with new sessions and auto-creating queues, addresses, etc. > there is a lot of contention in this service. However, much of the > synchronization can be removed completely or replaced with more efficient > thread-safe underlying data structures. -- 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-4910) Synchronization of HA cluster after modifying divert with transformer failure
[ https://issues.apache.org/jira/browse/ARTEMIS-4910?focusedWorklogId=926352=com.atlassian.jira.plugin.system.issuetabpanels:worklog-tabpanel#worklog-926352 ] ASF GitHub Bot logged work on ARTEMIS-4910: --- Author: ASF GitHub Bot Created on: 17/Jul/24 14:00 Start Date: 17/Jul/24 14:00 Worklog Time Spent: 10m Work Description: jbertram commented on code in PR #5079: URL: https://github.com/apache/activemq-artemis/pull/5079#discussion_r168429 ## artemis-server/src/test/java/org/apache/activemq/artemis/core/config/DivertConfigurationEncodingTest.java: ## @@ -0,0 +1,47 @@ +/* + * Licensed to the Apache Software Foundation (ASF) under one or more + * contributor license agreements. See the NOTICE file distributed with + * this work for additional information regarding copyright ownership. + * The ASF licenses this file to You under the Apache License, Version 2.0 + * (the "License"); you may not use this file except in compliance with + * the License. You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ +package org.apache.activemq.artemis.core.config; + +import org.apache.activemq.artemis.api.core.ActiveMQBuffer; +import org.apache.activemq.artemis.api.core.ActiveMQBuffers; +import org.apache.activemq.artemis.core.server.ComponentConfigurationRoutingType; +import org.junit.jupiter.api.Test; + +import static org.junit.jupiter.api.Assertions.assertEquals; + +public class DivertConfigurationEncodingTest { + + @Test + public void testStoreDivertConfigurationWithTransformerNoProperties() { + DivertConfiguration configuration = new DivertConfiguration(); + configuration.setName("myDivertName"); + configuration.setAddress("myDivertAddress"); + configuration.setForwardingAddress("myDivertForwardingAddress"); + configuration.setFilterString("foo='foo'"); + configuration.setRoutingName("myDivertRoutingName"); + configuration.setExclusive(false); + configuration.setRoutingType(ComponentConfigurationRoutingType.ANYCAST); + TransformerConfiguration myDivertTransformer = new TransformerConfiguration("myDivertTransformer"); + myDivertTransformer.getProperties().put("foo", "foo"); + configuration.setTransformerConfiguration(myDivertTransformer); + + int encodeSize = configuration.getEncodeSize(); + ActiveMQBuffer data = ActiveMQBuffers.fixedBuffer(encodeSize); + configuration.encode(data); + assertEquals(encodeSize, data.writerIndex()); Review Comment: Thanks, Robbie! Issue Time Tracking --- Worklog Id: (was: 926352) Time Spent: 2.5h (was: 2h 20m) > Synchronization of HA cluster after modifying divert with transformer failure > - > > Key: ARTEMIS-4910 > URL: https://issues.apache.org/jira/browse/ARTEMIS-4910 > Project: ActiveMQ Artemis > Issue Type: Bug > Components: Broker, Clustering, Configuration >Affects Versions: 2.35.0 >Reporter: Kirill Chadakin >Assignee: Justin Bertram >Priority: Major > Fix For: 2.36.0 > > Attachments: backup_artemis.log, primary_artemis.log > > Time Spent: 2.5h > Remaining Estimate: 0h > > Modifying divert with transformer in a high-availability (HA) cluster with > Apache Artemis by {{broker.xml}} results in an {{IndexOutOfBoundsException}} > error in the backup logs. This error breaks the connection between the > primary and backup brokers, initiates a quorum vote, and causes the backup to > become active, leading to both brokers operating in parallel. > h2. Steps to Reproduce the Error > 1. Create primary broker > {noformat} > apache-artemis-2.35.0/bin/artemis.cmd create --host=localhost > --default-port=61611 --http-port=8111 --clustered --cluster-user=cls > --cluster-password=cls --replicated --name=br11 --user=usr --password=usr > --allow-anonymous --no-autotune --no-amqp-acceptor --no-hornetq-acceptor > --no-mqtt-acceptor --no-stomp-acceptor br11{noformat} > 2. Create backup broker > {noformat} > apache-artemis-2.35.0/bin/artemis.cmd create --host=localhost > --default-port=61612 --http-port=8112 --clustered --cluster-user=cls > --cluster-password=cls --replicated --backup --name=br12 --user=usr > --password=usr --allow-anonymous --no-autotune --no-amqp-acceptor > --no-hornetq-acceptor --no-mqtt-acceptor --no-stomp-acceptor br12{noformat} > 3. Start brokers > 4. Add
[jira] [Work logged] (ARTEMIS-4910) Synchronization of HA cluster after modifying divert with transformer failure
[ https://issues.apache.org/jira/browse/ARTEMIS-4910?focusedWorklogId=926343=com.atlassian.jira.plugin.system.issuetabpanels:worklog-tabpanel#worklog-926343 ] ASF GitHub Bot logged work on ARTEMIS-4910: --- Author: ASF GitHub Bot Created on: 17/Jul/24 13:23 Start Date: 17/Jul/24 13:23 Worklog Time Spent: 10m Work Description: gemmellr commented on code in PR #5079: URL: https://github.com/apache/activemq-artemis/pull/5079#discussion_r1681046187 ## artemis-server/src/test/java/org/apache/activemq/artemis/core/config/DivertConfigurationEncodingTest.java: ## @@ -0,0 +1,47 @@ +/* + * Licensed to the Apache Software Foundation (ASF) under one or more + * contributor license agreements. See the NOTICE file distributed with + * this work for additional information regarding copyright ownership. + * The ASF licenses this file to You under the Apache License, Version 2.0 + * (the "License"); you may not use this file except in compliance with + * the License. You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ +package org.apache.activemq.artemis.core.config; + +import org.apache.activemq.artemis.api.core.ActiveMQBuffer; +import org.apache.activemq.artemis.api.core.ActiveMQBuffers; +import org.apache.activemq.artemis.core.server.ComponentConfigurationRoutingType; +import org.junit.jupiter.api.Test; + +import static org.junit.jupiter.api.Assertions.assertEquals; + +public class DivertConfigurationEncodingTest { + + @Test + public void testStoreDivertConfigurationWithTransformerNoProperties() { + DivertConfiguration configuration = new DivertConfiguration(); + configuration.setName("myDivertName"); + configuration.setAddress("myDivertAddress"); + configuration.setForwardingAddress("myDivertForwardingAddress"); + configuration.setFilterString("foo='foo'"); + configuration.setRoutingName("myDivertRoutingName"); + configuration.setExclusive(false); + configuration.setRoutingType(ComponentConfigurationRoutingType.ANYCAST); + TransformerConfiguration myDivertTransformer = new TransformerConfiguration("myDivertTransformer"); + myDivertTransformer.getProperties().put("foo", "foo"); + configuration.setTransformerConfiguration(myDivertTransformer); + + int encodeSize = configuration.getEncodeSize(); + ActiveMQBuffer data = ActiveMQBuffers.fixedBuffer(encodeSize); + configuration.encode(data); + assertEquals(encodeSize, data.writerIndex()); Review Comment: Looks good. I expanded the newest test in https://github.com/apache/activemq-artemis/commit/59e7a3c01f to also cover the other 2 cases that had roundtrip-variant checks. Issue Time Tracking --- Worklog Id: (was: 926343) Time Spent: 2h 20m (was: 2h 10m) > Synchronization of HA cluster after modifying divert with transformer failure > - > > Key: ARTEMIS-4910 > URL: https://issues.apache.org/jira/browse/ARTEMIS-4910 > Project: ActiveMQ Artemis > Issue Type: Bug > Components: Broker, Clustering, Configuration >Affects Versions: 2.35.0 >Reporter: Kirill Chadakin >Assignee: Justin Bertram >Priority: Major > Attachments: backup_artemis.log, primary_artemis.log > > Time Spent: 2h 20m > Remaining Estimate: 0h > > Modifying divert with transformer in a high-availability (HA) cluster with > Apache Artemis by {{broker.xml}} results in an {{IndexOutOfBoundsException}} > error in the backup logs. This error breaks the connection between the > primary and backup brokers, initiates a quorum vote, and causes the backup to > become active, leading to both brokers operating in parallel. > h2. Steps to Reproduce the Error > 1. Create primary broker > {noformat} > apache-artemis-2.35.0/bin/artemis.cmd create --host=localhost > --default-port=61611 --http-port=8111 --clustered --cluster-user=cls > --cluster-password=cls --replicated --name=br11 --user=usr --password=usr > --allow-anonymous --no-autotune --no-amqp-acceptor --no-hornetq-acceptor > --no-mqtt-acceptor --no-stomp-acceptor br11{noformat} > 2. Create backup broker > {noformat} > apache-artemis-2.35.0/bin/artemis.cmd create --host=localhost > --default-port=61612 --http-port=8112 --clustered --cluster-user=cls > --cluster-password=cls --replicated --backup --name=br12 --user=usr > --password=usr --allow-anonymous
[jira] [Work logged] (ARTEMIS-4910) Synchronization of HA cluster after modifying divert with transformer failure
[ https://issues.apache.org/jira/browse/ARTEMIS-4910?focusedWorklogId=926341=com.atlassian.jira.plugin.system.issuetabpanels:worklog-tabpanel#worklog-926341 ] ASF GitHub Bot logged work on ARTEMIS-4910: --- Author: ASF GitHub Bot Created on: 17/Jul/24 13:11 Start Date: 17/Jul/24 13:11 Worklog Time Spent: 10m Work Description: gemmellr merged PR #5079: URL: https://github.com/apache/activemq-artemis/pull/5079 Issue Time Tracking --- Worklog Id: (was: 926341) Time Spent: 2h 10m (was: 2h) > Synchronization of HA cluster after modifying divert with transformer failure > - > > Key: ARTEMIS-4910 > URL: https://issues.apache.org/jira/browse/ARTEMIS-4910 > Project: ActiveMQ Artemis > Issue Type: Bug > Components: Broker, Clustering, Configuration >Affects Versions: 2.35.0 >Reporter: Kirill Chadakin >Assignee: Justin Bertram >Priority: Major > Attachments: backup_artemis.log, primary_artemis.log > > Time Spent: 2h 10m > Remaining Estimate: 0h > > Modifying divert with transformer in a high-availability (HA) cluster with > Apache Artemis by {{broker.xml}} results in an {{IndexOutOfBoundsException}} > error in the backup logs. This error breaks the connection between the > primary and backup brokers, initiates a quorum vote, and causes the backup to > become active, leading to both brokers operating in parallel. > h2. Steps to Reproduce the Error > 1. Create primary broker > {noformat} > apache-artemis-2.35.0/bin/artemis.cmd create --host=localhost > --default-port=61611 --http-port=8111 --clustered --cluster-user=cls > --cluster-password=cls --replicated --name=br11 --user=usr --password=usr > --allow-anonymous --no-autotune --no-amqp-acceptor --no-hornetq-acceptor > --no-mqtt-acceptor --no-stomp-acceptor br11{noformat} > 2. Create backup broker > {noformat} > apache-artemis-2.35.0/bin/artemis.cmd create --host=localhost > --default-port=61612 --http-port=8112 --clustered --cluster-user=cls > --cluster-password=cls --replicated --backup --name=br12 --user=usr > --password=usr --allow-anonymous --no-autotune --no-amqp-acceptor > --no-hornetq-acceptor --no-mqtt-acceptor --no-stomp-acceptor br12{noformat} > 3. Start brokers > 4. Add test addresses to primary {{broker.xml}}: > {code:xml} > > > > > > > > > > {code} > 5. Add divert with transformer to primary broker.xml > {code:xml} > > > TEST.IN > TEST.OUT > > > > org.apache.activemq.artemis.core.server.transformer.AddHeadersTransformer > > > {code} > h2. Result > - an {{IndexOutOfBoundsException}} error will appear in the backup logs, > e.g.: > {noformat} > ERROR [org.apache.activemq.artemis.core.client] AMQ214013: Failed to decode > packet > java.lang.IndexOutOfBoundsException: readerIndex(28) + length(209) exceeds > writerIndex(233): PooledUnsafeDirectByteBuf(ridx: 28, widx: 233, cap: 233) > at > io.netty.buffer.AbstractByteBuf.checkReadableBytes0(AbstractByteBuf.java:1442) > ~[netty-buffer-4.1.111.Final.jar:4.1.111.Final] > at > io.netty.buffer.AbstractByteBuf.checkReadableBytes(AbstractByteBuf.java:1428) > ~[netty-buffer-4.1.111.Final.jar:4.1.111.Final] > at io.netty.buffer.AbstractByteBuf.readBytes(AbstractByteBuf.java:895) > ~[netty-buffer-4.1.111.Final.jar:4.1.111.Final] > at io.netty.buffer.AbstractByteBuf.readBytes(AbstractByteBuf.java:903) > ~[netty-buffer-4.1.111.Final.jar:4.1.111.Final] > at io.netty.buffer.WrappedByteBuf.readBytes(WrappedByteBuf.java:657) > ~[netty-buffer-4.1.111.Final.jar:4.1.111.Final] > at > org.apache.activemq.artemis.core.buffers.impl.ChannelBufferWrapper.readBytes(ChannelBufferWrapper.java:310) > ~[artemis-commons-2.35.0.jar:2.35.0] > at > org.apache.activemq.artemis.core.protocol.core.impl.wireformat.ReplicationAddMessage.decodeRest(ReplicationAddMessage.java:113) > ~[artemis-server-2.35.0.jar:2.35.0] > at > org.apache.activemq.artemis.core.protocol.core.impl.PacketImpl.decode(PacketImpl.java:385) > ~[artemis-core-client-2.35.0.jar:2.35.0] > at > org.apache.activemq.artemis.core.protocol.ServerPacketDecoder.slowPathDecode(ServerPacketDecoder.java:292) > ~[artemis-server-2.35.0.jar:2.35.0] > at > org.apache.activemq.artemis.core.protocol.ServerPacketDecoder.decode(ServerPacketDecoder.java:156) > ~[artemis-server-2.35.0.jar:2.35.0] > at > org.apache.activemq.artemis.core.protocol.core.impl.RemotingConnectionImpl.bufferReceived(RemotingConnectionImpl.java:386) > [artemis-core-client-2.35.0.jar:2.35.0] > at >
[jira] [Work logged] (ARTEMIS-4924) Do not allow sending messages directly to store-and-forward queues
[ https://issues.apache.org/jira/browse/ARTEMIS-4924?focusedWorklogId=926322=com.atlassian.jira.plugin.system.issuetabpanels:worklog-tabpanel#worklog-926322 ] ASF GitHub Bot logged work on ARTEMIS-4924: --- Author: ASF GitHub Bot Created on: 17/Jul/24 08:36 Start Date: 17/Jul/24 08:36 Worklog Time Spent: 10m Work Description: gtully commented on PR #5091: URL: https://github.com/apache/activemq-artemis/pull/5091#issuecomment-2232750976 I think we already have a way to prevent sending with rbac if that is the problem. But we may just need to make use of a dlq for invalid messages in this case. This cause seems like a good match for a dlq as it blocks the head. Issue Time Tracking --- Worklog Id: (was: 926322) Time Spent: 20m (was: 10m) > Do not allow sending messages directly to store-and-forward queues > -- > > Key: ARTEMIS-4924 > URL: https://issues.apache.org/jira/browse/ARTEMIS-4924 > Project: ActiveMQ Artemis > Issue Type: Bug > Components: Clustering >Affects Versions: 2.35.0 >Reporter: Howard Gao >Assignee: Howard Gao >Priority: Major > Time Spent: 20m > Remaining Estimate: 0h > > Currently, if a poison message missing queue information ends up in the SF > queue, the broker logs an error, like: > AMQ222110: no queue IDs defined... > but the message remains in the queue, with the result that the bridge > continuously reconnects, encounters the failure, then evicts the bridge > consumer. -- 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-9530) ClassCastException in SelectorAwareVirtualTopicInterceptor if there is another interceptor
[ https://issues.apache.org/jira/browse/AMQ-9530?focusedWorklogId=926273=com.atlassian.jira.plugin.system.issuetabpanels:worklog-tabpanel#worklog-926273 ] ASF GitHub Bot logged work on AMQ-9530: --- Author: ASF GitHub Bot Created on: 17/Jul/24 02:20 Start Date: 17/Jul/24 02:20 Worklog Time Spent: 10m Work Description: Nikita-Shupletsov commented on PR #1247: URL: https://github.com/apache/activemq/pull/1247#issuecomment-2232219598 > > There are no issues like this in other pars of the Virtual Destination code. only in `SelectorAwareVirtualTopicInterceptor` > > MappedQueueFilter has a nearly identical method: > > ref: > > https://github.com/apache/activemq/blob/5309352e12c1d5f05c027331f49cc1caa6a62f2f/activemq-broker/src/main/java/org/apache/activemq/broker/region/virtual/MappedQueueFilter.java#L90 are you proposing to extract this method to a helper class? If I create a new class, let's say VirtualTopicSupport or VistualTopicHelper, will it be okay? or do you have a particular place in mind fir it? Issue Time Tracking --- Worklog Id: (was: 926273) Time Spent: 0.5h (was: 20m) > ClassCastException in SelectorAwareVirtualTopicInterceptor if there is > another interceptor > --- > > Key: AMQ-9530 > URL: https://issues.apache.org/jira/browse/AMQ-9530 > Project: ActiveMQ Classic > Issue Type: Bug > Components: Plugin >Reporter: Nikita Shupletsov >Assignee: Jean-Baptiste Onofré >Priority: Minor > Fix For: 6.2.0, 5.18.5, 6.1.3 > > Attachments: > SelectorAwareVirtualTopicInterceptor_ClassCastException_test.patch > > Time Spent: 0.5h > Remaining Estimate: 0h > > See the patch in the attachment that shows how to reproduce the issue. > > The stacktrace: > {{jakarta.jms.JMSException: class > org.apache.activemq.broker.region.DestinationFilter cannot be cast to class > org.apache.activemq.broker.region.Topic > (org.apache.activemq.broker.region.DestinationFilter and > org.apache.activemq.broker.region.Topic are in unnamed module of loader > 'app')}}{{ at > org.apache.activemq.util.JMSExceptionSupport.create(JMSExceptionSupport.java:67)}} > {{ at > org.apache.activemq.ActiveMQConnection.syncSendPacket(ActiveMQConnection.java:1465)}} > {{ at > org.apache.activemq.ActiveMQConnection.ensureConnectionInfoSent(ActiveMQConnection.java:1548)}} > {{ at > org.apache.activemq.ActiveMQConnection.start(ActiveMQConnection.java:568)}} > {{ at > org.apache.activemq.broker.virtual.CompositeQueueTest.testVirtualTopicCreation(CompositeQueueTest.java:59)}} > {{ at > java.base/jdk.internal.reflect.DirectMethodHandleAccessor.invoke(DirectMethodHandleAccessor.java:103)}} > {{ at java.base/java.lang.reflect.Method.invoke(Method.java:580)}} > {{ at junit.framework.TestCase.runTest(TestCase.java:177)}} > {{ at junit.framework.TestCase.runBare(TestCase.java:142)}} > {{ at > org.apache.activemq.CombinationTestSupport.runBare(CombinationTestSupport.java:107)}} > {{ at > org.apache.activemq.CombinationTestSupport.runBare(CombinationTestSupport.java:113)}} > {{ at junit.framework.TestResult$1.protect(TestResult.java:122)}} > {{ at junit.framework.TestResult.runProtected(TestResult.java:142)}} > {{ at junit.framework.TestResult.run(TestResult.java:125)}} > {{ at junit.framework.TestCase.run(TestCase.java:130)}} > {{ at junit.framework.TestSuite.runTest(TestSuite.java:241)}} > {{ at junit.framework.TestSuite.run(TestSuite.java:236)}} > {{ at > org.junit.internal.runners.JUnit38ClassRunner.run(JUnit38ClassRunner.java:90)}} > {{ at org.junit.runner.JUnitCore.run(JUnitCore.java:137)}} > {{ at > com.intellij.junit4.JUnit4IdeaTestRunner.startRunnerWithArgs(JUnit4IdeaTestRunner.java:69)}} > {{ at > com.intellij.rt.junit.IdeaTestRunner$Repeater$1.execute(IdeaTestRunner.java:38)}} > {{ at > com.intellij.rt.execution.junit.TestsRepeater.repeat(TestsRepeater.java:11)}} > {{ at > com.intellij.rt.junit.IdeaTestRunner$Repeater.startRunnerWithArgs(IdeaTestRunner.java:35)}} > {{ at > com.intellij.rt.junit.JUnitStarter.prepareStreamsAndStart(JUnitStarter.java:232)}} > {{ at com.intellij.rt.junit.JUnitStarter.main(JUnitStarter.java:55)}} > {{Caused by: java.lang.ClassCastException: class > org.apache.activemq.broker.region.DestinationFilter cannot be cast to class > org.apache.activemq.broker.region.Topic > (org.apache.activemq.broker.region.DestinationFilter and > org.apache.activemq.broker.region.Topic are in unnamed module of loader > 'app')}} > {{ at > org.apache.activemq.broker.region.virtual.SelectorAwareVirtualTopicInterceptor.(SelectorAwareVirtualTopicInterceptor.java:44)}} >
[jira] [Work logged] (AMQ-9532) StackOverflowError on broker start if there are destinations with many modes
[ https://issues.apache.org/jira/browse/AMQ-9532?focusedWorklogId=926272=com.atlassian.jira.plugin.system.issuetabpanels:worklog-tabpanel#worklog-926272 ] ASF GitHub Bot logged work on AMQ-9532: --- Author: ASF GitHub Bot Created on: 17/Jul/24 02:16 Start Date: 17/Jul/24 02:16 Worklog Time Spent: 10m Work Description: Nikita-Shupletsov commented on PR #1254: URL: https://github.com/apache/activemq/pull/1254#issuecomment-2232215667 > @Nikita-Shupletsov how many is too-many nodes to trigger a stack overflow? What was the -Xss setting when the SO occurred? with `-Xss256k` it's around 1300 i've encountered the issue due to this: https://activemq.apache.org/components/classic/documentation/message-redelivery-and-dlq-handling#setting-expiration-on-messages-in-the-dlq there were DLQs for DlQs and so on Issue Time Tracking --- Worklog Id: (was: 926272) Time Spent: 0.5h (was: 20m) > StackOverflowError on broker start if there are destinations with many modes > > > Key: AMQ-9532 > URL: https://issues.apache.org/jira/browse/AMQ-9532 > Project: ActiveMQ Classic > Issue Type: Bug >Reporter: Nikita Shupletsov >Assignee: Jean-Baptiste Onofré >Priority: Minor > Time Spent: 0.5h > Remaining Estimate: 0h > > If the broker has limited -Xss value, and there is a destination with a lot > of nodes(i.e. 1.2200), the broker fails on restart with the following > error: > > {{java.lang.RuntimeException: Failed to execute start task. Reason: > org.springframework.beans.factory.BeanCreationException: Error creating bean > with name 'activemq-broker' defined in class path resource [activemq.xml]: > Invocation of init method failed; nested exception is > java.lang.StackOverflowError}} > {{at > org.apache.activemq.console.command.StartCommand.runTask(StartCommand.java:91)}} > {{at > org.apache.activemq.console.command.AbstractCommand.execute(AbstractCommand.java:63)}} > {{at > org.apache.activemq.console.command.ShellCommand.runTask(ShellCommand.java:154)}} > {{at > org.apache.activemq.console.command.AbstractCommand.execute(AbstractCommand.java:63)}} > {{at > org.apache.activemq.console.command.ShellCommand.main(ShellCommand.java:104)}} > {{at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)}} > {{at > sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)}} > {{at > sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)}} > {{at java.lang.reflect.Method.invoke(Method.java:498)}} > {{at org.apache.activemq.console.Main.runTaskClass(Main.java:262)}} > {{at org.apache.activemq.console.Main.main(Main.java:115)}} > {{Caused by: org.springframework.beans.factory.BeanCreationException: Error > creating bean with name 'activemq-broker' defined in class path resource > [activemq.xml]: Invocation of init method failed; nested exception is > java.lang.StackOverflowError}} > {{at > org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.initializeBean(AbstractAutowireCapableBeanFactory.java:1619)}} > {{at > org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.doCreateBean(AbstractAutowireCapableBeanFactory.java:553)}} > {{at > org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBean(AbstractAutowireCapableBeanFactory.java:481)}} > {{at > org.springframework.beans.factory.support.AbstractBeanFactory$1.getObject(AbstractBeanFactory.java:312)}} > {{at > org.springframework.beans.factory.support.DefaultSingletonBeanRegistry.getSingleton(DefaultSingletonBeanRegistry.java:230)}} > {{at > org.springframework.beans.factory.support.AbstractBeanFactory.doGetBean(AbstractBeanFactory.java:308)}} > {{at > org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:197)}} > {{at > org.springframework.beans.factory.support.AbstractBeanFactory.doGetBean(AbstractBeanFactory.java:297)}} > {{at > org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:197)}} > {{at > org.springframework.beans.factory.support.DefaultListableBeanFactory.preInstantiateSingletons(DefaultListableBeanFactory.java:737)}} > {{at > org.springframework.context.support.AbstractApplicationContext.finishBeanFactoryInitialization(AbstractApplicationContext.java:867)}} > {{at > org.springframework.context.support.AbstractApplicationContext.refresh(AbstractApplicationContext.java:542)}} > {{at > org.apache.xbean.spring.context.ResourceXmlApplicationContext.(ResourceXmlApplicationContext.java:64)}} > {{at > org.apache.xbean.spring.context.ResourceXmlApplicationContext.(ResourceXmlApplicationContext.java:52)}} > {{at >
[jira] [Work logged] (ARTEMIS-4925) Mirroring and Replication do not work in combination
[ https://issues.apache.org/jira/browse/ARTEMIS-4925?focusedWorklogId=926234=com.atlassian.jira.plugin.system.issuetabpanels:worklog-tabpanel#worklog-926234 ] ASF GitHub Bot logged work on ARTEMIS-4925: --- Author: ASF GitHub Bot Created on: 16/Jul/24 21:05 Start Date: 16/Jul/24 21:05 Worklog Time Spent: 10m Work Description: clebertsuconic merged PR #5092: URL: https://github.com/apache/activemq-artemis/pull/5092 Issue Time Tracking --- Worklog Id: (was: 926234) Time Spent: 40m (was: 0.5h) > Mirroring and Replication do not work in combination > > > Key: ARTEMIS-4925 > URL: https://issues.apache.org/jira/browse/ARTEMIS-4925 > Project: ActiveMQ Artemis > Issue Type: Bug >Affects Versions: 2.35.0 >Reporter: Clebert Suconic >Priority: Major > Fix For: 2.36.0 > > Time Spent: 40m > Remaining Estimate: 0h > > Mirror and replication will not work in combination. > When I first developed mirroring I thought mirroring would be a replacement > on replication and people would not really mix both. However users reported > me about a setup where they use replication in a local setup, and mirror for > DR and that caused issues. > Basically when paging, the write of the page will fail under replication, > because the message on the SNF for mirror will have a different address then > where it's stored, and that will cause issues in the process such as file > leaks and wrong writes. -- 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-4925) Mirroring and Replication do not work in combination
[ https://issues.apache.org/jira/browse/ARTEMIS-4925?focusedWorklogId=926224=com.atlassian.jira.plugin.system.issuetabpanels:worklog-tabpanel#worklog-926224 ] ASF GitHub Bot logged work on ARTEMIS-4925: --- Author: ASF GitHub Bot Created on: 16/Jul/24 20:17 Start Date: 16/Jul/24 20:17 Worklog Time Spent: 10m Work Description: clebertsuconic commented on code in PR #5092: URL: https://github.com/apache/activemq-artemis/pull/5092#discussion_r1680017025 ## artemis-server/src/main/java/org/apache/activemq/artemis/core/replication/ReplicationEndpoint.java: ## @@ -831,8 +830,8 @@ private void handlePageEvent(final ReplicationPageEventMessage packet) throws Ex private void handlePageWrite(final ReplicationPageWriteMessage packet) throws Exception { PagedMessage pgdMessage = packet.getPagedMessage(); pgdMessage.initMessage(storageManager); - Message msg = pgdMessage.getMessage(); - Page page = getPage(msg.getAddressSimpleString(), packet.getPageNumber()); + SimpleString address = packet.getAddress(); + Page page = getPage(address, packet.getPageNumber()); Review Comment: thanks Issue Time Tracking --- Worklog Id: (was: 926224) Time Spent: 0.5h (was: 20m) > Mirroring and Replication do not work in combination > > > Key: ARTEMIS-4925 > URL: https://issues.apache.org/jira/browse/ARTEMIS-4925 > Project: ActiveMQ Artemis > Issue Type: Bug >Affects Versions: 2.35.0 >Reporter: Clebert Suconic >Priority: Major > Fix For: 2.36.0 > > Time Spent: 0.5h > Remaining Estimate: 0h > > Mirror and replication will not work in combination. > When I first developed mirroring I thought mirroring would be a replacement > on replication and people would not really mix both. However users reported > me about a setup where they use replication in a local setup, and mirror for > DR and that caused issues. > Basically when paging, the write of the page will fail under replication, > because the message on the SNF for mirror will have a different address then > where it's stored, and that will cause issues in the process such as file > leaks and wrong writes. -- 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-4925) Mirroring and Replication do not work in combination
[ https://issues.apache.org/jira/browse/ARTEMIS-4925?focusedWorklogId=926222=com.atlassian.jira.plugin.system.issuetabpanels:worklog-tabpanel#worklog-926222 ] ASF GitHub Bot logged work on ARTEMIS-4925: --- Author: ASF GitHub Bot Created on: 16/Jul/24 20:03 Start Date: 16/Jul/24 20:03 Worklog Time Spent: 10m Work Description: jbertram commented on code in PR #5092: URL: https://github.com/apache/activemq-artemis/pull/5092#discussion_r1680003308 ## artemis-server/src/main/java/org/apache/activemq/artemis/core/replication/ReplicationEndpoint.java: ## @@ -831,8 +830,8 @@ private void handlePageEvent(final ReplicationPageEventMessage packet) throws Ex private void handlePageWrite(final ReplicationPageWriteMessage packet) throws Exception { PagedMessage pgdMessage = packet.getPagedMessage(); pgdMessage.initMessage(storageManager); - Message msg = pgdMessage.getMessage(); - Page page = getPage(msg.getAddressSimpleString(), packet.getPageNumber()); + SimpleString address = packet.getAddress(); + Page page = getPage(address, packet.getPageNumber()); Review Comment: nitpick...could be just: ```java Page page = getPage(packet.getAddress(), packet.getPageNumber()); ``` Issue Time Tracking --- Worklog Id: (was: 926222) Time Spent: 20m (was: 10m) > Mirroring and Replication do not work in combination > > > Key: ARTEMIS-4925 > URL: https://issues.apache.org/jira/browse/ARTEMIS-4925 > Project: ActiveMQ Artemis > Issue Type: Bug >Affects Versions: 2.35.0 >Reporter: Clebert Suconic >Priority: Major > Fix For: 2.36.0 > > Time Spent: 20m > Remaining Estimate: 0h > > Mirror and replication will not work in combination. > When I first developed mirroring I thought mirroring would be a replacement > on replication and people would not really mix both. However users reported > me about a setup where they use replication in a local setup, and mirror for > DR and that caused issues. > Basically when paging, the write of the page will fail under replication, > because the message on the SNF for mirror will have a different address then > where it's stored, and that will cause issues in the process such as file > leaks and wrong writes. -- 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-4910) Synchronization of HA cluster after modifying divert with transformer failure
[ https://issues.apache.org/jira/browse/ARTEMIS-4910?focusedWorklogId=926221=com.atlassian.jira.plugin.system.issuetabpanels:worklog-tabpanel#worklog-926221 ] ASF GitHub Bot logged work on ARTEMIS-4910: --- Author: ASF GitHub Bot Created on: 16/Jul/24 19:51 Start Date: 16/Jul/24 19:51 Worklog Time Spent: 10m Work Description: jbertram commented on code in PR #5079: URL: https://github.com/apache/activemq-artemis/pull/5079#discussion_r1679991127 ## artemis-server/src/test/java/org/apache/activemq/artemis/core/config/DivertConfigurationEncodingTest.java: ## @@ -0,0 +1,47 @@ +/* + * Licensed to the Apache Software Foundation (ASF) under one or more + * contributor license agreements. See the NOTICE file distributed with + * this work for additional information regarding copyright ownership. + * The ASF licenses this file to You under the Apache License, Version 2.0 + * (the "License"); you may not use this file except in compliance with + * the License. You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ +package org.apache.activemq.artemis.core.config; + +import org.apache.activemq.artemis.api.core.ActiveMQBuffer; +import org.apache.activemq.artemis.api.core.ActiveMQBuffers; +import org.apache.activemq.artemis.core.server.ComponentConfigurationRoutingType; +import org.junit.jupiter.api.Test; + +import static org.junit.jupiter.api.Assertions.assertEquals; + +public class DivertConfigurationEncodingTest { + + @Test + public void testStoreDivertConfigurationWithTransformerNoProperties() { + DivertConfiguration configuration = new DivertConfiguration(); + configuration.setName("myDivertName"); + configuration.setAddress("myDivertAddress"); + configuration.setForwardingAddress("myDivertForwardingAddress"); + configuration.setFilterString("foo='foo'"); + configuration.setRoutingName("myDivertRoutingName"); + configuration.setExclusive(false); + configuration.setRoutingType(ComponentConfigurationRoutingType.ANYCAST); + TransformerConfiguration myDivertTransformer = new TransformerConfiguration("myDivertTransformer"); + myDivertTransformer.getProperties().put("foo", "foo"); + configuration.setTransformerConfiguration(myDivertTransformer); + + int encodeSize = configuration.getEncodeSize(); + ActiveMQBuffer data = ActiveMQBuffers.fixedBuffer(encodeSize); + configuration.encode(data); + assertEquals(encodeSize, data.writerIndex()); Review Comment: I updated the PR. Let me know what you think. Issue Time Tracking --- Worklog Id: (was: 926221) Time Spent: 2h (was: 1h 50m) > Synchronization of HA cluster after modifying divert with transformer failure > - > > Key: ARTEMIS-4910 > URL: https://issues.apache.org/jira/browse/ARTEMIS-4910 > Project: ActiveMQ Artemis > Issue Type: Bug > Components: Broker, Clustering, Configuration >Affects Versions: 2.35.0 >Reporter: Kirill Chadakin >Assignee: Justin Bertram >Priority: Major > Attachments: backup_artemis.log, primary_artemis.log > > Time Spent: 2h > Remaining Estimate: 0h > > Modifying divert with transformer in a high-availability (HA) cluster with > Apache Artemis by {{broker.xml}} results in an {{IndexOutOfBoundsException}} > error in the backup logs. This error breaks the connection between the > primary and backup brokers, initiates a quorum vote, and causes the backup to > become active, leading to both brokers operating in parallel. > h2. Steps to Reproduce the Error > 1. Create primary broker > {noformat} > apache-artemis-2.35.0/bin/artemis.cmd create --host=localhost > --default-port=61611 --http-port=8111 --clustered --cluster-user=cls > --cluster-password=cls --replicated --name=br11 --user=usr --password=usr > --allow-anonymous --no-autotune --no-amqp-acceptor --no-hornetq-acceptor > --no-mqtt-acceptor --no-stomp-acceptor br11{noformat} > 2. Create backup broker > {noformat} > apache-artemis-2.35.0/bin/artemis.cmd create --host=localhost > --default-port=61612 --http-port=8112 --clustered --cluster-user=cls > --cluster-password=cls --replicated --backup --name=br12 --user=usr > --password=usr --allow-anonymous --no-autotune --no-amqp-acceptor > --no-hornetq-acceptor --no-mqtt-acceptor --no-stomp-acceptor br12{noformat} > 3. Start brokers > 4. Add test
[jira] [Work logged] (AMQ-9521) Upgrade Spring 6.1.11
[ https://issues.apache.org/jira/browse/AMQ-9521?focusedWorklogId=926189=com.atlassian.jira.plugin.system.issuetabpanels:worklog-tabpanel#worklog-926189 ] ASF GitHub Bot logged work on AMQ-9521: --- Author: ASF GitHub Bot Created on: 16/Jul/24 17:54 Start Date: 16/Jul/24 17:54 Worklog Time Spent: 10m Work Description: mattrpav merged PR #1263: URL: https://github.com/apache/activemq/pull/1263 Issue Time Tracking --- Worklog Id: (was: 926189) Time Spent: 40m (was: 0.5h) > Upgrade Spring 6.1.11 > - > > Key: AMQ-9521 > URL: https://issues.apache.org/jira/browse/AMQ-9521 > Project: ActiveMQ Classic > Issue Type: Dependency upgrade > Components: Broker >Reporter: Matt Pavlovich >Assignee: Matt Pavlovich >Priority: Minor > Fix For: 6.2.0, 6.1.3 > > Time Spent: 40m > Remaining Estimate: 0h > > Upgrade Spring 6.1.10 > Upgrade Spring 6.1.11 -- 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-9535) Upgrade slf4j 2.0.13
[ https://issues.apache.org/jira/browse/AMQ-9535?focusedWorklogId=926188=com.atlassian.jira.plugin.system.issuetabpanels:worklog-tabpanel#worklog-926188 ] ASF GitHub Bot logged work on AMQ-9535: --- Author: ASF GitHub Bot Created on: 16/Jul/24 17:51 Start Date: 16/Jul/24 17:51 Worklog Time Spent: 10m Work Description: mattrpav merged PR #1262: URL: https://github.com/apache/activemq/pull/1262 Issue Time Tracking --- Worklog Id: (was: 926188) Time Spent: 20m (was: 10m) > Upgrade slf4j 2.0.13 > > > Key: AMQ-9535 > URL: https://issues.apache.org/jira/browse/AMQ-9535 > Project: ActiveMQ Classic > Issue Type: Dependency upgrade >Reporter: Matt Pavlovich >Assignee: Matt Pavlovich >Priority: Minor > Fix For: 6.2.0, 5.18.5, 6.1.3 > > 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-4925) Mirroring and Replication do not work in combination
[ https://issues.apache.org/jira/browse/ARTEMIS-4925?focusedWorklogId=926184=com.atlassian.jira.plugin.system.issuetabpanels:worklog-tabpanel#worklog-926184 ] ASF GitHub Bot logged work on ARTEMIS-4925: --- Author: ASF GitHub Bot Created on: 16/Jul/24 17:23 Start Date: 16/Jul/24 17:23 Worklog Time Spent: 10m Work Description: clebertsuconic opened a new pull request, #5092: URL: https://github.com/apache/activemq-artemis/pull/5092 (no comment) Issue Time Tracking --- Worklog Id: (was: 926184) Remaining Estimate: 0h Time Spent: 10m > Mirroring and Replication do not work in combination > > > Key: ARTEMIS-4925 > URL: https://issues.apache.org/jira/browse/ARTEMIS-4925 > Project: ActiveMQ Artemis > Issue Type: Bug >Affects Versions: 2.35.0 >Reporter: Clebert Suconic >Priority: Major > Fix For: 2.36.0 > > Time Spent: 10m > Remaining Estimate: 0h > > Mirror and replication will not work in combination. > When I first developed mirroring I thought mirroring would be a replacement > on replication and people would not really mix both. However users reported > me about a setup where they use replication in a local setup, and mirror for > DR and that caused issues. > Basically when paging, the write of the page will fail under replication, > because the message on the SNF for mirror will have a different address then > where it's stored, and that will cause issues in the process such as file > leaks and wrong writes. -- 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-9521) Upgrade Spring 6.1.11
[ https://issues.apache.org/jira/browse/AMQ-9521?focusedWorklogId=926136=com.atlassian.jira.plugin.system.issuetabpanels:worklog-tabpanel#worklog-926136 ] ASF GitHub Bot logged work on AMQ-9521: --- Author: ASF GitHub Bot Created on: 16/Jul/24 14:22 Start Date: 16/Jul/24 14:22 Worklog Time Spent: 10m Work Description: mattrpav opened a new pull request, #1263: URL: https://github.com/apache/activemq/pull/1263 (no comment) Issue Time Tracking --- Worklog Id: (was: 926136) Time Spent: 0.5h (was: 20m) > Upgrade Spring 6.1.11 > - > > Key: AMQ-9521 > URL: https://issues.apache.org/jira/browse/AMQ-9521 > Project: ActiveMQ Classic > Issue Type: Dependency upgrade > Components: Broker >Reporter: Matt Pavlovich >Assignee: Matt Pavlovich >Priority: Minor > Fix For: 6.2.0, 6.1.3 > > Time Spent: 0.5h > Remaining Estimate: 0h > > Upgrade Spring 6.1.10 > Upgrade Spring 6.1.11 -- 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-9535) Upgrade slf4j 2.0.13
[ https://issues.apache.org/jira/browse/AMQ-9535?focusedWorklogId=926133=com.atlassian.jira.plugin.system.issuetabpanels:worklog-tabpanel#worklog-926133 ] ASF GitHub Bot logged work on AMQ-9535: --- Author: ASF GitHub Bot Created on: 16/Jul/24 14:07 Start Date: 16/Jul/24 14:07 Worklog Time Spent: 10m Work Description: mattrpav opened a new pull request, #1262: URL: https://github.com/apache/activemq/pull/1262 (no comment) Issue Time Tracking --- Worklog Id: (was: 926133) Remaining Estimate: 0h Time Spent: 10m > Upgrade slf4j 2.0.13 > > > Key: AMQ-9535 > URL: https://issues.apache.org/jira/browse/AMQ-9535 > Project: ActiveMQ Classic > Issue Type: Dependency upgrade >Reporter: Matt Pavlovich >Priority: Minor > Time Spent: 10m > 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-9530) ClassCastException in SelectorAwareVirtualTopicInterceptor if there is another interceptor
[ https://issues.apache.org/jira/browse/AMQ-9530?focusedWorklogId=926125=com.atlassian.jira.plugin.system.issuetabpanels:worklog-tabpanel#worklog-926125 ] ASF GitHub Bot logged work on AMQ-9530: --- Author: ASF GitHub Bot Created on: 16/Jul/24 13:37 Start Date: 16/Jul/24 13:37 Worklog Time Spent: 10m Work Description: mattrpav commented on PR #1247: URL: https://github.com/apache/activemq/pull/1247#issuecomment-2230917315 > There are no issues like this in other pars of the Virtual Destination code. only in `SelectorAwareVirtualTopicInterceptor` MappedQueueFilter has a nearly identical method: ref: https://github.com/apache/activemq/blob/5309352e12c1d5f05c027331f49cc1caa6a62f2f/activemq-broker/src/main/java/org/apache/activemq/broker/region/virtual/MappedQueueFilter.java#L90 Issue Time Tracking --- Worklog Id: (was: 926125) Time Spent: 20m (was: 10m) > ClassCastException in SelectorAwareVirtualTopicInterceptor if there is > another interceptor > --- > > Key: AMQ-9530 > URL: https://issues.apache.org/jira/browse/AMQ-9530 > Project: ActiveMQ Classic > Issue Type: Bug > Components: Plugin >Reporter: Nikita Shupletsov >Assignee: Jean-Baptiste Onofré >Priority: Minor > Fix For: 6.2.0, 5.18.5, 6.1.3 > > Attachments: > SelectorAwareVirtualTopicInterceptor_ClassCastException_test.patch > > Time Spent: 20m > Remaining Estimate: 0h > > See the patch in the attachment that shows how to reproduce the issue. > > The stacktrace: > {{jakarta.jms.JMSException: class > org.apache.activemq.broker.region.DestinationFilter cannot be cast to class > org.apache.activemq.broker.region.Topic > (org.apache.activemq.broker.region.DestinationFilter and > org.apache.activemq.broker.region.Topic are in unnamed module of loader > 'app')}}{{ at > org.apache.activemq.util.JMSExceptionSupport.create(JMSExceptionSupport.java:67)}} > {{ at > org.apache.activemq.ActiveMQConnection.syncSendPacket(ActiveMQConnection.java:1465)}} > {{ at > org.apache.activemq.ActiveMQConnection.ensureConnectionInfoSent(ActiveMQConnection.java:1548)}} > {{ at > org.apache.activemq.ActiveMQConnection.start(ActiveMQConnection.java:568)}} > {{ at > org.apache.activemq.broker.virtual.CompositeQueueTest.testVirtualTopicCreation(CompositeQueueTest.java:59)}} > {{ at > java.base/jdk.internal.reflect.DirectMethodHandleAccessor.invoke(DirectMethodHandleAccessor.java:103)}} > {{ at java.base/java.lang.reflect.Method.invoke(Method.java:580)}} > {{ at junit.framework.TestCase.runTest(TestCase.java:177)}} > {{ at junit.framework.TestCase.runBare(TestCase.java:142)}} > {{ at > org.apache.activemq.CombinationTestSupport.runBare(CombinationTestSupport.java:107)}} > {{ at > org.apache.activemq.CombinationTestSupport.runBare(CombinationTestSupport.java:113)}} > {{ at junit.framework.TestResult$1.protect(TestResult.java:122)}} > {{ at junit.framework.TestResult.runProtected(TestResult.java:142)}} > {{ at junit.framework.TestResult.run(TestResult.java:125)}} > {{ at junit.framework.TestCase.run(TestCase.java:130)}} > {{ at junit.framework.TestSuite.runTest(TestSuite.java:241)}} > {{ at junit.framework.TestSuite.run(TestSuite.java:236)}} > {{ at > org.junit.internal.runners.JUnit38ClassRunner.run(JUnit38ClassRunner.java:90)}} > {{ at org.junit.runner.JUnitCore.run(JUnitCore.java:137)}} > {{ at > com.intellij.junit4.JUnit4IdeaTestRunner.startRunnerWithArgs(JUnit4IdeaTestRunner.java:69)}} > {{ at > com.intellij.rt.junit.IdeaTestRunner$Repeater$1.execute(IdeaTestRunner.java:38)}} > {{ at > com.intellij.rt.execution.junit.TestsRepeater.repeat(TestsRepeater.java:11)}} > {{ at > com.intellij.rt.junit.IdeaTestRunner$Repeater.startRunnerWithArgs(IdeaTestRunner.java:35)}} > {{ at > com.intellij.rt.junit.JUnitStarter.prepareStreamsAndStart(JUnitStarter.java:232)}} > {{ at com.intellij.rt.junit.JUnitStarter.main(JUnitStarter.java:55)}} > {{Caused by: java.lang.ClassCastException: class > org.apache.activemq.broker.region.DestinationFilter cannot be cast to class > org.apache.activemq.broker.region.Topic > (org.apache.activemq.broker.region.DestinationFilter and > org.apache.activemq.broker.region.Topic are in unnamed module of loader > 'app')}} > {{ at > org.apache.activemq.broker.region.virtual.SelectorAwareVirtualTopicInterceptor.(SelectorAwareVirtualTopicInterceptor.java:44)}} > {{ at > org.apache.activemq.broker.region.virtual.VirtualTopic.intercept(VirtualTopic.java:57)}} > {{ at > org.apache.activemq.broker.region.virtual.VirtualDestinationInterceptor.intercept(VirtualDestinationInterceptor.java:57)}} > {{
[jira] [Work logged] (AMQ-9532) StackOverflowError on broker start if there are destinations with many modes
[ https://issues.apache.org/jira/browse/AMQ-9532?focusedWorklogId=926122=com.atlassian.jira.plugin.system.issuetabpanels:worklog-tabpanel#worklog-926122 ] ASF GitHub Bot logged work on AMQ-9532: --- Author: ASF GitHub Bot Created on: 16/Jul/24 13:17 Start Date: 16/Jul/24 13:17 Worklog Time Spent: 10m Work Description: mattrpav commented on PR #1254: URL: https://github.com/apache/activemq/pull/1254#issuecomment-2230869694 @Nikita-Shupletsov how many is too-many nodes to trigger a stack overflow? What was the -Xss setting when the SO occurred? Issue Time Tracking --- Worklog Id: (was: 926122) Time Spent: 20m (was: 10m) > StackOverflowError on broker start if there are destinations with many modes > > > Key: AMQ-9532 > URL: https://issues.apache.org/jira/browse/AMQ-9532 > Project: ActiveMQ Classic > Issue Type: Bug >Reporter: Nikita Shupletsov >Assignee: Jean-Baptiste Onofré >Priority: Minor > Time Spent: 20m > Remaining Estimate: 0h > > If the broker has limited -Xss value, and there is a destination with a lot > of nodes(i.e. 1.2200), the broker fails on restart with the following > error: > > {{java.lang.RuntimeException: Failed to execute start task. Reason: > org.springframework.beans.factory.BeanCreationException: Error creating bean > with name 'activemq-broker' defined in class path resource [activemq.xml]: > Invocation of init method failed; nested exception is > java.lang.StackOverflowError}} > {{at > org.apache.activemq.console.command.StartCommand.runTask(StartCommand.java:91)}} > {{at > org.apache.activemq.console.command.AbstractCommand.execute(AbstractCommand.java:63)}} > {{at > org.apache.activemq.console.command.ShellCommand.runTask(ShellCommand.java:154)}} > {{at > org.apache.activemq.console.command.AbstractCommand.execute(AbstractCommand.java:63)}} > {{at > org.apache.activemq.console.command.ShellCommand.main(ShellCommand.java:104)}} > {{at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)}} > {{at > sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)}} > {{at > sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)}} > {{at java.lang.reflect.Method.invoke(Method.java:498)}} > {{at org.apache.activemq.console.Main.runTaskClass(Main.java:262)}} > {{at org.apache.activemq.console.Main.main(Main.java:115)}} > {{Caused by: org.springframework.beans.factory.BeanCreationException: Error > creating bean with name 'activemq-broker' defined in class path resource > [activemq.xml]: Invocation of init method failed; nested exception is > java.lang.StackOverflowError}} > {{at > org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.initializeBean(AbstractAutowireCapableBeanFactory.java:1619)}} > {{at > org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.doCreateBean(AbstractAutowireCapableBeanFactory.java:553)}} > {{at > org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBean(AbstractAutowireCapableBeanFactory.java:481)}} > {{at > org.springframework.beans.factory.support.AbstractBeanFactory$1.getObject(AbstractBeanFactory.java:312)}} > {{at > org.springframework.beans.factory.support.DefaultSingletonBeanRegistry.getSingleton(DefaultSingletonBeanRegistry.java:230)}} > {{at > org.springframework.beans.factory.support.AbstractBeanFactory.doGetBean(AbstractBeanFactory.java:308)}} > {{at > org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:197)}} > {{at > org.springframework.beans.factory.support.AbstractBeanFactory.doGetBean(AbstractBeanFactory.java:297)}} > {{at > org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:197)}} > {{at > org.springframework.beans.factory.support.DefaultListableBeanFactory.preInstantiateSingletons(DefaultListableBeanFactory.java:737)}} > {{at > org.springframework.context.support.AbstractApplicationContext.finishBeanFactoryInitialization(AbstractApplicationContext.java:867)}} > {{at > org.springframework.context.support.AbstractApplicationContext.refresh(AbstractApplicationContext.java:542)}} > {{at > org.apache.xbean.spring.context.ResourceXmlApplicationContext.(ResourceXmlApplicationContext.java:64)}} > {{at > org.apache.xbean.spring.context.ResourceXmlApplicationContext.(ResourceXmlApplicationContext.java:52)}} > {{at > org.apache.activemq.xbean.XBeanBrokerFactory$1.(XBeanBrokerFactory.java:104)}} > {{at > org.apache.activemq.xbean.XBeanBrokerFactory.createApplicationContext(XBeanBrokerFactory.java:104)}} > {{at >
[jira] [Work logged] (AMQ-9484) Support exporting kahadb messages from a queue with an offset
[ https://issues.apache.org/jira/browse/AMQ-9484?focusedWorklogId=926120=com.atlassian.jira.plugin.system.issuetabpanels:worklog-tabpanel#worklog-926120 ] ASF GitHub Bot logged work on AMQ-9484: --- Author: ASF GitHub Bot Created on: 16/Jul/24 13:09 Start Date: 16/Jul/24 13:09 Worklog Time Spent: 10m Work Description: mattrpav closed pull request #1208: [AMQ-9484] Support exporting kahadb messages from a queue with an offset URL: https://github.com/apache/activemq/pull/1208 Issue Time Tracking --- Worklog Id: (was: 926120) Time Spent: 2h 10m (was: 2h) > Support exporting kahadb messages from a queue with an offset > - > > Key: AMQ-9484 > URL: https://issues.apache.org/jira/browse/AMQ-9484 > Project: ActiveMQ Classic > Issue Type: New Feature >Reporter: Matt Pavlovich >Assignee: Matt Pavlovich >Priority: Minor > Fix For: 6.2.0 > > Time Spent: 2h 10m > Remaining Estimate: 0h > > Support exporting and pulling messages from a MessageStore with an offset, to > prevent loading _every_ message into memory (and subsequent required gc). > For example, if a user wants to export the last message from a queue with > 1,000 messages, they can scan over the index skipping most messages vs > loading all messages into memory to get to the last message. -- 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-9484) Support exporting kahadb messages from a queue with an offset
[ https://issues.apache.org/jira/browse/AMQ-9484?focusedWorklogId=926121=com.atlassian.jira.plugin.system.issuetabpanels:worklog-tabpanel#worklog-926121 ] ASF GitHub Bot logged work on AMQ-9484: --- Author: ASF GitHub Bot Created on: 16/Jul/24 13:09 Start Date: 16/Jul/24 13:09 Worklog Time Spent: 10m Work Description: mattrpav commented on PR #1208: URL: https://github.com/apache/activemq/pull/1208#issuecomment-2230851047 Replaced with #1258 Issue Time Tracking --- Worklog Id: (was: 926121) Time Spent: 2h 20m (was: 2h 10m) > Support exporting kahadb messages from a queue with an offset > - > > Key: AMQ-9484 > URL: https://issues.apache.org/jira/browse/AMQ-9484 > Project: ActiveMQ Classic > Issue Type: New Feature >Reporter: Matt Pavlovich >Assignee: Matt Pavlovich >Priority: Minor > Fix For: 6.2.0 > > Time Spent: 2h 20m > Remaining Estimate: 0h > > Support exporting and pulling messages from a MessageStore with an offset, to > prevent loading _every_ message into memory (and subsequent required gc). > For example, if a user wants to export the last message from a queue with > 1,000 messages, they can scan over the index skipping most messages vs > loading all messages into memory to get to the last message. -- 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-9533) Add activemq-protobuf based backup command
[ https://issues.apache.org/jira/browse/AMQ-9533?focusedWorklogId=926118=com.atlassian.jira.plugin.system.issuetabpanels:worklog-tabpanel#worklog-926118 ] ASF GitHub Bot logged work on AMQ-9533: --- Author: ASF GitHub Bot Created on: 16/Jul/24 13:08 Start Date: 16/Jul/24 13:08 Worklog Time Spent: 10m Work Description: mattrpav closed pull request #1256: [AMQ-9533] Add Backup command that uses activemq-protobuf URL: https://github.com/apache/activemq/pull/1256 Issue Time Tracking --- Worklog Id: (was: 926118) Time Spent: 0.5h (was: 20m) > Add activemq-protobuf based backup command > -- > > Key: AMQ-9533 > URL: https://issues.apache.org/jira/browse/AMQ-9533 > Project: ActiveMQ Classic > Issue Type: Improvement >Reporter: Matt Pavlovich >Priority: Minor > Fix For: 6.2.0 > > Time Spent: 0.5h > Remaining Estimate: 0h > > The current 'export' operation uses the deprecated hawtbuf-proto. This > command uses the activemq-protobuf instead. -- 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-9533) Add activemq-protobuf based backup command
[ https://issues.apache.org/jira/browse/AMQ-9533?focusedWorklogId=926119=com.atlassian.jira.plugin.system.issuetabpanels:worklog-tabpanel#worklog-926119 ] ASF GitHub Bot logged work on AMQ-9533: --- Author: ASF GitHub Bot Created on: 16/Jul/24 13:08 Start Date: 16/Jul/24 13:08 Worklog Time Spent: 10m Work Description: mattrpav commented on PR #1256: URL: https://github.com/apache/activemq/pull/1256#issuecomment-2230849862 replaced by #1258 Issue Time Tracking --- Worklog Id: (was: 926119) Time Spent: 40m (was: 0.5h) > Add activemq-protobuf based backup command > -- > > Key: AMQ-9533 > URL: https://issues.apache.org/jira/browse/AMQ-9533 > Project: ActiveMQ Classic > Issue Type: Improvement >Reporter: Matt Pavlovich >Priority: Minor > Fix For: 6.2.0 > > Time Spent: 40m > Remaining Estimate: 0h > > The current 'export' operation uses the deprecated hawtbuf-proto. This > command uses the activemq-protobuf instead. -- 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-9484) Support exporting kahadb messages from a queue with an offset
[ https://issues.apache.org/jira/browse/AMQ-9484?focusedWorklogId=926117=com.atlassian.jira.plugin.system.issuetabpanels:worklog-tabpanel#worklog-926117 ] ASF GitHub Bot logged work on AMQ-9484: --- Author: ASF GitHub Bot Created on: 16/Jul/24 13:08 Start Date: 16/Jul/24 13:08 Worklog Time Spent: 10m Work Description: mattrpav merged PR #1258: URL: https://github.com/apache/activemq/pull/1258 Issue Time Tracking --- Worklog Id: (was: 926117) Time Spent: 2h (was: 1h 50m) > Support exporting kahadb messages from a queue with an offset > - > > Key: AMQ-9484 > URL: https://issues.apache.org/jira/browse/AMQ-9484 > Project: ActiveMQ Classic > Issue Type: New Feature >Reporter: Matt Pavlovich >Assignee: Matt Pavlovich >Priority: Minor > Fix For: 6.2.0 > > Time Spent: 2h > Remaining Estimate: 0h > > Support exporting and pulling messages from a MessageStore with an offset, to > prevent loading _every_ message into memory (and subsequent required gc). > For example, if a user wants to export the last message from a queue with > 1,000 messages, they can scan over the index skipping most messages vs > loading all messages into memory to get to the last message. -- 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-4913) Provide more details on error callbacks
[ https://issues.apache.org/jira/browse/ARTEMIS-4913?focusedWorklogId=926108=com.atlassian.jira.plugin.system.issuetabpanels:worklog-tabpanel#worklog-926108 ] ASF GitHub Bot logged work on ARTEMIS-4913: --- Author: ASF GitHub Bot Created on: 16/Jul/24 12:22 Start Date: 16/Jul/24 12:22 Worklog Time Spent: 10m Work Description: gemmellr commented on PR #5078: URL: https://github.com/apache/activemq-artemis/pull/5078#issuecomment-2230755074 Some off the changes add file names to the error messages...can those message ever make it out to a client? Might not want to be passing filenames if it could? Issue Time Tracking --- Worklog Id: (was: 926108) Time Spent: 40m (was: 0.5h) > Provide more details on error callbacks > --- > > Key: ARTEMIS-4913 > URL: https://issues.apache.org/jira/browse/ARTEMIS-4913 > Project: ActiveMQ Artemis > Issue Type: Improvement >Reporter: Justin Bertram >Assignee: Justin Bertram >Priority: Major > Time Spent: 40m > Remaining Estimate: 0h > > Currently much of the code invoking callbacks on errors doesn't provide many > details. If, for example, {{getMessage()}} on the relevant {{Exception}} > returns {{null}} it's almost impossible to understand what actually failed > and how. -- 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-4909) update category names for "Reloading configuration"
[ https://issues.apache.org/jira/browse/ARTEMIS-4909?focusedWorklogId=926104=com.atlassian.jira.plugin.system.issuetabpanels:worklog-tabpanel#worklog-926104 ] ASF GitHub Bot logged work on ARTEMIS-4909: --- Author: ASF GitHub Bot Created on: 16/Jul/24 11:58 Start Date: 16/Jul/24 11:58 Worklog Time Spent: 10m Work Description: gemmellr commented on PR #5075: URL: https://github.com/apache/activemq-artemis/pull/5075#issuecomment-2230710777 This all seems to assume that the config is only coming from the XML tags, which actually isnt necessarily the case, so it feels like this should stay more general as it currently is. Issue Time Tracking --- Worklog Id: (was: 926104) Time Spent: 20m (was: 10m) > update category names for "Reloading configuration" > --- > > Key: ARTEMIS-4909 > URL: https://issues.apache.org/jira/browse/ARTEMIS-4909 > Project: ActiveMQ Artemis > Issue Type: Improvement > Components: Configuration >Affects Versions: 2.35.0 >Reporter: Erwin Dondorp >Assignee: Erwin Dondorp >Priority: Minor > Time Spent: 20m > Remaining Estimate: 0h > > When the broker.xml file is reloaded, the following logfile messages are > produced: > {noformat} > 2024-07-07 20:30:08,138 INFO [org.apache.activemq.artemis.core.server] > AMQ221056: Reloading configuration: security > 2024-07-07 20:30:08,140 INFO [org.apache.activemq.artemis.core.server] > AMQ221056: Reloading configuration: address settings > 2024-07-07 20:30:08,143 INFO [org.apache.activemq.artemis.core.server] > AMQ221056: Reloading configuration: diverts > 2024-07-07 20:30:08,150 INFO [org.apache.activemq.artemis.core.server] > AMQ221056: Reloading configuration: addresses > [...] > 2024-07-07 20:30:08,151 INFO [org.apache.activemq.artemis.core.server] > AMQ221056: Reloading configuration: bridges > 2024-07-07 20:30:08,151 INFO [org.apache.activemq.artemis.core.server] > AMQ221056: Reloading configuration: protocol services > {noformat} > in would be more consistent when the actual top-level XML tags are mentioned > here as these are almost the same. > and it closer matches the documentation, see > https://activemq.apache.org/components/artemis/documentation/latest/config-reload.html > proposing: > * security --> security-settings > * address settings --> address-settings > * diverts (already fine) > * addresses (already fine) > * bridges (already fine) > * protocol services --> this part is not documented in > https://activemq.apache.org/components/artemis/documentation/latest/config-reload.html, > let's not touch that now. > a PR is added. -- 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-4910) Synchronization of HA cluster after modifying divert with transformer failure
[ https://issues.apache.org/jira/browse/ARTEMIS-4910?focusedWorklogId=926099=com.atlassian.jira.plugin.system.issuetabpanels:worklog-tabpanel#worklog-926099 ] ASF GitHub Bot logged work on ARTEMIS-4910: --- Author: ASF GitHub Bot Created on: 16/Jul/24 11:43 Start Date: 16/Jul/24 11:43 Worklog Time Spent: 10m Work Description: gemmellr commented on code in PR #5079: URL: https://github.com/apache/activemq-artemis/pull/5079#discussion_r167925 ## artemis-server/src/test/java/org/apache/activemq/artemis/core/config/DivertConfigurationEncodingTest.java: ## @@ -0,0 +1,47 @@ +/* + * Licensed to the Apache Software Foundation (ASF) under one or more + * contributor license agreements. See the NOTICE file distributed with + * this work for additional information regarding copyright ownership. + * The ASF licenses this file to You under the Apache License, Version 2.0 + * (the "License"); you may not use this file except in compliance with + * the License. You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ +package org.apache.activemq.artemis.core.config; + +import org.apache.activemq.artemis.api.core.ActiveMQBuffer; +import org.apache.activemq.artemis.api.core.ActiveMQBuffers; +import org.apache.activemq.artemis.core.server.ComponentConfigurationRoutingType; +import org.junit.jupiter.api.Test; + +import static org.junit.jupiter.api.Assertions.assertEquals; + +public class DivertConfigurationEncodingTest { + + @Test + public void testStoreDivertConfigurationWithTransformerNoProperties() { + DivertConfiguration configuration = new DivertConfiguration(); + configuration.setName("myDivertName"); + configuration.setAddress("myDivertAddress"); + configuration.setForwardingAddress("myDivertForwardingAddress"); + configuration.setFilterString("foo='foo'"); + configuration.setRoutingName("myDivertRoutingName"); + configuration.setExclusive(false); + configuration.setRoutingType(ComponentConfigurationRoutingType.ANYCAST); + TransformerConfiguration myDivertTransformer = new TransformerConfiguration("myDivertTransformer"); + myDivertTransformer.getProperties().put("foo", "foo"); + configuration.setTransformerConfiguration(myDivertTransformer); + + int encodeSize = configuration.getEncodeSize(); + ActiveMQBuffer data = ActiveMQBuffers.fixedBuffer(encodeSize); + configuration.encode(data); + assertEquals(encodeSize, data.writerIndex()); Review Comment: > > The bug here was apparently that the value of getEncodeSize() was wrong. > > That was _most_ of the bug, but not all. There was also a bug in the actual encoding (which used `writeString` instead of `writeNullableString`). > > > For a comprehensive encoder test I'd expect an assertion on the exact actual value for given inputs to check it is as expected, but there still isnt such an assertion. > > The test does, in fact, make an assertion on the actual value in question (i.e. the data in the buffer) to ensure it matches the calculated encoded size. > It asserts it is the same as some other length value _it also doesnt really know is correct_. Checking the two values are equal does not validate that either value was actually correct. This PR is even fixing bugs on both sides of the comparison. > Are you suggesting the test essentially re-implement `o.a.a.a.c.c.DivertConfiguration#getEncodeSize` and compare that with the value that the "real" implementation returns? > I am saying that for a given input we should know the exact encoded size and output expected and assert it in a test, but none of these tests really do that. Dont need to implement anything to do that (but could), just verify it. The new additional tests at least check round-tripping gets back to the expected values, which is much improved, but still doesnt check the encoder and decoder are actually doing the correct thing, just that they 'both agree'. I could unwittingly change them in future in a way that 'breaks' them (/the output) but the tests wont detect because they dont really verify the output itself. I think it should be the first test that notices something changed unexpectedly. > > All the tests do is verify the number of bytes written equals that value returned, which it always should, but that doesnt actually check the value was correct to expectations. > > I'm not following. If the code just tested something which "always should"
[jira] [Work logged] (ARTEMIS-4910) Synchronization of HA cluster after modifying divert with transformer failure
[ https://issues.apache.org/jira/browse/ARTEMIS-4910?focusedWorklogId=926089=com.atlassian.jira.plugin.system.issuetabpanels:worklog-tabpanel#worklog-926089 ] ASF GitHub Bot logged work on ARTEMIS-4910: --- Author: ASF GitHub Bot Created on: 16/Jul/24 10:24 Start Date: 16/Jul/24 10:24 Worklog Time Spent: 10m Work Description: gemmellr commented on PR #5079: URL: https://github.com/apache/activemq-artemis/pull/5079#issuecomment-2230548047 > > I find it awkward to reconcile the encoding having changed, with there being no consideration needed at all in terms of upgrade behaviour. > > The _main_ thing that changed here is the calculation of the encoding size, a calculation which isn't performed during the decoding process. > > The only actual encoding change was to fix a bug where encoding & decoding were using mismatched methods. Encoding was using `writeString` and decoding was using `readNullableString`. Technically speaking, this could have been fixed by changing the decoding to using `readString`, but that would have had implications for compatibility. Instead I changed the encoding to use `writeNullableString` which means that the data in the buffer is correct now and there should be no compatibility issues. > > > By 'continue to work as it always had', do you for example mean 'continue to behave incorrectly, until only data generated by new brokers exists'? > > If you have an old broker sending broken data to a new broker the new broker will choke on it. I don't see a reasonable way to avoid that. To clarify, are you saying that this fact needs to be documented? > > > ...if the calculated size has changed...couldnt that have similar effect during the access of old persisted data with the wrong encoded size by a newer broker? > > The encoding size is calculated and written to disk (or wire) along with the record. The new calculation won't come into play when reading this old data. The new broker will read the data from disk just like the old broker did since there's been no changes to decoding. Ok, so you have confirmed everything I thought would be the case. So yes, I think it is reasonable that is at least noted somewhere, even if just the JIRA. Someone who has hit this, upgrades their broker and has now a 'bug fixed' version, is likely to expect that completely resolves their issue. If it actually wont change anything until only data generated by new brokers is in play, it feels like that should be stated so the user can figure that out and learn what to do about it. E.g is it a case of deleting their store to remove the old persisted thing? Removing a specific config and recreating it? Other? I really dont know, hence the suggestion we should perhaps have a few word covering the scenario for anyone else that wouldnt immediately know. Issue Time Tracking --- Worklog Id: (was: 926089) Time Spent: 1h 40m (was: 1.5h) > Synchronization of HA cluster after modifying divert with transformer failure > - > > Key: ARTEMIS-4910 > URL: https://issues.apache.org/jira/browse/ARTEMIS-4910 > Project: ActiveMQ Artemis > Issue Type: Bug > Components: Broker, Clustering, Configuration >Affects Versions: 2.35.0 >Reporter: Kirill Chadakin >Assignee: Justin Bertram >Priority: Major > Attachments: backup_artemis.log, primary_artemis.log > > Time Spent: 1h 40m > Remaining Estimate: 0h > > Modifying divert with transformer in a high-availability (HA) cluster with > Apache Artemis by {{broker.xml}} results in an {{IndexOutOfBoundsException}} > error in the backup logs. This error breaks the connection between the > primary and backup brokers, initiates a quorum vote, and causes the backup to > become active, leading to both brokers operating in parallel. > h2. Steps to Reproduce the Error > 1. Create primary broker > {noformat} > apache-artemis-2.35.0/bin/artemis.cmd create --host=localhost > --default-port=61611 --http-port=8111 --clustered --cluster-user=cls > --cluster-password=cls --replicated --name=br11 --user=usr --password=usr > --allow-anonymous --no-autotune --no-amqp-acceptor --no-hornetq-acceptor > --no-mqtt-acceptor --no-stomp-acceptor br11{noformat} > 2. Create backup broker > {noformat} > apache-artemis-2.35.0/bin/artemis.cmd create --host=localhost > --default-port=61612 --http-port=8112 --clustered --cluster-user=cls > --cluster-password=cls --replicated --backup --name=br12 --user=usr > --password=usr --allow-anonymous --no-autotune --no-amqp-acceptor > --no-hornetq-acceptor --no-mqtt-acceptor --no-stomp-acceptor br12{noformat} > 3. Start brokers > 4. Add test addresses to primary
[jira] [Work logged] (ARTEMIS-4924) Do not allow sending messages directly to store-and-forward queues
[ https://issues.apache.org/jira/browse/ARTEMIS-4924?focusedWorklogId=926075=com.atlassian.jira.plugin.system.issuetabpanels:worklog-tabpanel#worklog-926075 ] ASF GitHub Bot logged work on ARTEMIS-4924: --- Author: ASF GitHub Bot Created on: 16/Jul/24 08:39 Start Date: 16/Jul/24 08:39 Worklog Time Spent: 10m Work Description: gaohoward opened a new pull request, #5091: URL: https://github.com/apache/activemq-artemis/pull/5091 (no comment) Issue Time Tracking --- Worklog Id: (was: 926075) Remaining Estimate: 0h Time Spent: 10m > Do not allow sending messages directly to store-and-forward queues > -- > > Key: ARTEMIS-4924 > URL: https://issues.apache.org/jira/browse/ARTEMIS-4924 > Project: ActiveMQ Artemis > Issue Type: Bug > Components: Clustering >Affects Versions: 2.35.0 >Reporter: Howard Gao >Assignee: Howard Gao >Priority: Major > Time Spent: 10m > Remaining Estimate: 0h > > Currently, if a poison message missing queue information ends up in the SF > queue, the broker logs an error, like: > AMQ222110: no queue IDs defined... > but the message remains in the queue, with the result that the bridge > continuously reconnects, encounters the failure, then evicts the bridge > consumer. -- 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-4910) Synchronization of HA cluster after modifying divert with transformer failure
[ https://issues.apache.org/jira/browse/ARTEMIS-4910?focusedWorklogId=925999=com.atlassian.jira.plugin.system.issuetabpanels:worklog-tabpanel#worklog-925999 ] ASF GitHub Bot logged work on ARTEMIS-4910: --- Author: ASF GitHub Bot Created on: 15/Jul/24 20:28 Start Date: 15/Jul/24 20:28 Worklog Time Spent: 10m Work Description: jbertram commented on code in PR #5079: URL: https://github.com/apache/activemq-artemis/pull/5079#discussion_r1678353444 ## artemis-server/src/test/java/org/apache/activemq/artemis/core/config/DivertConfigurationEncodingTest.java: ## @@ -0,0 +1,47 @@ +/* + * Licensed to the Apache Software Foundation (ASF) under one or more + * contributor license agreements. See the NOTICE file distributed with + * this work for additional information regarding copyright ownership. + * The ASF licenses this file to You under the Apache License, Version 2.0 + * (the "License"); you may not use this file except in compliance with + * the License. You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ +package org.apache.activemq.artemis.core.config; + +import org.apache.activemq.artemis.api.core.ActiveMQBuffer; +import org.apache.activemq.artemis.api.core.ActiveMQBuffers; +import org.apache.activemq.artemis.core.server.ComponentConfigurationRoutingType; +import org.junit.jupiter.api.Test; + +import static org.junit.jupiter.api.Assertions.assertEquals; + +public class DivertConfigurationEncodingTest { + + @Test + public void testStoreDivertConfigurationWithTransformerNoProperties() { + DivertConfiguration configuration = new DivertConfiguration(); + configuration.setName("myDivertName"); + configuration.setAddress("myDivertAddress"); + configuration.setForwardingAddress("myDivertForwardingAddress"); + configuration.setFilterString("foo='foo'"); + configuration.setRoutingName("myDivertRoutingName"); + configuration.setExclusive(false); + configuration.setRoutingType(ComponentConfigurationRoutingType.ANYCAST); + TransformerConfiguration myDivertTransformer = new TransformerConfiguration("myDivertTransformer"); + myDivertTransformer.getProperties().put("foo", "foo"); + configuration.setTransformerConfiguration(myDivertTransformer); + + int encodeSize = configuration.getEncodeSize(); + ActiveMQBuffer data = ActiveMQBuffers.fixedBuffer(encodeSize); + configuration.encode(data); + assertEquals(encodeSize, data.writerIndex()); Review Comment: > The bug here was apparently that the value of getEncodeSize() was wrong. That was _most_ of the bug, but not all. There was also a bug in the actual encoding (which used `writeString` instead of `writeNullableString`). > For a comprehensive encoder test I'd expect an assertion on the exact actual value for given inputs to check it is as expected, but there still isnt such an assertion. The test does, in fact, make an assertion on the actual value in question (i.e. the data in the buffer) to ensure it matches the calculated encoded size. Are you suggesting the test essentially re-implement `o.a.a.a.c.c.DivertConfiguration#getEncodeSize` and compare that with the value that the "real" implementation returns? > All the tests do is verify the number of bytes written equals that value returned, which it always should, but that doesnt actually check the value was correct to expectations. I'm not following. If the code just tested something which "always should" be the case then it would never fail. However, the test does fail if you remove the fix(es). To be clear, the test is comparing the _calculated_ encoding size with the _actual_ encoded size of the data to ensure they are the same. > Similarly with the actual encoded bytes, they are not directly asserted, only indirectly verified by using the decoder. I'm not clear on how to "directly" assert the values of the bytes without essentially re-implementing the decoder or using static values which themselves are generated from existing code. Do you have any specific suggestions on how to do this? FWIW, my goal for this PR was not to provide an exhaustive set of tests for divert encoding/decoding. I simply wanted to fix and verify the specific use-case from ARTEMIS-4910. Issue Time Tracking --- Worklog Id: (was: 925999) Time Spent: 1.5h (was: 1h 20m) > Synchronization of HA cluster after modifying divert with transformer failure >
[jira] [Work logged] (ARTEMIS-4787) Anycast queue does not auto-create if already multicast queue on same address
[ https://issues.apache.org/jira/browse/ARTEMIS-4787?focusedWorklogId=925988=com.atlassian.jira.plugin.system.issuetabpanels:worklog-tabpanel#worklog-925988 ] ASF GitHub Bot logged work on ARTEMIS-4787: --- Author: ASF GitHub Bot Created on: 15/Jul/24 19:47 Start Date: 15/Jul/24 19:47 Worklog Time Spent: 10m Work Description: tabish121 commented on PR #4957: URL: https://github.com/apache/activemq-artemis/pull/4957#issuecomment-2229259842 I ran this through CI and it seems to break quite a few tests, so probably more work to do here. Issue Time Tracking --- Worklog Id: (was: 925988) Time Spent: 50m (was: 40m) > Anycast queue does not auto-create if already multicast queue on same address > - > > Key: ARTEMIS-4787 > URL: https://issues.apache.org/jira/browse/ARTEMIS-4787 > Project: ActiveMQ Artemis > Issue Type: Bug > Components: Broker >Reporter: Josh Byster >Assignee: Justin Bertram >Priority: Major > Time Spent: 50m > Remaining Estimate: 0h > > As a preface, I am aware that creating both anycast and multicast queues on > the same address is an anti-pattern and not recommended. However, this is > causing difficulties migrating over legacy clients from using Classic to > Artemis. > If one creates a JMS topic on an address, and then tries to create a JMS > queue, it fails to create. However, if the order is flipped (creating a > queue, then a topic), there is no exception. > It seems like the issue is in this area of {{ServerSessionImpl}}: > {code:java} > Bindings bindings = > server.getPostOffice().lookupBindingsForAddress(unPrefixedAddress); > if (bindings != null && bindings.hasLocalBinding() && !queueConfig.isFqqn()) { >// The address has another queue with a different name, which is fine. > Just ignore it. >result = AutoCreateResult.EXISTED;{code} > Please see test below to reproduce, which throws the exception immediately as > seen in production. > {code:java} > package org.apache.activemq.artemis.tests.integration; > import org.apache.activemq.artemis.api.core.client.ClientSession; > import org.apache.activemq.artemis.api.core.client.ClientSessionFactory; > import org.apache.activemq.artemis.api.core.client.ServerLocator; > import org.apache.activemq.artemis.core.server.ActiveMQServer; > import org.apache.activemq.artemis.core.settings.impl.AddressSettings; > import org.apache.activemq.artemis.tests.util.ActiveMQTestBase; > import org.junit.Before; > import org.junit.Test; > import javax.jms.Connection; > import javax.jms.ConnectionFactory; > import javax.jms.MessageConsumer; > import javax.jms.Queue; > import javax.jms.Session; > import javax.jms.Topic; > import java.util.HashMap; > public class QueueTopicSameNameTest extends ActiveMQTestBase { > protected ActiveMQServer server; > @Override > @Before > public void setUp() throws Exception { > super.setUp(); > server = createServer(true, createDefaultNettyConfig()); > server.start(); > } > @Test > public void testTopicThenQueueCreate() throws Exception { > String myAddr = "TEST"; > ConnectionFactory cf = new > org.apache.activemq.ActiveMQConnectionFactory("failover:(tcp://localhost:61616)"); > Connection c = cf.createConnection(); > Session s = c.createSession(); > Topic t = s.createTopic(myAddr); > MessageConsumer consumer = s.createConsumer(t); > Queue q = s.createQueue(myAddr); > MessageConsumer otherConsumer = s.createConsumer(q); > c.close(); > } > }{code} -- 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-4910) Synchronization of HA cluster after modifying divert with transformer failure
[ https://issues.apache.org/jira/browse/ARTEMIS-4910?focusedWorklogId=925983=com.atlassian.jira.plugin.system.issuetabpanels:worklog-tabpanel#worklog-925983 ] ASF GitHub Bot logged work on ARTEMIS-4910: --- Author: ASF GitHub Bot Created on: 15/Jul/24 18:45 Start Date: 15/Jul/24 18:45 Worklog Time Spent: 10m Work Description: jbertram commented on PR #5079: URL: https://github.com/apache/activemq-artemis/pull/5079#issuecomment-2229156489 > I find it awkward to reconcile the encoding having changed, with there being no consideration needed at all in terms of upgrade behaviour. The _main_ thing that changed here is the calculation of the encoding size, a calculation which isn't performed during the decoding process. The only actual encoding change was to fix a bug where encoding & decoding were using mismatched methods. Encoding was using `writeString` and decoding was using `readNullableString`. Technically speaking, this could have been fixed by changing the decoding to using `readString`, but that would have had implications for compatibility. Instead I changed the encoding to use `writeNullableString` which means that the data in the buffer is correct now and there should be no compatibility issues. > By 'continue to work as it always had', do you for example mean 'continue to behave incorrectly, until only data generated by new brokers exists'? If you have an old broker sending broken data to a new broker the new broker will choke on it. I don't see a reasonable way to avoid that. To clarify, are you saying that this fact needs to be documented? > ...if the calculated size has changed...couldnt that have similar effect during the access of old persisted data with the wrong encoded size by a newer broker? The encoding size is calculated and written to disk (or wire) along with the record. The new calculation won't come into play when reading this old data. The new broker will read the data from disk just like the old broker did since there's been no changes to decoding. Issue Time Tracking --- Worklog Id: (was: 925983) Time Spent: 1h 20m (was: 1h 10m) > Synchronization of HA cluster after modifying divert with transformer failure > - > > Key: ARTEMIS-4910 > URL: https://issues.apache.org/jira/browse/ARTEMIS-4910 > Project: ActiveMQ Artemis > Issue Type: Bug > Components: Broker, Clustering, Configuration >Affects Versions: 2.35.0 >Reporter: Kirill Chadakin >Assignee: Justin Bertram >Priority: Major > Attachments: backup_artemis.log, primary_artemis.log > > Time Spent: 1h 20m > Remaining Estimate: 0h > > Modifying divert with transformer in a high-availability (HA) cluster with > Apache Artemis by {{broker.xml}} results in an {{IndexOutOfBoundsException}} > error in the backup logs. This error breaks the connection between the > primary and backup brokers, initiates a quorum vote, and causes the backup to > become active, leading to both brokers operating in parallel. > h2. Steps to Reproduce the Error > 1. Create primary broker > {noformat} > apache-artemis-2.35.0/bin/artemis.cmd create --host=localhost > --default-port=61611 --http-port=8111 --clustered --cluster-user=cls > --cluster-password=cls --replicated --name=br11 --user=usr --password=usr > --allow-anonymous --no-autotune --no-amqp-acceptor --no-hornetq-acceptor > --no-mqtt-acceptor --no-stomp-acceptor br11{noformat} > 2. Create backup broker > {noformat} > apache-artemis-2.35.0/bin/artemis.cmd create --host=localhost > --default-port=61612 --http-port=8112 --clustered --cluster-user=cls > --cluster-password=cls --replicated --backup --name=br12 --user=usr > --password=usr --allow-anonymous --no-autotune --no-amqp-acceptor > --no-hornetq-acceptor --no-mqtt-acceptor --no-stomp-acceptor br12{noformat} > 3. Start brokers > 4. Add test addresses to primary {{broker.xml}}: > {code:xml} > > > > > > > > > > {code} > 5. Add divert with transformer to primary broker.xml > {code:xml} > > > TEST.IN > TEST.OUT > > > > org.apache.activemq.artemis.core.server.transformer.AddHeadersTransformer > > > {code} > h2. Result > - an {{IndexOutOfBoundsException}} error will appear in the backup logs, > e.g.: > {noformat} > ERROR [org.apache.activemq.artemis.core.client] AMQ214013: Failed to decode > packet > java.lang.IndexOutOfBoundsException: readerIndex(28) + length(209) exceeds > writerIndex(233): PooledUnsafeDirectByteBuf(ridx: 28, widx: 233, cap: 233) > at > io.netty.buffer.AbstractByteBuf.checkReadableBytes0(AbstractByteBuf.java:1442) >
[jira] [Work logged] (ARTEMIS-4787) Anycast queue does not auto-create if already multicast queue on same address
[ https://issues.apache.org/jira/browse/ARTEMIS-4787?focusedWorklogId=925982=com.atlassian.jira.plugin.system.issuetabpanels:worklog-tabpanel#worklog-925982 ] ASF GitHub Bot logged work on ARTEMIS-4787: --- Author: ASF GitHub Bot Created on: 15/Jul/24 18:33 Start Date: 15/Jul/24 18:33 Worklog Time Spent: 10m Work Description: tabish121 commented on PR #4957: URL: https://github.com/apache/activemq-artemis/pull/4957#issuecomment-2229136591 > Does [ac1b483](https://github.com/apache/activemq-artemis/commit/ac1b483cb449b72b5eaa2b4c6547bc7cdea92dae) factor in here at all? I believe it came up in the context of federation, but seems like it could overlap and looks like it went in after your changes were created. > > Needs rebased and retested either way at this point. The change in the mentioned commit doesn't come into play here as the AMQP sender controller code is checking that an address created with one routing type doesn't get used when creating a queue with the opposing routing type, in this case the first consumer created wins and the second case can't proceed as it would violate the checks int he controller. Issue Time Tracking --- Worklog Id: (was: 925982) Time Spent: 40m (was: 0.5h) > Anycast queue does not auto-create if already multicast queue on same address > - > > Key: ARTEMIS-4787 > URL: https://issues.apache.org/jira/browse/ARTEMIS-4787 > Project: ActiveMQ Artemis > Issue Type: Bug > Components: Broker >Reporter: Josh Byster >Assignee: Justin Bertram >Priority: Major > Time Spent: 40m > Remaining Estimate: 0h > > As a preface, I am aware that creating both anycast and multicast queues on > the same address is an anti-pattern and not recommended. However, this is > causing difficulties migrating over legacy clients from using Classic to > Artemis. > If one creates a JMS topic on an address, and then tries to create a JMS > queue, it fails to create. However, if the order is flipped (creating a > queue, then a topic), there is no exception. > It seems like the issue is in this area of {{ServerSessionImpl}}: > {code:java} > Bindings bindings = > server.getPostOffice().lookupBindingsForAddress(unPrefixedAddress); > if (bindings != null && bindings.hasLocalBinding() && !queueConfig.isFqqn()) { >// The address has another queue with a different name, which is fine. > Just ignore it. >result = AutoCreateResult.EXISTED;{code} > Please see test below to reproduce, which throws the exception immediately as > seen in production. > {code:java} > package org.apache.activemq.artemis.tests.integration; > import org.apache.activemq.artemis.api.core.client.ClientSession; > import org.apache.activemq.artemis.api.core.client.ClientSessionFactory; > import org.apache.activemq.artemis.api.core.client.ServerLocator; > import org.apache.activemq.artemis.core.server.ActiveMQServer; > import org.apache.activemq.artemis.core.settings.impl.AddressSettings; > import org.apache.activemq.artemis.tests.util.ActiveMQTestBase; > import org.junit.Before; > import org.junit.Test; > import javax.jms.Connection; > import javax.jms.ConnectionFactory; > import javax.jms.MessageConsumer; > import javax.jms.Queue; > import javax.jms.Session; > import javax.jms.Topic; > import java.util.HashMap; > public class QueueTopicSameNameTest extends ActiveMQTestBase { > protected ActiveMQServer server; > @Override > @Before > public void setUp() throws Exception { > super.setUp(); > server = createServer(true, createDefaultNettyConfig()); > server.start(); > } > @Test > public void testTopicThenQueueCreate() throws Exception { > String myAddr = "TEST"; > ConnectionFactory cf = new > org.apache.activemq.ActiveMQConnectionFactory("failover:(tcp://localhost:61616)"); > Connection c = cf.createConnection(); > Session s = c.createSession(); > Topic t = s.createTopic(myAddr); > MessageConsumer consumer = s.createConsumer(t); > Queue q = s.createQueue(myAddr); > MessageConsumer otherConsumer = s.createConsumer(q); > c.close(); > } > }{code} -- 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-4794) CoreBridge: Duplicate message when bridge is stopped/Lost message when bridge is paused while messages being produced to target node.
[ https://issues.apache.org/jira/browse/ARTEMIS-4794?focusedWorklogId=925973=com.atlassian.jira.plugin.system.issuetabpanels:worklog-tabpanel#worklog-925973 ] ASF GitHub Bot logged work on ARTEMIS-4794: --- Author: ASF GitHub Bot Created on: 15/Jul/24 17:19 Start Date: 15/Jul/24 17:19 Worklog Time Spent: 10m Work Description: gemmellr merged PR #4996: URL: https://github.com/apache/activemq-artemis/pull/4996 Issue Time Tracking --- Worklog Id: (was: 925973) Time Spent: 50m (was: 40m) > CoreBridge: Duplicate message when bridge is stopped/Lost message when bridge > is paused while messages being produced to target node. > - > > Key: ARTEMIS-4794 > URL: https://issues.apache.org/jira/browse/ARTEMIS-4794 > Project: ActiveMQ Artemis > Issue Type: Bug >Affects Versions: 2.30.0, 2.34.0, 2.35.0 >Reporter: nmeylan >Priority: Major > Attachments: BridgeARTEMIS4794Test.java, > message-not-deliverable.log.txt > > Time Spent: 50m > Remaining Estimate: 0h > > +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-4910) Synchronization of HA cluster after modifying divert with transformer failure
[ https://issues.apache.org/jira/browse/ARTEMIS-4910?focusedWorklogId=925972=com.atlassian.jira.plugin.system.issuetabpanels:worklog-tabpanel#worklog-925972 ] ASF GitHub Bot logged work on ARTEMIS-4910: --- Author: ASF GitHub Bot Created on: 15/Jul/24 17:18 Start Date: 15/Jul/24 17:18 Worklog Time Spent: 10m Work Description: gemmellr commented on code in PR #5079: URL: https://github.com/apache/activemq-artemis/pull/5079#discussion_r1678160843 ## artemis-server/src/test/java/org/apache/activemq/artemis/core/config/DivertConfigurationEncodingTest.java: ## @@ -0,0 +1,47 @@ +/* + * Licensed to the Apache Software Foundation (ASF) under one or more + * contributor license agreements. See the NOTICE file distributed with + * this work for additional information regarding copyright ownership. + * The ASF licenses this file to You under the Apache License, Version 2.0 + * (the "License"); you may not use this file except in compliance with + * the License. You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ +package org.apache.activemq.artemis.core.config; + +import org.apache.activemq.artemis.api.core.ActiveMQBuffer; +import org.apache.activemq.artemis.api.core.ActiveMQBuffers; +import org.apache.activemq.artemis.core.server.ComponentConfigurationRoutingType; +import org.junit.jupiter.api.Test; + +import static org.junit.jupiter.api.Assertions.assertEquals; + +public class DivertConfigurationEncodingTest { + + @Test + public void testStoreDivertConfigurationWithTransformerNoProperties() { + DivertConfiguration configuration = new DivertConfiguration(); + configuration.setName("myDivertName"); + configuration.setAddress("myDivertAddress"); + configuration.setForwardingAddress("myDivertForwardingAddress"); + configuration.setFilterString("foo='foo'"); + configuration.setRoutingName("myDivertRoutingName"); + configuration.setExclusive(false); + configuration.setRoutingType(ComponentConfigurationRoutingType.ANYCAST); + TransformerConfiguration myDivertTransformer = new TransformerConfiguration("myDivertTransformer"); + myDivertTransformer.getProperties().put("foo", "foo"); + configuration.setTransformerConfiguration(myDivertTransformer); + + int encodeSize = configuration.getEncodeSize(); + ActiveMQBuffer data = ActiveMQBuffers.fixedBuffer(encodeSize); + configuration.encode(data); + assertEquals(encodeSize, data.writerIndex()); Review Comment: The new tests are better, but still dont really cover the original comment. The bug here was apparently that the value of getEncodeSize() was wrong. For a comprehensive encoder test I'd expect an assertion on the exact actual value for given inputs to check it is as expected, but there still isnt such an assertion. All the tests do is verify the number of bytes written equals that value returned, which it always should, but that doesnt actually check the value was correct to expectations. Similarly with the actual encoded bytes, they are not directly asserted, only indirectly verified by using the decoder. The new tests decode those output bytes, and assert the resulting components are as expected, which is certainly much better than before. However that also doesnt strictly check that they were encoded properly to begin with; the encoder and decoder could have compensating bugs and both be incorrect. Or the wrong methods could be used to encode a value giving it an unexpected (but perhaps decodable as equivalent) value in the buffer.. You also fixed such an issue in the encoder in the PR, though in this case it seems like it would just have caused an NPE. Issue Time Tracking --- Worklog Id: (was: 925972) Time Spent: 1h 10m (was: 1h) > Synchronization of HA cluster after modifying divert with transformer failure > - > > Key: ARTEMIS-4910 > URL: https://issues.apache.org/jira/browse/ARTEMIS-4910 > Project: ActiveMQ Artemis > Issue Type: Bug > Components: Broker, Clustering, Configuration >Affects Versions: 2.35.0 >Reporter: Kirill Chadakin >Assignee: Justin Bertram >Priority: Major > Attachments: backup_artemis.log, primary_artemis.log > > Time Spent: 1h 10m > Remaining Estimate: 0h > > Modifying divert with transformer in a high-availability (HA)
[jira] [Work logged] (ARTEMIS-4910) Synchronization of HA cluster after modifying divert with transformer failure
[ https://issues.apache.org/jira/browse/ARTEMIS-4910?focusedWorklogId=925970=com.atlassian.jira.plugin.system.issuetabpanels:worklog-tabpanel#worklog-925970 ] ASF GitHub Bot logged work on ARTEMIS-4910: --- Author: ASF GitHub Bot Created on: 15/Jul/24 17:02 Start Date: 15/Jul/24 17:02 Worklog Time Spent: 10m Work Description: gemmellr commented on PR #5079: URL: https://github.com/apache/activemq-artemis/pull/5079#issuecomment-2228983608 I find it awkward to reconcile the encoding having changed, with there being no consideration needed at all in terms of upgrade behaviour. Either during decoding of old persisted data, or data generated afresh by an old broker. By 'continue to work as it always had', do you for example mean 'continue to behave incorrectly, until only data generated by new brokers exists'? If so, that would still seems worth documenting somewhere, e.g jsut the Jira. E.g if the calculated size has changed, which apparently is enough to fix a bug over the wire for live brokers, couldnt that have similar effect during the access of old persisted data with the wrong encoded size by a newer broker? Or does it somehow not use that incorrect size of persisted data to decode it correctly, or refreshes it so it has the correct encoded size persisted, when it is a new broker reading it? Issue Time Tracking --- Worklog Id: (was: 925970) Time Spent: 1h (was: 50m) > Synchronization of HA cluster after modifying divert with transformer failure > - > > Key: ARTEMIS-4910 > URL: https://issues.apache.org/jira/browse/ARTEMIS-4910 > Project: ActiveMQ Artemis > Issue Type: Bug > Components: Broker, Clustering, Configuration >Affects Versions: 2.35.0 >Reporter: Kirill Chadakin >Assignee: Justin Bertram >Priority: Major > Attachments: backup_artemis.log, primary_artemis.log > > Time Spent: 1h > Remaining Estimate: 0h > > Modifying divert with transformer in a high-availability (HA) cluster with > Apache Artemis by {{broker.xml}} results in an {{IndexOutOfBoundsException}} > error in the backup logs. This error breaks the connection between the > primary and backup brokers, initiates a quorum vote, and causes the backup to > become active, leading to both brokers operating in parallel. > h2. Steps to Reproduce the Error > 1. Create primary broker > {noformat} > apache-artemis-2.35.0/bin/artemis.cmd create --host=localhost > --default-port=61611 --http-port=8111 --clustered --cluster-user=cls > --cluster-password=cls --replicated --name=br11 --user=usr --password=usr > --allow-anonymous --no-autotune --no-amqp-acceptor --no-hornetq-acceptor > --no-mqtt-acceptor --no-stomp-acceptor br11{noformat} > 2. Create backup broker > {noformat} > apache-artemis-2.35.0/bin/artemis.cmd create --host=localhost > --default-port=61612 --http-port=8112 --clustered --cluster-user=cls > --cluster-password=cls --replicated --backup --name=br12 --user=usr > --password=usr --allow-anonymous --no-autotune --no-amqp-acceptor > --no-hornetq-acceptor --no-mqtt-acceptor --no-stomp-acceptor br12{noformat} > 3. Start brokers > 4. Add test addresses to primary {{broker.xml}}: > {code:xml} > > > > > > > > > > {code} > 5. Add divert with transformer to primary broker.xml > {code:xml} > > > TEST.IN > TEST.OUT > > > > org.apache.activemq.artemis.core.server.transformer.AddHeadersTransformer > > > {code} > h2. Result > - an {{IndexOutOfBoundsException}} error will appear in the backup logs > - the connection between primary and backup will be broken > - a quorum vote will be initiated > - the backup will become active and will operate in parallel with the primary -- 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-4787) Anycast queue does not auto-create if already multicast queue on same address
[ https://issues.apache.org/jira/browse/ARTEMIS-4787?focusedWorklogId=925969=com.atlassian.jira.plugin.system.issuetabpanels:worklog-tabpanel#worklog-925969 ] ASF GitHub Bot logged work on ARTEMIS-4787: --- Author: ASF GitHub Bot Created on: 15/Jul/24 16:42 Start Date: 15/Jul/24 16:42 Worklog Time Spent: 10m Work Description: tabish121 commented on PR #4957: URL: https://github.com/apache/activemq-artemis/pull/4957#issuecomment-2228943625 This one needs rebased and touched up before it can be checked as main has quite a few changes including deprecating methods in SimpleString the tests added are still using. Issue Time Tracking --- Worklog Id: (was: 925969) Time Spent: 0.5h (was: 20m) > Anycast queue does not auto-create if already multicast queue on same address > - > > Key: ARTEMIS-4787 > URL: https://issues.apache.org/jira/browse/ARTEMIS-4787 > Project: ActiveMQ Artemis > Issue Type: Bug > Components: Broker >Reporter: Josh Byster >Assignee: Justin Bertram >Priority: Major > Time Spent: 0.5h > Remaining Estimate: 0h > > As a preface, I am aware that creating both anycast and multicast queues on > the same address is an anti-pattern and not recommended. However, this is > causing difficulties migrating over legacy clients from using Classic to > Artemis. > If one creates a JMS topic on an address, and then tries to create a JMS > queue, it fails to create. However, if the order is flipped (creating a > queue, then a topic), there is no exception. > It seems like the issue is in this area of {{ServerSessionImpl}}: > {code:java} > Bindings bindings = > server.getPostOffice().lookupBindingsForAddress(unPrefixedAddress); > if (bindings != null && bindings.hasLocalBinding() && !queueConfig.isFqqn()) { >// The address has another queue with a different name, which is fine. > Just ignore it. >result = AutoCreateResult.EXISTED;{code} > Please see test below to reproduce, which throws the exception immediately as > seen in production. > {code:java} > package org.apache.activemq.artemis.tests.integration; > import org.apache.activemq.artemis.api.core.client.ClientSession; > import org.apache.activemq.artemis.api.core.client.ClientSessionFactory; > import org.apache.activemq.artemis.api.core.client.ServerLocator; > import org.apache.activemq.artemis.core.server.ActiveMQServer; > import org.apache.activemq.artemis.core.settings.impl.AddressSettings; > import org.apache.activemq.artemis.tests.util.ActiveMQTestBase; > import org.junit.Before; > import org.junit.Test; > import javax.jms.Connection; > import javax.jms.ConnectionFactory; > import javax.jms.MessageConsumer; > import javax.jms.Queue; > import javax.jms.Session; > import javax.jms.Topic; > import java.util.HashMap; > public class QueueTopicSameNameTest extends ActiveMQTestBase { > protected ActiveMQServer server; > @Override > @Before > public void setUp() throws Exception { > super.setUp(); > server = createServer(true, createDefaultNettyConfig()); > server.start(); > } > @Test > public void testTopicThenQueueCreate() throws Exception { > String myAddr = "TEST"; > ConnectionFactory cf = new > org.apache.activemq.ActiveMQConnectionFactory("failover:(tcp://localhost:61616)"); > Connection c = cf.createConnection(); > Session s = c.createSession(); > Topic t = s.createTopic(myAddr); > MessageConsumer consumer = s.createConsumer(t); > Queue q = s.createQueue(myAddr); > MessageConsumer otherConsumer = s.createConsumer(q); > c.close(); > } > }{code} -- 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-4910) Synchronization of HA cluster after modifying divert with transformer failure
[ https://issues.apache.org/jira/browse/ARTEMIS-4910?focusedWorklogId=925966=com.atlassian.jira.plugin.system.issuetabpanels:worklog-tabpanel#worklog-925966 ] ASF GitHub Bot logged work on ARTEMIS-4910: --- Author: ASF GitHub Bot Created on: 15/Jul/24 16:37 Start Date: 15/Jul/24 16:37 Worklog Time Spent: 10m Work Description: jbertram commented on code in PR #5079: URL: https://github.com/apache/activemq-artemis/pull/5079#discussion_r1678114738 ## artemis-server/src/test/java/org/apache/activemq/artemis/core/config/DivertConfigurationEncodingTest.java: ## @@ -0,0 +1,47 @@ +/* + * Licensed to the Apache Software Foundation (ASF) under one or more + * contributor license agreements. See the NOTICE file distributed with + * this work for additional information regarding copyright ownership. + * The ASF licenses this file to You under the Apache License, Version 2.0 + * (the "License"); you may not use this file except in compliance with + * the License. You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ +package org.apache.activemq.artemis.core.config; + +import org.apache.activemq.artemis.api.core.ActiveMQBuffer; +import org.apache.activemq.artemis.api.core.ActiveMQBuffers; +import org.apache.activemq.artemis.core.server.ComponentConfigurationRoutingType; +import org.junit.jupiter.api.Test; + +import static org.junit.jupiter.api.Assertions.assertEquals; + +public class DivertConfigurationEncodingTest { + + @Test + public void testStoreDivertConfigurationWithTransformerNoProperties() { + DivertConfiguration configuration = new DivertConfiguration(); + configuration.setName("myDivertName"); + configuration.setAddress("myDivertAddress"); + configuration.setForwardingAddress("myDivertForwardingAddress"); + configuration.setFilterString("foo='foo'"); + configuration.setRoutingName("myDivertRoutingName"); + configuration.setExclusive(false); + configuration.setRoutingType(ComponentConfigurationRoutingType.ANYCAST); + TransformerConfiguration myDivertTransformer = new TransformerConfiguration("myDivertTransformer"); + myDivertTransformer.getProperties().put("foo", "foo"); + configuration.setTransformerConfiguration(myDivertTransformer); + + int encodeSize = configuration.getEncodeSize(); + ActiveMQBuffer data = ActiveMQBuffers.fixedBuffer(encodeSize); + configuration.encode(data); + assertEquals(encodeSize, data.writerIndex()); Review Comment: I added some more tests. :+1: Issue Time Tracking --- Worklog Id: (was: 925966) Time Spent: 50m (was: 40m) > Synchronization of HA cluster after modifying divert with transformer failure > - > > Key: ARTEMIS-4910 > URL: https://issues.apache.org/jira/browse/ARTEMIS-4910 > Project: ActiveMQ Artemis > Issue Type: Bug > Components: Broker, Clustering, Configuration >Affects Versions: 2.35.0 >Reporter: Kirill Chadakin >Assignee: Justin Bertram >Priority: Major > Attachments: backup_artemis.log, primary_artemis.log > > Time Spent: 50m > Remaining Estimate: 0h > > Modifying divert with transformer in a high-availability (HA) cluster with > Apache Artemis by {{broker.xml}} results in an {{IndexOutOfBoundsException}} > error in the backup logs. This error breaks the connection between the > primary and backup brokers, initiates a quorum vote, and causes the backup to > become active, leading to both brokers operating in parallel. > h2. Steps to Reproduce the Error > 1. Create primary broker > {noformat} > apache-artemis-2.35.0/bin/artemis.cmd create --host=localhost > --default-port=61611 --http-port=8111 --clustered --cluster-user=cls > --cluster-password=cls --replicated --name=br11 --user=usr --password=usr > --allow-anonymous --no-autotune --no-amqp-acceptor --no-hornetq-acceptor > --no-mqtt-acceptor --no-stomp-acceptor br11{noformat} > 2. Create backup broker > {noformat} > apache-artemis-2.35.0/bin/artemis.cmd create --host=localhost > --default-port=61612 --http-port=8112 --clustered --cluster-user=cls > --cluster-password=cls --replicated --backup --name=br12 --user=usr > --password=usr --allow-anonymous --no-autotune --no-amqp-acceptor > --no-hornetq-acceptor --no-mqtt-acceptor --no-stomp-acceptor br12{noformat} > 3. Start brokers > 4. Add test addresses to
[jira] [Work logged] (AMQ-9484) Support exporting kahadb messages from a queue with an offset
[ https://issues.apache.org/jira/browse/AMQ-9484?focusedWorklogId=925950=com.atlassian.jira.plugin.system.issuetabpanels:worklog-tabpanel#worklog-925950 ] ASF GitHub Bot logged work on AMQ-9484: --- Author: ASF GitHub Bot Created on: 15/Jul/24 15:33 Start Date: 15/Jul/24 15:33 Worklog Time Spent: 10m Work Description: mattrpav commented on code in PR #1258: URL: https://github.com/apache/activemq/pull/1258#discussion_r1678023094 ## activemq-broker/src/main/java/org/apache/activemq/store/memory/MemoryMessageStore.java: ## @@ -130,6 +130,32 @@ public void recoverNextMessages(int maxReturned, MessageRecoveryListener listene } } +@Override +public void recoverNextMessages(int offset, int maxReturned, MessageRecoveryListener listener) throws Exception { +synchronized (messageTable) { +boolean pastLackBatch = lastBatchId == null; Review Comment: Misnamed variable aligns other method usage Issue Time Tracking --- Worklog Id: (was: 925950) Time Spent: 1h 50m (was: 1h 40m) > Support exporting kahadb messages from a queue with an offset > - > > Key: AMQ-9484 > URL: https://issues.apache.org/jira/browse/AMQ-9484 > Project: ActiveMQ Classic > Issue Type: New Feature >Reporter: Matt Pavlovich >Assignee: Matt Pavlovich >Priority: Minor > Fix For: 6.2.0 > > Time Spent: 1h 50m > Remaining Estimate: 0h > > Support exporting and pulling messages from a MessageStore with an offset, to > prevent loading _every_ message into memory (and subsequent required gc). > For example, if a user wants to export the last message from a queue with > 1,000 messages, they can scan over the index skipping most messages vs > loading all messages into memory to get to the last message. -- 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-9484) Support exporting kahadb messages from a queue with an offset
[ https://issues.apache.org/jira/browse/AMQ-9484?focusedWorklogId=925948=com.atlassian.jira.plugin.system.issuetabpanels:worklog-tabpanel#worklog-925948 ] ASF GitHub Bot logged work on AMQ-9484: --- Author: ASF GitHub Bot Created on: 15/Jul/24 15:13 Start Date: 15/Jul/24 15:13 Worklog Time Spent: 10m Work Description: mattrpav commented on code in PR #1258: URL: https://github.com/apache/activemq/pull/1258#discussion_r1677994180 ## activemq-console/src/main/java/org/apache/activemq/console/command/StoreExportCommand.java: ## @@ -24,7 +24,7 @@ import java.util.List; /** - * @author http://hiramchirino.com;>Hiram Chirino + * @author Matt Pavlovich Review Comment: fixed Issue Time Tracking --- Worklog Id: (was: 925948) Time Spent: 1h 40m (was: 1.5h) > Support exporting kahadb messages from a queue with an offset > - > > Key: AMQ-9484 > URL: https://issues.apache.org/jira/browse/AMQ-9484 > Project: ActiveMQ Classic > Issue Type: New Feature >Reporter: Matt Pavlovich >Assignee: Matt Pavlovich >Priority: Minor > Fix For: 6.2.0 > > Time Spent: 1h 40m > Remaining Estimate: 0h > > Support exporting and pulling messages from a MessageStore with an offset, to > prevent loading _every_ message into memory (and subsequent required gc). > For example, if a user wants to export the last message from a queue with > 1,000 messages, they can scan over the index skipping most messages vs > loading all messages into memory to get to the last message. -- 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-4910) Synchronization of HA cluster after modifying divert with transformer failure
[ https://issues.apache.org/jira/browse/ARTEMIS-4910?focusedWorklogId=925944=com.atlassian.jira.plugin.system.issuetabpanels:worklog-tabpanel#worklog-925944 ] ASF GitHub Bot logged work on ARTEMIS-4910: --- Author: ASF GitHub Bot Created on: 15/Jul/24 15:01 Start Date: 15/Jul/24 15:01 Worklog Time Spent: 10m Work Description: jbertram commented on PR #5079: URL: https://github.com/apache/activemq-artemis/pull/5079#issuecomment-2228714648 I don't believe there will be any compatibility issues. To be clear, the changes only impact how a divert configuration is _encoded_. Nothing is changing with how it is _decoded_. This will mainly impact new brokers encoding new configurations. Any old configuration being read from disk or from the wire by a new broker will continue to work as it always had. Furthermore, a new broker sending a config over the wire to an old broker will also work properly not least because now since it's being encoded correctly. Issue Time Tracking --- Worklog Id: (was: 925944) Time Spent: 40m (was: 0.5h) > Synchronization of HA cluster after modifying divert with transformer failure > - > > Key: ARTEMIS-4910 > URL: https://issues.apache.org/jira/browse/ARTEMIS-4910 > Project: ActiveMQ Artemis > Issue Type: Bug > Components: Broker, Clustering, Configuration >Affects Versions: 2.35.0 >Reporter: Kirill Chadakin >Assignee: Justin Bertram >Priority: Major > Attachments: backup_artemis.log, primary_artemis.log > > Time Spent: 40m > Remaining Estimate: 0h > > Modifying divert with transformer in a high-availability (HA) cluster with > Apache Artemis by {{broker.xml}} results in an {{IndexOutOfBoundsException}} > error in the backup logs. This error breaks the connection between the > primary and backup brokers, initiates a quorum vote, and causes the backup to > become active, leading to both brokers operating in parallel. > h2. Steps to Reproduce the Error > 1. Create primary broker > {noformat} > apache-artemis-2.35.0/bin/artemis.cmd create --host=localhost > --default-port=61611 --http-port=8111 --clustered --cluster-user=cls > --cluster-password=cls --replicated --name=br11 --user=usr --password=usr > --allow-anonymous --no-autotune --no-amqp-acceptor --no-hornetq-acceptor > --no-mqtt-acceptor --no-stomp-acceptor br11{noformat} > 2. Create backup broker > {noformat} > apache-artemis-2.35.0/bin/artemis.cmd create --host=localhost > --default-port=61612 --http-port=8112 --clustered --cluster-user=cls > --cluster-password=cls --replicated --backup --name=br12 --user=usr > --password=usr --allow-anonymous --no-autotune --no-amqp-acceptor > --no-hornetq-acceptor --no-mqtt-acceptor --no-stomp-acceptor br12{noformat} > 3. Start brokers > 4. Add test addresses to primary {{broker.xml}}: > {code:xml} > > > > > > > > > > {code} > 5. Add divert with transformer to primary broker.xml > {code:xml} > > > TEST.IN > TEST.OUT > > > > org.apache.activemq.artemis.core.server.transformer.AddHeadersTransformer > > > {code} > h2. Result > - an {{IndexOutOfBoundsException}} error will appear in the backup logs > - the connection between primary and backup will be broken > - a quorum vote will be initiated > - the backup will become active and will operate in parallel with the primary -- 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-9484) Support exporting kahadb messages from a queue with an offset
[ https://issues.apache.org/jira/browse/AMQ-9484?focusedWorklogId=925943=com.atlassian.jira.plugin.system.issuetabpanels:worklog-tabpanel#worklog-925943 ] ASF GitHub Bot logged work on AMQ-9484: --- Author: ASF GitHub Bot Created on: 15/Jul/24 14:56 Start Date: 15/Jul/24 14:56 Worklog Time Spent: 10m Work Description: cshannon commented on code in PR #1258: URL: https://github.com/apache/activemq/pull/1258#discussion_r1677968970 ## activemq-console/src/main/java/org/apache/activemq/console/command/StoreExportCommand.java: ## @@ -24,7 +24,7 @@ import java.util.List; /** - * @author http://hiramchirino.com;>Hiram Chirino + * @author Matt Pavlovich Review Comment: The author tag still needs to be removed Issue Time Tracking --- Worklog Id: (was: 925943) Time Spent: 1.5h (was: 1h 20m) > Support exporting kahadb messages from a queue with an offset > - > > Key: AMQ-9484 > URL: https://issues.apache.org/jira/browse/AMQ-9484 > Project: ActiveMQ Classic > Issue Type: New Feature >Reporter: Matt Pavlovich >Assignee: Matt Pavlovich >Priority: Minor > Fix For: 6.2.0 > > Time Spent: 1.5h > Remaining Estimate: 0h > > Support exporting and pulling messages from a MessageStore with an offset, to > prevent loading _every_ message into memory (and subsequent required gc). > For example, if a user wants to export the last message from a queue with > 1,000 messages, they can scan over the index skipping most messages vs > loading all messages into memory to get to the last message. -- 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-9484) Support exporting kahadb messages from a queue with an offset
[ https://issues.apache.org/jira/browse/AMQ-9484?focusedWorklogId=925942=com.atlassian.jira.plugin.system.issuetabpanels:worklog-tabpanel#worklog-925942 ] ASF GitHub Bot logged work on AMQ-9484: --- Author: ASF GitHub Bot Created on: 15/Jul/24 14:54 Start Date: 15/Jul/24 14:54 Worklog Time Spent: 10m Work Description: cshannon commented on code in PR #1258: URL: https://github.com/apache/activemq/pull/1258#discussion_r1677966382 ## activemq-broker/src/main/java/org/apache/activemq/store/memory/MemoryMessageStore.java: ## @@ -130,6 +130,32 @@ public void recoverNextMessages(int maxReturned, MessageRecoveryListener listene } } +@Override +public void recoverNextMessages(int offset, int maxReturned, MessageRecoveryListener listener) throws Exception { +synchronized (messageTable) { +boolean pastLackBatch = lastBatchId == null; Review Comment: looks like a small typo here Issue Time Tracking --- Worklog Id: (was: 925942) Time Spent: 1h 20m (was: 1h 10m) > Support exporting kahadb messages from a queue with an offset > - > > Key: AMQ-9484 > URL: https://issues.apache.org/jira/browse/AMQ-9484 > Project: ActiveMQ Classic > Issue Type: New Feature >Reporter: Matt Pavlovich >Assignee: Matt Pavlovich >Priority: Minor > Fix For: 6.2.0 > > Time Spent: 1h 20m > Remaining Estimate: 0h > > Support exporting and pulling messages from a MessageStore with an offset, to > prevent loading _every_ message into memory (and subsequent required gc). > For example, if a user wants to export the last message from a queue with > 1,000 messages, they can scan over the index skipping most messages vs > loading all messages into memory to get to the last message. -- 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-4919) AMQP protocol level errors not handled cleanly
[ https://issues.apache.org/jira/browse/ARTEMIS-4919?focusedWorklogId=925941=com.atlassian.jira.plugin.system.issuetabpanels:worklog-tabpanel#worklog-925941 ] ASF GitHub Bot logged work on ARTEMIS-4919: --- Author: ASF GitHub Bot Created on: 15/Jul/24 14:34 Start Date: 15/Jul/24 14:34 Worklog Time Spent: 10m Work Description: gemmellr merged PR #5083: URL: https://github.com/apache/activemq-artemis/pull/5083 Issue Time Tracking --- Worklog Id: (was: 925941) Time Spent: 0.5h (was: 20m) > AMQP protocol level errors not handled cleanly > -- > > Key: ARTEMIS-4919 > URL: https://issues.apache.org/jira/browse/ARTEMIS-4919 > Project: ActiveMQ Artemis > Issue Type: Bug > Components: AMQP >Affects Versions: 2.35.0 >Reporter: Timothy A. Bish >Assignee: Timothy A. Bish >Priority: Major > Fix For: 2.36.0 > > Time Spent: 0.5h > Remaining Estimate: 0h > > When a remote client violates some AMQP protocol level requirements the > proton AMQP transport can throw and this is not handled correctly an the > transport error event is also not handled which leads to issues if you try > and handle the exception from the transport by triggering a transport level > error event. > Not handling these errors can cause missed transport flushes and or missed > cleanup of connection level resources in some cases. -- 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
[ https://issues.apache.org/jira/browse/ARTEMIS-4780?focusedWorklogId=925911=com.atlassian.jira.plugin.system.issuetabpanels:worklog-tabpanel#worklog-925911 ] ASF GitHub Bot logged work on ARTEMIS-4780: --- Author: ASF GitHub Bot Created on: 15/Jul/24 12:02 Start Date: 15/Jul/24 12:02 Worklog Time Spent: 10m Work Description: gemmellr commented on PR #5028: URL: https://github.com/apache/activemq-artemis/pull/5028#issuecomment-2228339363 I didn't particularly mean an _external_ file, just a _specific_ file. One targeted file used only for that mechanism of identifying the domain, rather than the current string-literal-across-several-main-console-files. Something that could then be simply updated in isolation, e.g overwrite it while repacking the plugin war we already publish to create their own version along with their custom broker. That said, I'd also be fine with just addressing it in the new console. Issue Time Tracking --- Worklog Id: (was: 925911) Time Spent: 1h 50m (was: 1h 40m) > 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 50m > 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-4780) Artemis web console does not ever set 'artemisJmxDomain' in localStorage
[ https://issues.apache.org/jira/browse/ARTEMIS-4780?focusedWorklogId=925907=com.atlassian.jira.plugin.system.issuetabpanels:worklog-tabpanel#worklog-925907 ] ASF GitHub Bot logged work on ARTEMIS-4780: --- Author: ASF GitHub Bot Created on: 15/Jul/24 11:21 Start Date: 15/Jul/24 11:21 Worklog Time Spent: 10m Work Description: andytaylor commented on PR #5028: URL: https://github.com/apache/activemq-artemis/pull/5028#issuecomment-2228267093 What you suggest @gemmellr using a external file is easy in the new console but difficult to do in th eold console because of the way HawtIO builds and authenticates. I could just fix it in th enew console and leave this as is (apart for the mbean guard fix). wdyt? Issue Time Tracking --- Worklog Id: (was: 925907) Time Spent: 1h 40m (was: 1.5h) > 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 40m > 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-4910) Synchronization of HA cluster after modifying divert with transformer failure
[ https://issues.apache.org/jira/browse/ARTEMIS-4910?focusedWorklogId=925899=com.atlassian.jira.plugin.system.issuetabpanels:worklog-tabpanel#worklog-925899 ] ASF GitHub Bot logged work on ARTEMIS-4910: --- Author: ASF GitHub Bot Created on: 15/Jul/24 10:30 Start Date: 15/Jul/24 10:30 Worklog Time Spent: 10m Work Description: gemmellr commented on PR #5079: URL: https://github.com/apache/activemq-artemis/pull/5079#issuecomment-2228180702 Are there any compatibility implications to consider and either handle or document? The JIRA looks to cover to an over-the-wire issue...any issues if e.g a rolling upgrade is tried with the different encoding behaviours? Should a particular rollout order be used? Also, are these values persisted anywhere? If so is there any issue when an updated broker starts with an existing stored configuration value from an older version? Issue Time Tracking --- Worklog Id: (was: 925899) Time Spent: 0.5h (was: 20m) > Synchronization of HA cluster after modifying divert with transformer failure > - > > Key: ARTEMIS-4910 > URL: https://issues.apache.org/jira/browse/ARTEMIS-4910 > Project: ActiveMQ Artemis > Issue Type: Bug > Components: Broker, Clustering, Configuration >Affects Versions: 2.35.0 >Reporter: Kirill Chadakin >Assignee: Justin Bertram >Priority: Major > Attachments: backup_artemis.log, primary_artemis.log > > Time Spent: 0.5h > Remaining Estimate: 0h > > Modifying divert with transformer in a high-availability (HA) cluster with > Apache Artemis by {{broker.xml}} results in an {{IndexOutOfBoundsException}} > error in the backup logs. This error breaks the connection between the > primary and backup brokers, initiates a quorum vote, and causes the backup to > become active, leading to both brokers operating in parallel. > h2. Steps to Reproduce the Error > 1. Create primary broker > {noformat} > apache-artemis-2.35.0/bin/artemis.cmd create --host=localhost > --default-port=61611 --http-port=8111 --clustered --cluster-user=cls > --cluster-password=cls --replicated --name=br11 --user=usr --password=usr > --allow-anonymous --no-autotune --no-amqp-acceptor --no-hornetq-acceptor > --no-mqtt-acceptor --no-stomp-acceptor br11{noformat} > 2. Create backup broker > {noformat} > apache-artemis-2.35.0/bin/artemis.cmd create --host=localhost > --default-port=61612 --http-port=8112 --clustered --cluster-user=cls > --cluster-password=cls --replicated --backup --name=br12 --user=usr > --password=usr --allow-anonymous --no-autotune --no-amqp-acceptor > --no-hornetq-acceptor --no-mqtt-acceptor --no-stomp-acceptor br12{noformat} > 3. Start brokers > 4. Add test addresses to primary {{broker.xml}}: > {code:xml} > > > > > > > > > > {code} > 5. Add divert with transformer to primary broker.xml > {code:xml} > > > TEST.IN > TEST.OUT > > > > org.apache.activemq.artemis.core.server.transformer.AddHeadersTransformer > > > {code} > h2. Result > - an {{IndexOutOfBoundsException}} error will appear in the backup logs > - the connection between primary and backup will be broken > - a quorum vote will be initiated > - the backup will become active and will operate in parallel with the primary -- 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-4910) Synchronization of HA cluster after modifying divert with transformer failure
[ https://issues.apache.org/jira/browse/ARTEMIS-4910?focusedWorklogId=925898=com.atlassian.jira.plugin.system.issuetabpanels:worklog-tabpanel#worklog-925898 ] ASF GitHub Bot logged work on ARTEMIS-4910: --- Author: ASF GitHub Bot Created on: 15/Jul/24 10:29 Start Date: 15/Jul/24 10:29 Worklog Time Spent: 10m Work Description: gemmellr commented on code in PR #5079: URL: https://github.com/apache/activemq-artemis/pull/5079#discussion_r1677606126 ## artemis-server/src/test/java/org/apache/activemq/artemis/core/config/DivertConfigurationEncodingTest.java: ## @@ -0,0 +1,47 @@ +/* + * Licensed to the Apache Software Foundation (ASF) under one or more + * contributor license agreements. See the NOTICE file distributed with + * this work for additional information regarding copyright ownership. + * The ASF licenses this file to You under the Apache License, Version 2.0 + * (the "License"); you may not use this file except in compliance with + * the License. You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ +package org.apache.activemq.artemis.core.config; + +import org.apache.activemq.artemis.api.core.ActiveMQBuffer; +import org.apache.activemq.artemis.api.core.ActiveMQBuffers; +import org.apache.activemq.artemis.core.server.ComponentConfigurationRoutingType; +import org.junit.jupiter.api.Test; + +import static org.junit.jupiter.api.Assertions.assertEquals; + +public class DivertConfigurationEncodingTest { + + @Test + public void testStoreDivertConfigurationWithTransformerNoProperties() { + DivertConfiguration configuration = new DivertConfiguration(); + configuration.setName("myDivertName"); + configuration.setAddress("myDivertAddress"); + configuration.setForwardingAddress("myDivertForwardingAddress"); + configuration.setFilterString("foo='foo'"); + configuration.setRoutingName("myDivertRoutingName"); + configuration.setExclusive(false); + configuration.setRoutingType(ComponentConfigurationRoutingType.ANYCAST); + TransformerConfiguration myDivertTransformer = new TransformerConfiguration("myDivertTransformer"); + myDivertTransformer.getProperties().put("foo", "foo"); + configuration.setTransformerConfiguration(myDivertTransformer); + + int encodeSize = configuration.getEncodeSize(); + ActiveMQBuffer data = ActiveMQBuffers.fixedBuffer(encodeSize); + configuration.encode(data); + assertEquals(encodeSize, data.writerIndex()); Review Comment: Asserting the actual encoding size is as expected, and the actual bytes written, would seem like a good idea for an encoding test. Had that been done previously the bugs fixed should have been caught. Meanwhile this test would still let similar problems be introduced, e.g if it suddenly didn't write the correct things, or anything at all, but said that, this test would still pass. Issue Time Tracking --- Worklog Id: (was: 925898) Time Spent: 20m (was: 10m) > Synchronization of HA cluster after modifying divert with transformer failure > - > > Key: ARTEMIS-4910 > URL: https://issues.apache.org/jira/browse/ARTEMIS-4910 > Project: ActiveMQ Artemis > Issue Type: Bug > Components: Broker, Clustering, Configuration >Affects Versions: 2.35.0 >Reporter: Kirill Chadakin >Assignee: Justin Bertram >Priority: Major > Attachments: backup_artemis.log, primary_artemis.log > > Time Spent: 20m > Remaining Estimate: 0h > > Modifying divert with transformer in a high-availability (HA) cluster with > Apache Artemis by {{broker.xml}} results in an {{IndexOutOfBoundsException}} > error in the backup logs. This error breaks the connection between the > primary and backup brokers, initiates a quorum vote, and causes the backup to > become active, leading to both brokers operating in parallel. > h2. Steps to Reproduce the Error > 1. Create primary broker > {noformat} > apache-artemis-2.35.0/bin/artemis.cmd create --host=localhost > --default-port=61611 --http-port=8111 --clustered --cluster-user=cls > --cluster-password=cls --replicated --name=br11 --user=usr --password=usr > --allow-anonymous --no-autotune --no-amqp-acceptor --no-hornetq-acceptor > --no-mqtt-acceptor --no-stomp-acceptor br11{noformat} > 2. Create backup broker > {noformat} > apache-artemis-2.35.0/bin/artemis.cmd create
[jira] [Work logged] (ARTEMIS-4919) AMQP protocol level errors not handled cleanly
[ https://issues.apache.org/jira/browse/ARTEMIS-4919?focusedWorklogId=925891=com.atlassian.jira.plugin.system.issuetabpanels:worklog-tabpanel#worklog-925891 ] ASF GitHub Bot logged work on ARTEMIS-4919: --- Author: ASF GitHub Bot Created on: 15/Jul/24 09:44 Start Date: 15/Jul/24 09:44 Worklog Time Spent: 10m Work Description: gemmellr commented on code in PR #5083: URL: https://github.com/apache/activemq-artemis/pull/5083#discussion_r1677563736 ## tests/integration-tests/src/test/java/org/apache/activemq/artemis/tests/integration/amqp/AMQPProtocolErrorHandlingTest.java: ## @@ -0,0 +1,180 @@ +/* + * Licensed to the Apache Software Foundation (ASF) under one or more + * contributor license agreements. See the NOTICE file distributed with + * this work for additional information regarding copyright ownership. + * The ASF licenses this file to You under the Apache License, Version 2.0 + * (the "License"); you may not use this file except in compliance with + * the License. You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ +package org.apache.activemq.artemis.tests.integration.amqp; + +import java.lang.invoke.MethodHandles; +import java.util.concurrent.TimeUnit; + +import org.apache.activemq.artemis.api.core.QueueConfiguration; +import org.apache.activemq.artemis.api.core.RoutingType; +import org.apache.activemq.artemis.api.core.SimpleString; +import org.apache.activemq.artemis.utils.Wait; +import org.apache.qpid.proton.amqp.transport.AmqpError; +import org.apache.qpid.protonj2.test.driver.ProtonTestClient; +import org.junit.jupiter.api.Test; +import org.junit.jupiter.api.Timeout; +import org.slf4j.Logger; +import org.slf4j.LoggerFactory; + +/** + * Tests that validate that an AMQP protocol level error is handled and connections are closed. + */ +public class AMQPProtocolErrorHandlingTest extends AmqpClientTestSupport { + + private static final Logger logger = LoggerFactory.getLogger(MethodHandles.lookup().lookupClass()); + + @Test + @Timeout(30) + public void testBrokerHandlesOutOfOrderDeliveryIdInTransfer() throws Exception { + server.start(); + server.createQueue(QueueConfiguration.of("test").setRoutingType(RoutingType.ANYCAST) + .setAddress("test") + .setAutoCreated(false)); + + try (ProtonTestClient receivingPeer = new ProtonTestClient()) { + receivingPeer.queueClientSaslAnonymousConnect(); + receivingPeer.connect("localhost", AMQP_PORT); + receivingPeer.waitForScriptToComplete(5, TimeUnit.SECONDS); + + // Broker response + receivingPeer.expectOpen(); + receivingPeer.expectBegin(); + receivingPeer.expectAttach().ofSender(); + receivingPeer.expectAttach().ofReceiver(); + receivingPeer.expectFlow(); + + // Attach a sender and receiver + receivingPeer.remoteOpen().withContainerId("test-sender").now(); + receivingPeer.remoteBegin().withNextOutgoingId(100).now(); + receivingPeer.remoteAttach().ofReceiver() + .withName("transfer-test") + .withSource().withAddress("test") + .withCapabilities("queue").also() + .withTarget().and() + .now(); + receivingPeer.remoteFlow().withLinkCredit(10).now(); + receivingPeer.remoteAttach().ofSender() + .withInitialDeliveryCount(0) + .withName("transfer-test") + .withTarget().withAddress("test") + .withCapabilities("queue").also() + .withSource().and() + .now(); + + receivingPeer.waitForScriptToComplete(5, TimeUnit.SECONDS); + + Wait.assertTrue(() -> server.queueQuery(SimpleString.of("test")).isExists(), 5000, 100); + Wait.assertEquals(1, () -> server.locateQueue(SimpleString.of("test")).getConsumerCount(), 5000, 100); + + // Broker response + receivingPeer.expectTransfer(); + receivingPeer.expectDisposition().withSettled(true).withState().accepted(); + + // Initial message with correct delivery ID + receivingPeer.remoteTransfer().withDeliveryId(100) +
[jira] [Work logged] (ARTEMIS-4780) Artemis web console does not ever set 'artemisJmxDomain' in localStorage
[ https://issues.apache.org/jira/browse/ARTEMIS-4780?focusedWorklogId=925887=com.atlassian.jira.plugin.system.issuetabpanels:worklog-tabpanel#worklog-925887 ] ASF GitHub Bot logged work on ARTEMIS-4780: --- Author: ASF GitHub Bot Created on: 15/Jul/24 09:09 Start Date: 15/Jul/24 09:09 Worklog Time Spent: 10m Work Description: gemmellr commented on PR #5028: URL: https://github.com/apache/activemq-artemis/pull/5028#issuecomment-2228031429 Sorry, I didnt see that you had commented. When we chatted about this previously and you mentioned you had already discussed with Gary/Dom and decided on adding it to the existing hawtio mbean, I didnt realise that specifically called itself out as a security mbean in its overall naming, so I can definitely see Justin's point there. Though as its not an MBean users really interact with themselves, I'm not sure how bad it would really be to go with it. I also thought their idea was better than adding a new MBean at the time because at least that existing MBean is already 'trusted' for the other stuff and was already clearly hawtio console specific, and this only really being a hawtio console problem. I didnt really want a new MBean for this either as its almost completely superfluous for every normal user, i.e most people simply dont need it so having an mbean for it feels like needless clutter for the regular case. It also needs a known domain and objectname to look up itself, which will almost certainly be something else that can clash with other things at some point. In retrospect this also only works for one broker 'jmx domain' at a time (same is true of using the existing hawtio mbean), which in some ways is odd as the entire reason this weird 'variable mbean jmx domain' stuff was added ~15 years ago was to support multiple broker being managed in the same VM using multiple different jmx domains. Thus far only 1 person has asked about hitting a mismatch here it seems, and that is only coming up because they are shading the broker. So to me it seems reasonable enough theyd also need to similarly update the console as well, which they already indicated theyd be up for doing with a custom build (since the bit needing changed is in a file in a jar, in the war) if that was the approach deemed necessary. I did suggest perhaps there is some way we could make that easier, e.g take the custom value from a specific file, which they could then more easily add/update/swap out than currently as part of the general console files themselves. I think I'm back to thinking that is preferable than mechanics like this to do it automatically. A specific new MBean for it, that doesnt even work for the original use case of varying the mbean domain, and is entirely superfluous for almost every user, feels like perhaps the worst option for auto-fixing a self-created problem from shading the broker but not similarly updating the console. Issue Time Tracking --- Worklog Id: (was: 925887) Time Spent: 1.5h (was: 1h 20m) > 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: 1.5h > 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] (AMQ-9531) CLI export NoClassDefFoundError
[ https://issues.apache.org/jira/browse/AMQ-9531?focusedWorklogId=925806=com.atlassian.jira.plugin.system.issuetabpanels:worklog-tabpanel#worklog-925806 ] ASF GitHub Bot logged work on AMQ-9531: --- Author: ASF GitHub Bot Created on: 14/Jul/24 04:32 Start Date: 14/Jul/24 04:32 Worklog Time Spent: 10m Work Description: jbonofre merged PR #1257: URL: https://github.com/apache/activemq/pull/1257 Issue Time Tracking --- Worklog Id: (was: 925806) Time Spent: 1h 20m (was: 1h 10m) > CLI export NoClassDefFoundError > --- > > Key: AMQ-9531 > URL: https://issues.apache.org/jira/browse/AMQ-9531 > Project: ActiveMQ Classic > Issue Type: Bug >Reporter: Matt Pavlovich >Assignee: Jean-Baptiste Onofré >Priority: Minor > Fix For: 6.2.0, 5.18.5, 6.1.3 > > Time Spent: 1h 20m > Remaining Estimate: 0h > > % ./bin/activemq export > {noformat} > Failed to execute main task. Reason: java.lang.NoClassDefFoundError: > org/fusesource/hawtbuf/proto/PBMessage > {noformat} -- 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-9531) CLI export NoClassDefFoundError
[ https://issues.apache.org/jira/browse/AMQ-9531?focusedWorklogId=925805=com.atlassian.jira.plugin.system.issuetabpanels:worklog-tabpanel#worklog-925805 ] ASF GitHub Bot logged work on AMQ-9531: --- Author: ASF GitHub Bot Created on: 14/Jul/24 04:32 Start Date: 14/Jul/24 04:32 Worklog Time Spent: 10m Work Description: jbonofre closed pull request #1261: AMQ-9531: Add hawtbuf-proto dependency for CLI URL: https://github.com/apache/activemq/pull/1261 Issue Time Tracking --- Worklog Id: (was: 925805) Time Spent: 1h 10m (was: 1h) > CLI export NoClassDefFoundError > --- > > Key: AMQ-9531 > URL: https://issues.apache.org/jira/browse/AMQ-9531 > Project: ActiveMQ Classic > Issue Type: Bug >Reporter: Matt Pavlovich >Assignee: Jean-Baptiste Onofré >Priority: Minor > Fix For: 6.2.0, 5.18.5, 6.1.3 > > Time Spent: 1h 10m > Remaining Estimate: 0h > > % ./bin/activemq export > {noformat} > Failed to execute main task. Reason: java.lang.NoClassDefFoundError: > org/fusesource/hawtbuf/proto/PBMessage > {noformat} -- 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-9531) CLI export NoClassDefFoundError
[ https://issues.apache.org/jira/browse/AMQ-9531?focusedWorklogId=925755=com.atlassian.jira.plugin.system.issuetabpanels:worklog-tabpanel#worklog-925755 ] ASF GitHub Bot logged work on AMQ-9531: --- Author: ASF GitHub Bot Created on: 13/Jul/24 12:09 Start Date: 13/Jul/24 12:09 Worklog Time Spent: 10m Work Description: jbonofre commented on PR #1261: URL: https://github.com/apache/activemq/pull/1261#issuecomment-2226879044 The other PR seems larger than just a fix and that's a concern to me for 5.18.x. That's why I would like to only fix the export. Issue Time Tracking --- Worklog Id: (was: 925755) Time Spent: 1h (was: 50m) > CLI export NoClassDefFoundError > --- > > Key: AMQ-9531 > URL: https://issues.apache.org/jira/browse/AMQ-9531 > Project: ActiveMQ Classic > Issue Type: Bug >Reporter: Matt Pavlovich >Assignee: Jean-Baptiste Onofré >Priority: Minor > Fix For: 6.2.0, 5.18.5, 6.1.3 > > Time Spent: 1h > Remaining Estimate: 0h > > % ./bin/activemq export > {noformat} > Failed to execute main task. Reason: java.lang.NoClassDefFoundError: > org/fusesource/hawtbuf/proto/PBMessage > {noformat} -- 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-9531) CLI export NoClassDefFoundError
[ https://issues.apache.org/jira/browse/AMQ-9531?focusedWorklogId=925754=com.atlassian.jira.plugin.system.issuetabpanels:worklog-tabpanel#worklog-925754 ] ASF GitHub Bot logged work on AMQ-9531: --- Author: ASF GitHub Bot Created on: 13/Jul/24 12:08 Start Date: 13/Jul/24 12:08 Worklog Time Spent: 10m Work Description: mattrpav commented on PR #1261: URL: https://github.com/apache/activemq/pull/1261#issuecomment-2226878464 @jbonofre this change is incomplete and should be closed in favor of [#1257]. The Export command needed a patch b/c the introspection wasn't working with the method overload. Issue Time Tracking --- Worklog Id: (was: 925754) Time Spent: 50m (was: 40m) > CLI export NoClassDefFoundError > --- > > Key: AMQ-9531 > URL: https://issues.apache.org/jira/browse/AMQ-9531 > Project: ActiveMQ Classic > Issue Type: Bug >Reporter: Matt Pavlovich >Assignee: Jean-Baptiste Onofré >Priority: Minor > Fix For: 6.2.0, 5.18.5, 6.1.3 > > Time Spent: 50m > Remaining Estimate: 0h > > % ./bin/activemq export > {noformat} > Failed to execute main task. Reason: java.lang.NoClassDefFoundError: > org/fusesource/hawtbuf/proto/PBMessage > {noformat} -- 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-9531) CLI export NoClassDefFoundError
[ https://issues.apache.org/jira/browse/AMQ-9531?focusedWorklogId=925734=com.atlassian.jira.plugin.system.issuetabpanels:worklog-tabpanel#worklog-925734 ] ASF GitHub Bot logged work on AMQ-9531: --- Author: ASF GitHub Bot Created on: 13/Jul/24 05:29 Start Date: 13/Jul/24 05:29 Worklog Time Spent: 10m Work Description: jbonofre opened a new pull request, #1261: URL: https://github.com/apache/activemq/pull/1261 Author: Matt Pavlovich Issue Time Tracking --- Worklog Id: (was: 925734) Time Spent: 40m (was: 0.5h) > CLI export NoClassDefFoundError > --- > > Key: AMQ-9531 > URL: https://issues.apache.org/jira/browse/AMQ-9531 > Project: ActiveMQ Classic > Issue Type: Bug >Reporter: Matt Pavlovich >Assignee: Jean-Baptiste Onofré >Priority: Minor > Fix For: 6.2.0, 5.18.5, 6.1.3 > > Time Spent: 40m > Remaining Estimate: 0h > > % ./bin/activemq export > {noformat} > Failed to execute main task. Reason: java.lang.NoClassDefFoundError: > org/fusesource/hawtbuf/proto/PBMessage > {noformat} -- 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