[jira] [Assigned] (ARTEMIS-3831) Scale-down fails when using same discovery-group used by Broker cluster connection
[ https://issues.apache.org/jira/browse/ARTEMIS-3831?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Justin Bertram reassigned ARTEMIS-3831: --- Assignee: Justin Bertram > Scale-down fails when using same discovery-group used by Broker cluster > connection > -- > > Key: ARTEMIS-3831 > URL: https://issues.apache.org/jira/browse/ARTEMIS-3831 > Project: ActiveMQ Artemis > Issue Type: Bug > Components: Broker >Affects Versions: 2.19.1, 2.31.0 >Reporter: Apache Dev >Assignee: Justin Bertram >Priority: Critical > Time Spent: 10m > Remaining Estimate: 0h > > Using 2 Live brokers in cluster. > Both having the following HA Policy: > {code} > > > > true > discovery-group-name="activemq-discovery-group"/> > > > > {code} > where "activemq-discovery-group" is using JGroups TCPPING: > {code} > > > ... > ... > 1 > > > {code} > and it is used by the cluster of 2 brokers: > {code} > > > netty-connector > 5000 > true > OFF > 1 > discovery-group-name="activemq-discovery-group"/> > > > {code} > Issue is that when shutdown happens, scale-down fails: > {code} > org.apache.activemq.artemis.core.server W AMQ222181: > Unable to scaleDown messages > ActiveMQInternalErrorException[errorType=INTERNAL_ERROR > message=AMQ219004: Failed to initialise session factory] > at > org.apache.activemq.artemis.core.client.impl.ServerLocatorImpl.initialize(ServerLocatorImpl.java:272) > at > org.apache.activemq.artemis.core.client.impl.ServerLocatorImpl.createSessionFactory(ServerLocatorImpl.java:655) > at > org.apache.activemq.artemis.core.client.impl.ServerLocatorImpl.connect(ServerLocatorImpl.java:554) > at > org.apache.activemq.artemis.core.client.impl.ServerLocatorImpl.connect(ServerLocatorImpl.java:533) > at > org.apache.activemq.artemis.core.server.LiveNodeLocator.connectToCluster(LiveNodeLocator.java:85) > at > org.apache.activemq.artemis.core.server.impl.LiveOnlyActivation.connectToScaleDownTarget(LiveOnlyActivation.java:146) > at > org.apache.activemq.artemis.core.server.impl.LiveOnlyActivation.freezeConnections(LiveOnlyActivation.java:114) > at > org.apache.activemq.artemis.core.server.impl.ActiveMQServerImpl.freezeConnections(ActiveMQServerImpl.java:1468) > at > org.apache.activemq.artemis.core.server.impl.ActiveMQServerImpl.stop(ActiveMQServerImpl.java:1250) > at > org.apache.activemq.artemis.core.server.impl.ActiveMQServerImpl.stop(ActiveMQServerImpl.java:1166) > at > org.apache.activemq.artemis.core.server.impl.ActiveMQServerImpl.stop(ActiveMQServerImpl.java:1150) > ... > Caused by: ActiveMQInternalErrorException[errorType=INTERNAL_ERROR > message=channel is closed] > at > org.apache.activemq.artemis.core.client.impl.ServerLocatorImpl.startDiscovery(ServerLocatorImpl.java:286) > at > org.apache.activemq.artemis.core.client.impl.ServerLocatorImpl.initialize(ServerLocatorImpl.java:268) > ... 44 more > Caused by: java.lang.IllegalStateException: channel is closed > at org.jgroups.JChannel.checkClosed(JChannel.java:957) > at org.jgroups.JChannel._preConnect(JChannel.java:548) > at org.jgroups.JChannel.connect(JChannel.java:288) > at org.jgroups.JChannel.connect(JChannel.java:279) > at > org.apache.activemq.artemis.api.core.jgroups.JChannelWrapper.connect(JChannelWrapper.java:126) > at > org.apache.activemq.artemis.api.core.JGroupsBroadcastEndpoint.internalOpen(JGroupsBroadcastEndpoint.java:113) > at > org.apache.activemq.artemis.api.core.JGroupsBroadcastEndpoint.openClient(JGroupsBroadcastEndpoint.java:91) > at > org.apache.activemq.artemis.core.cluster.DiscoveryGroup.start(DiscoveryGroup.java:111) > at > org.apache.activemq.artemis.core.client.impl.ServerLocatorImpl.startDiscovery(ServerLocatorImpl.java:284) > ... 45 more > {code} > JGroups channel used by scale-down is probably the same used by broker, but > already being closed during broker shutdown itself. > As a workaround, it is possible to create a separate discovery-group (with > its own broadcast-group) so that scale-down uses a new JGroups channel not > being closed by broker. > However, this causes duplication of configurations and a new JGroups port for > the scale-down discovery must be opened. -
[jira] [Work logged] (ARTEMIS-3831) Scale-down fails when using same discovery-group used by Broker cluster connection
[ https://issues.apache.org/jira/browse/ARTEMIS-3831?focusedWorklogId=899094&page=com.atlassian.jira.plugin.system.issuetabpanels:worklog-tabpanel#worklog-899094 ] ASF GitHub Bot logged work on ARTEMIS-3831: --- Author: ASF GitHub Bot Created on: 11/Jan/24 04:16 Start Date: 11/Jan/24 04:16 Worklog Time Spent: 10m Work Description: jbertram opened a new pull request, #4739: URL: https://github.com/apache/activemq-artemis/pull/4739 If both scale-down and cluster-connection are using the same JGroups discovery-group then when the cluster-connection stops it will close the underlying org.jgroups.JChannel and when the scale-down process tries to use it to find a server it will fails. This commit ensures that the JGroupsBroadcastEndpoint implementation of BroadcastEndpoint#openClient initializes the channel if it has been closed. Issue Time Tracking --- Worklog Id: (was: 899094) Remaining Estimate: 0h Time Spent: 10m > Scale-down fails when using same discovery-group used by Broker cluster > connection > -- > > Key: ARTEMIS-3831 > URL: https://issues.apache.org/jira/browse/ARTEMIS-3831 > Project: ActiveMQ Artemis > Issue Type: Bug > Components: Broker >Affects Versions: 2.19.1, 2.31.0 >Reporter: Apache Dev >Priority: Critical > Time Spent: 10m > Remaining Estimate: 0h > > Using 2 Live brokers in cluster. > Both having the following HA Policy: > {code} > > > > true > discovery-group-name="activemq-discovery-group"/> > > > > {code} > where "activemq-discovery-group" is using JGroups TCPPING: > {code} > > > ... > ... > 1 > > > {code} > and it is used by the cluster of 2 brokers: > {code} > > > netty-connector > 5000 > true > OFF > 1 > discovery-group-name="activemq-discovery-group"/> > > > {code} > Issue is that when shutdown happens, scale-down fails: > {code} > org.apache.activemq.artemis.core.server W AMQ222181: > Unable to scaleDown messages > ActiveMQInternalErrorException[errorType=INTERNAL_ERROR > message=AMQ219004: Failed to initialise session factory] > at > org.apache.activemq.artemis.core.client.impl.ServerLocatorImpl.initialize(ServerLocatorImpl.java:272) > at > org.apache.activemq.artemis.core.client.impl.ServerLocatorImpl.createSessionFactory(ServerLocatorImpl.java:655) > at > org.apache.activemq.artemis.core.client.impl.ServerLocatorImpl.connect(ServerLocatorImpl.java:554) > at > org.apache.activemq.artemis.core.client.impl.ServerLocatorImpl.connect(ServerLocatorImpl.java:533) > at > org.apache.activemq.artemis.core.server.LiveNodeLocator.connectToCluster(LiveNodeLocator.java:85) > at > org.apache.activemq.artemis.core.server.impl.LiveOnlyActivation.connectToScaleDownTarget(LiveOnlyActivation.java:146) > at > org.apache.activemq.artemis.core.server.impl.LiveOnlyActivation.freezeConnections(LiveOnlyActivation.java:114) > at > org.apache.activemq.artemis.core.server.impl.ActiveMQServerImpl.freezeConnections(ActiveMQServerImpl.java:1468) > at > org.apache.activemq.artemis.core.server.impl.ActiveMQServerImpl.stop(ActiveMQServerImpl.java:1250) > at > org.apache.activemq.artemis.core.server.impl.ActiveMQServerImpl.stop(ActiveMQServerImpl.java:1166) > at > org.apache.activemq.artemis.core.server.impl.ActiveMQServerImpl.stop(ActiveMQServerImpl.java:1150) > ... > Caused by: ActiveMQInternalErrorException[errorType=INTERNAL_ERROR > message=channel is closed] > at > org.apache.activemq.artemis.core.client.impl.ServerLocatorImpl.startDiscovery(ServerLocatorImpl.java:286) > at > org.apache.activemq.artemis.core.client.impl.ServerLocatorImpl.initialize(ServerLocatorImpl.java:268) > ... 44 more > Caused by: java.lang.IllegalStateException: channel is closed > at org.jgroups.JChannel.checkClosed(JChannel.java:957) > at org.jgroups.JChannel._preConnect(JChannel.java:548) > at org.jgroups.JChannel.connect(JChannel.java:288) > at org.jgroups.JChannel.connect(JChannel.java:279) > at > org.apache.activemq.artemis.api.core.jgroups.JChannelWrapper.connect(JChannelWrapper.java:126) > at > org.apache.activemq.artemis.api.core.JGroupsBroadcastEndpoint.internalOpen(JGroupsBroadcastEndpoint.java:113) >
[jira] [Work logged] (ARTEMIS-4561) allow key and trust store type to be configured on the web component
[ https://issues.apache.org/jira/browse/ARTEMIS-4561?focusedWorklogId=899056&page=com.atlassian.jira.plugin.system.issuetabpanels:worklog-tabpanel#worklog-899056 ] ASF GitHub Bot logged work on ARTEMIS-4561: --- Author: ASF GitHub Bot Created on: 10/Jan/24 21:21 Start Date: 10/Jan/24 21:21 Worklog Time Spent: 10m Work Description: jbertram merged PR #4736: URL: https://github.com/apache/activemq-artemis/pull/4736 Issue Time Tracking --- Worklog Id: (was: 899056) Time Spent: 1h (was: 50m) > allow key and trust store type to be configured on the web component > > > Key: ARTEMIS-4561 > URL: https://issues.apache.org/jira/browse/ARTEMIS-4561 > Project: ActiveMQ Artemis > Issue Type: Improvement > Components: Web Console >Affects Versions: 2.31.0 >Reporter: Gary Tully >Assignee: Gary Tully >Priority: Major > Fix For: 2.32.0 > > Time Spent: 1h > Remaining Estimate: 0h > > Following on from ARTEMIS-4528 > for the jetty engine configured from the web component, it is currently not > possible to configure the store type and configure the use of PEM. Without > this it is not possible to secure the web console with PEM format credentials -- This message was sent by Atlassian Jira (v8.20.10#820010)
[jira] [Commented] (ARTEMIS-4561) allow key and trust store type to be configured on the web component
[ https://issues.apache.org/jira/browse/ARTEMIS-4561?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17805298#comment-17805298 ] ASF subversion and git services commented on ARTEMIS-4561: -- Commit 5269b1a89dd968916a3f343f7a41eab55486d5ec in activemq-artemis's branch refs/heads/main from Gary Tully [ https://gitbox.apache.org/repos/asf?p=activemq-artemis.git;h=5269b1a89d ] ARTEMIS-4561 expose store type on web component tls binding config > allow key and trust store type to be configured on the web component > > > Key: ARTEMIS-4561 > URL: https://issues.apache.org/jira/browse/ARTEMIS-4561 > Project: ActiveMQ Artemis > Issue Type: Improvement > Components: Web Console >Affects Versions: 2.31.0 >Reporter: Gary Tully >Assignee: Gary Tully >Priority: Major > Fix For: 2.32.0 > > Time Spent: 1h > Remaining Estimate: 0h > > Following on from ARTEMIS-4528 > for the jetty engine configured from the web component, it is currently not > possible to configure the store type and configure the use of PEM. Without > this it is not possible to secure the web console with PEM format credentials -- This message was sent by Atlassian Jira (v8.20.10#820010)
[jira] [Commented] (ARTEMIS-4452) Allow to customize http header in http-upgrade request from Artemis
[ https://issues.apache.org/jira/browse/ARTEMIS-4452?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17805276#comment-17805276 ] ASF subversion and git services commented on ARTEMIS-4452: -- Commit ebd634ae543311224fc5a5b2bba9fc5b5a8a3d79 in activemq-artemis's branch refs/heads/main from Justin Bertram [ https://gitbox.apache.org/repos/asf?p=activemq-artemis.git;h=ebd634ae54 ] ARTEMIS-4452 make test more robust > Allow to customize http header in http-upgrade request from Artemis > --- > > Key: ARTEMIS-4452 > URL: https://issues.apache.org/jira/browse/ARTEMIS-4452 > Project: ActiveMQ Artemis > Issue Type: Improvement > Components: Broker >Affects Versions: 2.31.0 >Reporter: Emmanuel Hugonnet >Priority: Major > Time Spent: 1h 40m > Remaining Estimate: 0h > > Currently there is no way to customize the headers of the http-upgrade request -- This message was sent by Atlassian Jira (v8.20.10#820010)
[jira] [Work logged] (ARTEMIS-4548) Refactor MQTT tests
[ https://issues.apache.org/jira/browse/ARTEMIS-4548?focusedWorklogId=899050&page=com.atlassian.jira.plugin.system.issuetabpanels:worklog-tabpanel#worklog-899050 ] ASF GitHub Bot logged work on ARTEMIS-4548: --- Author: ASF GitHub Bot Created on: 10/Jan/24 19:15 Start Date: 10/Jan/24 19:15 Worklog Time Spent: 10m Work Description: tabish121 commented on PR #4726: URL: https://github.com/apache/activemq-artemis/pull/4726#issuecomment-1885508046 Change seems to make sense as it reduces redundant test runs, something we made the mistake of doing in the 5.x code base was have all protocol tests run for every permutation of TCP, SSL, NIO, Auto, etc transports which explodes the test time. It is important to create tests that capture any cases where the protocol or transport do come into play though. Issue Time Tracking --- Worklog Id: (was: 899050) Time Spent: 40m (was: 0.5h) > Refactor MQTT tests > --- > > Key: ARTEMIS-4548 > URL: https://issues.apache.org/jira/browse/ARTEMIS-4548 > Project: ActiveMQ Artemis > Issue Type: Task >Reporter: Justin Bertram >Assignee: Justin Bertram >Priority: Major > Time Spent: 40m > Remaining Estimate: 0h > > Many MQTT tests are run twice - once using TCP and once using WebSockets. > This is essentially a big waste of time since once the connection is > established to the broker the tests are identical. The tests should be > refactored to run just once and then there can be a small number of tests > specifically for WebSockets. -- This message was sent by Atlassian Jira (v8.20.10#820010)
[jira] [Work logged] (ARTEMIS-4548) Refactor MQTT tests
[ https://issues.apache.org/jira/browse/ARTEMIS-4548?focusedWorklogId=899049&page=com.atlassian.jira.plugin.system.issuetabpanels:worklog-tabpanel#worklog-899049 ] ASF GitHub Bot logged work on ARTEMIS-4548: --- Author: ASF GitHub Bot Created on: 10/Jan/24 19:06 Start Date: 10/Jan/24 19:06 Worklog Time Spent: 10m Work Description: jbertram commented on PR #4726: URL: https://github.com/apache/activemq-artemis/pull/4726#issuecomment-1885461073 Rebased. Test-suite is good! Issue Time Tracking --- Worklog Id: (was: 899049) Time Spent: 0.5h (was: 20m) > Refactor MQTT tests > --- > > Key: ARTEMIS-4548 > URL: https://issues.apache.org/jira/browse/ARTEMIS-4548 > Project: ActiveMQ Artemis > Issue Type: Task >Reporter: Justin Bertram >Assignee: Justin Bertram >Priority: Major > Time Spent: 0.5h > Remaining Estimate: 0h > > Many MQTT tests are run twice - once using TCP and once using WebSockets. > This is essentially a big waste of time since once the connection is > established to the broker the tests are identical. The tests should be > refactored to run just once and then there can be a small number of tests > specifically for WebSockets. -- This message was sent by Atlassian Jira (v8.20.10#820010)
[jira] [Commented] (ARTEMIS-4563) Auto created addresses are not removed upon restart
[ https://issues.apache.org/jira/browse/ARTEMIS-4563?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17805252#comment-17805252 ] ASF subversion and git services commented on ARTEMIS-4563: -- Commit a7f18777a32cde23e490e5d162b90e5724146f8b in activemq-artemis's branch refs/heads/main from Domenico Francesco Bruscino [ https://gitbox.apache.org/repos/asf?p=activemq-artemis.git;h=a7f18777a3 ] ARTEMIS-4563 Remove auto-created addresses upon restart > Auto created addresses are not removed upon restart > --- > > Key: ARTEMIS-4563 > URL: https://issues.apache.org/jira/browse/ARTEMIS-4563 > Project: ActiveMQ Artemis > Issue Type: Bug >Reporter: Domenico Francesco Bruscino >Assignee: Domenico Francesco Bruscino >Priority: Major > Time Spent: 1h > Remaining Estimate: 0h > > Auto created addresses without queues are not removed upon restart after > upgrading to 2.29.0 or any later versions -- This message was sent by Atlassian Jira (v8.20.10#820010)
[jira] [Resolved] (ARTEMIS-4563) Auto created addresses are not removed upon restart
[ https://issues.apache.org/jira/browse/ARTEMIS-4563?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Robbie Gemmell resolved ARTEMIS-4563. - Fix Version/s: 2.32.0 Resolution: Fixed > Auto created addresses are not removed upon restart > --- > > Key: ARTEMIS-4563 > URL: https://issues.apache.org/jira/browse/ARTEMIS-4563 > Project: ActiveMQ Artemis > Issue Type: Bug >Reporter: Domenico Francesco Bruscino >Assignee: Domenico Francesco Bruscino >Priority: Major > Fix For: 2.32.0 > > Time Spent: 1h > Remaining Estimate: 0h > > Auto created addresses without queues are not removed upon restart after > upgrading to 2.29.0 or any later versions -- This message was sent by Atlassian Jira (v8.20.10#820010)
[jira] [Work logged] (ARTEMIS-4563) Auto created addresses are not removed upon restart
[ https://issues.apache.org/jira/browse/ARTEMIS-4563?focusedWorklogId=899045&page=com.atlassian.jira.plugin.system.issuetabpanels:worklog-tabpanel#worklog-899045 ] ASF GitHub Bot logged work on ARTEMIS-4563: --- Author: ASF GitHub Bot Created on: 10/Jan/24 18:31 Start Date: 10/Jan/24 18:31 Worklog Time Spent: 10m Work Description: gemmellr merged PR #4737: URL: https://github.com/apache/activemq-artemis/pull/4737 Issue Time Tracking --- Worklog Id: (was: 899045) Time Spent: 1h (was: 50m) > Auto created addresses are not removed upon restart > --- > > Key: ARTEMIS-4563 > URL: https://issues.apache.org/jira/browse/ARTEMIS-4563 > Project: ActiveMQ Artemis > Issue Type: Bug >Reporter: Domenico Francesco Bruscino >Assignee: Domenico Francesco Bruscino >Priority: Major > Time Spent: 1h > Remaining Estimate: 0h > > Auto created addresses without queues are not removed upon restart after > upgrading to 2.29.0 or any later versions -- This message was sent by Atlassian Jira (v8.20.10#820010)
[jira] [Work logged] (ARTEMIS-4563) Auto created addresses are not removed upon restart
[ https://issues.apache.org/jira/browse/ARTEMIS-4563?focusedWorklogId=899044&page=com.atlassian.jira.plugin.system.issuetabpanels:worklog-tabpanel#worklog-899044 ] ASF GitHub Bot logged work on ARTEMIS-4563: --- Author: ASF GitHub Bot Created on: 10/Jan/24 18:19 Start Date: 10/Jan/24 18:19 Worklog Time Spent: 10m Work Description: brusdev commented on code in PR #4737: URL: https://github.com/apache/activemq-artemis/pull/4737#discussion_r1447760718 ## tests/integration-tests/src/test/java/org/apache/activemq/artemis/tests/integration/client/AutoCreateTest.java: ## @@ -381,26 +382,36 @@ public void testCleanupAfterReboot(String protocol, boolean useDelay) throws Exc try (Connection connection = cf.createConnection()) { Session session = connection.createSession(false, Session.AUTO_ACKNOWLEDGE); Queue queue = session.createQueue(QUEUE_NAME); - MessageProducer producer = session.createProducer(queue); - producer.send(session.createTextMessage(randomString)); + Topic topic = session.createTopic(TOPIC_NAME); + MessageProducer producer = session.createProducer(null); + producer.send(queue, session.createTextMessage(randomString)); + producer.send(topic, session.createTextMessage(randomString)); } info = server.getPostOffice().getAddressInfo(SimpleString.toSimpleString(QUEUE_NAME)); Assert.assertNotNull(info); Assert.assertTrue(info.isAutoCreated()); + info = server.getPostOffice().getAddressInfo(SimpleString.toSimpleString(TOPIC_NAME)); + Assert.assertNotNull(info); + Assert.assertTrue(info.isAutoCreated()); + server.stop(); try (AssertionLoggerHandler loggerHandler = new AssertionLoggerHandler()) { server.start(); - Assert.assertFalse(loggerHandler.findText("AMQ224113")); // this time around the queue had messages, it has to exist + Assert.assertFalse(loggerHandler.matchText("AMQ224113.*" + QUEUE_NAME)); // this time around the queue had messages, it has to exist + Assert.assertTrue(loggerHandler.matchText("AMQ224113.*" + TOPIC_NAME)); // this time around the queue had messages, it has to exist Review Comment: @gemmellr I changed the order of the checks. Issue Time Tracking --- Worklog Id: (was: 899044) Time Spent: 50m (was: 40m) > Auto created addresses are not removed upon restart > --- > > Key: ARTEMIS-4563 > URL: https://issues.apache.org/jira/browse/ARTEMIS-4563 > Project: ActiveMQ Artemis > Issue Type: Bug >Reporter: Domenico Francesco Bruscino >Assignee: Domenico Francesco Bruscino >Priority: Major > Time Spent: 50m > Remaining Estimate: 0h > > Auto created addresses without queues are not removed upon restart after > upgrading to 2.29.0 or any later versions -- This message was sent by Atlassian Jira (v8.20.10#820010)
[jira] [Work logged] (ARTEMIS-4548) Refactor MQTT tests
[ https://issues.apache.org/jira/browse/ARTEMIS-4548?focusedWorklogId=899043&page=com.atlassian.jira.plugin.system.issuetabpanels:worklog-tabpanel#worklog-899043 ] ASF GitHub Bot logged work on ARTEMIS-4548: --- Author: ASF GitHub Bot Created on: 10/Jan/24 17:54 Start Date: 10/Jan/24 17:54 Worklog Time Spent: 10m Work Description: gemmellr commented on PR #4726: URL: https://github.com/apache/activemq-artemis/pull/4726#issuecomment-1885344503 Not clear if you ran the full test suite on this already, but probably worth a rebase and re-run at this point either way. Havent looked at it yet but will try to get to it soon. Issue Time Tracking --- Worklog Id: (was: 899043) Time Spent: 20m (was: 10m) > Refactor MQTT tests > --- > > Key: ARTEMIS-4548 > URL: https://issues.apache.org/jira/browse/ARTEMIS-4548 > Project: ActiveMQ Artemis > Issue Type: Task >Reporter: Justin Bertram >Assignee: Justin Bertram >Priority: Major > Time Spent: 20m > Remaining Estimate: 0h > > Many MQTT tests are run twice - once using TCP and once using WebSockets. > This is essentially a big waste of time since once the connection is > established to the broker the tests are identical. The tests should be > refactored to run just once and then there can be a small number of tests > specifically for WebSockets. -- This message was sent by Atlassian Jira (v8.20.10#820010)
[jira] [Work logged] (ARTEMIS-4563) Auto created addresses are not removed upon restart
[ https://issues.apache.org/jira/browse/ARTEMIS-4563?focusedWorklogId=899038&page=com.atlassian.jira.plugin.system.issuetabpanels:worklog-tabpanel#worklog-899038 ] ASF GitHub Bot logged work on ARTEMIS-4563: --- Author: ASF GitHub Bot Created on: 10/Jan/24 17:41 Start Date: 10/Jan/24 17:41 Worklog Time Spent: 10m Work Description: brusdev commented on code in PR #4737: URL: https://github.com/apache/activemq-artemis/pull/4737#discussion_r1447721527 ## tests/integration-tests/src/test/java/org/apache/activemq/artemis/tests/integration/client/AutoCreateTest.java: ## @@ -381,26 +382,36 @@ public void testCleanupAfterReboot(String protocol, boolean useDelay) throws Exc try (Connection connection = cf.createConnection()) { Session session = connection.createSession(false, Session.AUTO_ACKNOWLEDGE); Queue queue = session.createQueue(QUEUE_NAME); - MessageProducer producer = session.createProducer(queue); - producer.send(session.createTextMessage(randomString)); + Topic topic = session.createTopic(TOPIC_NAME); + MessageProducer producer = session.createProducer(null); + producer.send(queue, session.createTextMessage(randomString)); + producer.send(topic, session.createTextMessage(randomString)); } info = server.getPostOffice().getAddressInfo(SimpleString.toSimpleString(QUEUE_NAME)); Assert.assertNotNull(info); Assert.assertTrue(info.isAutoCreated()); + info = server.getPostOffice().getAddressInfo(SimpleString.toSimpleString(TOPIC_NAME)); + Assert.assertNotNull(info); + Assert.assertTrue(info.isAutoCreated()); + server.stop(); try (AssertionLoggerHandler loggerHandler = new AssertionLoggerHandler()) { server.start(); - Assert.assertFalse(loggerHandler.findText("AMQ224113")); // this time around the queue had messages, it has to exist + Assert.assertFalse(loggerHandler.matchText("AMQ224113.*" + QUEUE_NAME)); // this time around the queue had messages, it has to exist + Assert.assertTrue(loggerHandler.matchText("AMQ224113.*" + TOPIC_NAME)); // this time around the queue had messages, it has to exist Review Comment: @tabish121 good catch, I changed the comments. Issue Time Tracking --- Worklog Id: (was: 899038) Time Spent: 40m (was: 0.5h) > Auto created addresses are not removed upon restart > --- > > Key: ARTEMIS-4563 > URL: https://issues.apache.org/jira/browse/ARTEMIS-4563 > Project: ActiveMQ Artemis > Issue Type: Bug >Reporter: Domenico Francesco Bruscino >Assignee: Domenico Francesco Bruscino >Priority: Major > Time Spent: 40m > Remaining Estimate: 0h > > Auto created addresses without queues are not removed upon restart after > upgrading to 2.29.0 or any later versions -- This message was sent by Atlassian Jira (v8.20.10#820010)
[jira] [Work logged] (ARTEMIS-4563) Auto created addresses are not removed upon restart
[ https://issues.apache.org/jira/browse/ARTEMIS-4563?focusedWorklogId=899036&page=com.atlassian.jira.plugin.system.issuetabpanels:worklog-tabpanel#worklog-899036 ] ASF GitHub Bot logged work on ARTEMIS-4563: --- Author: ASF GitHub Bot Created on: 10/Jan/24 17:26 Start Date: 10/Jan/24 17:26 Worklog Time Spent: 10m Work Description: gemmellr commented on code in PR #4737: URL: https://github.com/apache/activemq-artemis/pull/4737#discussion_r1447697032 ## tests/integration-tests/src/test/java/org/apache/activemq/artemis/tests/integration/client/AutoCreateTest.java: ## @@ -381,26 +382,36 @@ public void testCleanupAfterReboot(String protocol, boolean useDelay) throws Exc try (Connection connection = cf.createConnection()) { Session session = connection.createSession(false, Session.AUTO_ACKNOWLEDGE); Queue queue = session.createQueue(QUEUE_NAME); - MessageProducer producer = session.createProducer(queue); - producer.send(session.createTextMessage(randomString)); + Topic topic = session.createTopic(TOPIC_NAME); + MessageProducer producer = session.createProducer(null); + producer.send(queue, session.createTextMessage(randomString)); + producer.send(topic, session.createTextMessage(randomString)); } info = server.getPostOffice().getAddressInfo(SimpleString.toSimpleString(QUEUE_NAME)); Assert.assertNotNull(info); Assert.assertTrue(info.isAutoCreated()); + info = server.getPostOffice().getAddressInfo(SimpleString.toSimpleString(TOPIC_NAME)); + Assert.assertNotNull(info); + Assert.assertTrue(info.isAutoCreated()); + server.stop(); try (AssertionLoggerHandler loggerHandler = new AssertionLoggerHandler()) { server.start(); - Assert.assertFalse(loggerHandler.findText("AMQ224113")); // this time around the queue had messages, it has to exist + Assert.assertFalse(loggerHandler.matchText("AMQ224113.*" + QUEUE_NAME)); // this time around the queue had messages, it has to exist + Assert.assertTrue(loggerHandler.matchText("AMQ224113.*" + TOPIC_NAME)); // this time around the queue had messages, it has to exist Review Comment: In addition to fixing the comment, I would also move the topic-related AMQ224113 assertion down beneath the AMQ224112 queue-related assertion that currently follows. That would then group the two queue-related assertFalse checks together to note the queue (and related address) were not deleted, then the topic-related one that checks the unused topic address was deleted.(or the opposite, move the topic one up to leave the two queue ones below) Issue Time Tracking --- Worklog Id: (was: 899036) Time Spent: 0.5h (was: 20m) > Auto created addresses are not removed upon restart > --- > > Key: ARTEMIS-4563 > URL: https://issues.apache.org/jira/browse/ARTEMIS-4563 > Project: ActiveMQ Artemis > Issue Type: Bug >Reporter: Domenico Francesco Bruscino >Assignee: Domenico Francesco Bruscino >Priority: Major > Time Spent: 0.5h > Remaining Estimate: 0h > > Auto created addresses without queues are not removed upon restart after > upgrading to 2.29.0 or any later versions -- This message was sent by Atlassian Jira (v8.20.10#820010)
[jira] [Work logged] (ARTEMIS-4561) allow key and trust store type to be configured on the web component
[ https://issues.apache.org/jira/browse/ARTEMIS-4561?focusedWorklogId=899033&page=com.atlassian.jira.plugin.system.issuetabpanels:worklog-tabpanel#worklog-899033 ] ASF GitHub Bot logged work on ARTEMIS-4561: --- Author: ASF GitHub Bot Created on: 10/Jan/24 17:11 Start Date: 10/Jan/24 17:11 Worklog Time Spent: 10m Work Description: gtully commented on code in PR #4736: URL: https://github.com/apache/activemq-artemis/pull/4736#discussion_r1447681265 ## artemis-web/src/test/java/org/apache/activemq/cli/test/WebServerComponentTest.java: ## @@ -338,6 +345,21 @@ public void simpleSecureServer() throws Exception { Assert.assertFalse(webServerComponent.isStarted()); } + @Test + public void testStoreTypeConfigAndProviderRegistration() throws Exception { + + BindingDTO bindingDTO = new BindingDTO(); + bindingDTO.setKeyStorePath(PEM_KEY_STORE_PATH); + bindingDTO.setKeyStoreType("PEMCFG"); Review Comment: It is a convience when cert and private key are in two separate pem files. The path is to a property file that references both. Issue Time Tracking --- Worklog Id: (was: 899033) Time Spent: 40m (was: 0.5h) > allow key and trust store type to be configured on the web component > > > Key: ARTEMIS-4561 > URL: https://issues.apache.org/jira/browse/ARTEMIS-4561 > Project: ActiveMQ Artemis > Issue Type: Improvement > Components: Web Console >Affects Versions: 2.31.0 >Reporter: Gary Tully >Assignee: Gary Tully >Priority: Major > Fix For: 2.32.0 > > Time Spent: 40m > Remaining Estimate: 0h > > Following on from ARTEMIS-4528 > for the jetty engine configured from the web component, it is currently not > possible to configure the store type and configure the use of PEM. Without > this it is not possible to secure the web console with PEM format credentials -- This message was sent by Atlassian Jira (v8.20.10#820010)
[jira] [Work logged] (ARTEMIS-4561) allow key and trust store type to be configured on the web component
[ https://issues.apache.org/jira/browse/ARTEMIS-4561?focusedWorklogId=899034&page=com.atlassian.jira.plugin.system.issuetabpanels:worklog-tabpanel#worklog-899034 ] ASF GitHub Bot logged work on ARTEMIS-4561: --- Author: ASF GitHub Bot Created on: 10/Jan/24 17:12 Start Date: 10/Jan/24 17:12 Worklog Time Spent: 10m Work Description: gtully commented on code in PR #4736: URL: https://github.com/apache/activemq-artemis/pull/4736#discussion_r1447682977 ## artemis-web/src/test/java/org/apache/activemq/cli/test/WebServerComponentTest.java: ## @@ -338,6 +345,21 @@ public void simpleSecureServer() throws Exception { Assert.assertFalse(webServerComponent.isStarted()); } + @Test + public void testStoreTypeConfigAndProviderRegistration() throws Exception { + + BindingDTO bindingDTO = new BindingDTO(); + bindingDTO.setKeyStorePath(PEM_KEY_STORE_PATH); + bindingDTO.setKeyStoreType("PEMCFG"); Review Comment: References https://github.com/ctron/pem-keystore#reading-keycert-from-two-files Issue Time Tracking --- Worklog Id: (was: 899034) Time Spent: 50m (was: 40m) > allow key and trust store type to be configured on the web component > > > Key: ARTEMIS-4561 > URL: https://issues.apache.org/jira/browse/ARTEMIS-4561 > Project: ActiveMQ Artemis > Issue Type: Improvement > Components: Web Console >Affects Versions: 2.31.0 >Reporter: Gary Tully >Assignee: Gary Tully >Priority: Major > Fix For: 2.32.0 > > Time Spent: 50m > Remaining Estimate: 0h > > Following on from ARTEMIS-4528 > for the jetty engine configured from the web component, it is currently not > possible to configure the store type and configure the use of PEM. Without > this it is not possible to secure the web console with PEM format credentials -- This message was sent by Atlassian Jira (v8.20.10#820010)
[jira] [Work logged] (ARTEMIS-4561) allow key and trust store type to be configured on the web component
[ https://issues.apache.org/jira/browse/ARTEMIS-4561?focusedWorklogId=899029&page=com.atlassian.jira.plugin.system.issuetabpanels:worklog-tabpanel#worklog-899029 ] ASF GitHub Bot logged work on ARTEMIS-4561: --- Author: ASF GitHub Bot Created on: 10/Jan/24 16:45 Start Date: 10/Jan/24 16:45 Worklog Time Spent: 10m Work Description: jbertram commented on code in PR #4736: URL: https://github.com/apache/activemq-artemis/pull/4736#discussion_r1447649054 ## artemis-web/src/test/java/org/apache/activemq/cli/test/WebServerComponentTest.java: ## @@ -338,6 +345,21 @@ public void simpleSecureServer() throws Exception { Assert.assertFalse(webServerComponent.isStarted()); } + @Test + public void testStoreTypeConfigAndProviderRegistration() throws Exception { + + BindingDTO bindingDTO = new BindingDTO(); + bindingDTO.setKeyStorePath(PEM_KEY_STORE_PATH); + bindingDTO.setKeyStoreType("PEMCFG"); Review Comment: What is this `PEMCFG` keystore type? I don't see it documented anywhere. Is this something a user would use? Issue Time Tracking --- Worklog Id: (was: 899029) Time Spent: 0.5h (was: 20m) > allow key and trust store type to be configured on the web component > > > Key: ARTEMIS-4561 > URL: https://issues.apache.org/jira/browse/ARTEMIS-4561 > Project: ActiveMQ Artemis > Issue Type: Improvement > Components: Web Console >Affects Versions: 2.31.0 >Reporter: Gary Tully >Assignee: Gary Tully >Priority: Major > Fix For: 2.32.0 > > Time Spent: 0.5h > Remaining Estimate: 0h > > Following on from ARTEMIS-4528 > for the jetty engine configured from the web component, it is currently not > possible to configure the store type and configure the use of PEM. Without > this it is not possible to secure the web console with PEM format credentials -- This message was sent by Atlassian Jira (v8.20.10#820010)
[jira] [Work logged] (ARTEMIS-4561) allow key and trust store type to be configured on the web component
[ https://issues.apache.org/jira/browse/ARTEMIS-4561?focusedWorklogId=899028&page=com.atlassian.jira.plugin.system.issuetabpanels:worklog-tabpanel#worklog-899028 ] ASF GitHub Bot logged work on ARTEMIS-4561: --- Author: ASF GitHub Bot Created on: 10/Jan/24 16:45 Start Date: 10/Jan/24 16:45 Worklog Time Spent: 10m Work Description: jbertram commented on code in PR #4736: URL: https://github.com/apache/activemq-artemis/pull/4736#discussion_r1447649054 ## artemis-web/src/test/java/org/apache/activemq/cli/test/WebServerComponentTest.java: ## @@ -338,6 +345,21 @@ public void simpleSecureServer() throws Exception { Assert.assertFalse(webServerComponent.isStarted()); } + @Test + public void testStoreTypeConfigAndProviderRegistration() throws Exception { + + BindingDTO bindingDTO = new BindingDTO(); + bindingDTO.setKeyStorePath(PEM_KEY_STORE_PATH); + bindingDTO.setKeyStoreType("PEMCFG"); Review Comment: What is this `PEMCFG` keystore type? I don't see it documented anywhere? Is this something a user would use? Issue Time Tracking --- Worklog Id: (was: 899028) Time Spent: 20m (was: 10m) > allow key and trust store type to be configured on the web component > > > Key: ARTEMIS-4561 > URL: https://issues.apache.org/jira/browse/ARTEMIS-4561 > Project: ActiveMQ Artemis > Issue Type: Improvement > Components: Web Console >Affects Versions: 2.31.0 >Reporter: Gary Tully >Assignee: Gary Tully >Priority: Major > Fix For: 2.32.0 > > Time Spent: 20m > Remaining Estimate: 0h > > Following on from ARTEMIS-4528 > for the jetty engine configured from the web component, it is currently not > possible to configure the store type and configure the use of PEM. Without > this it is not possible to secure the web console with PEM format credentials -- This message was sent by Atlassian Jira (v8.20.10#820010)
[jira] [Updated] (ARTEMIS-4562) Limit large messages per queue based on size/count
[ https://issues.apache.org/jira/browse/ARTEMIS-4562?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Subhidh Agarwal updated ARTEMIS-4562: - Affects Version/s: (was: 2.31.2) > Limit large messages per queue based on size/count > -- > > Key: ARTEMIS-4562 > URL: https://issues.apache.org/jira/browse/ARTEMIS-4562 > Project: ActiveMQ Artemis > Issue Type: New Feature >Reporter: Subhidh Agarwal >Priority: Major > > I need to limit the number of large messages per queue by message size & > count just like paged messages are limited by {{page-limit-bytes}} & > {{page-limit-messages}} respectively. > Why is it required? If a consumer is down for some queue(s), or not picking > up large messages, the {{max-disk-usage}} will be reached, impacting the > whole broker. Having a limit per queue for large-messages will prevent a > single queue from filling the disk. -- This message was sent by Atlassian Jira (v8.20.10#820010)
[jira] [Work logged] (ARTEMIS-4563) Auto created addresses are not removed upon restart
[ https://issues.apache.org/jira/browse/ARTEMIS-4563?focusedWorklogId=899027&page=com.atlassian.jira.plugin.system.issuetabpanels:worklog-tabpanel#worklog-899027 ] ASF GitHub Bot logged work on ARTEMIS-4563: --- Author: ASF GitHub Bot Created on: 10/Jan/24 16:33 Start Date: 10/Jan/24 16:33 Worklog Time Spent: 10m Work Description: tabish121 commented on code in PR #4737: URL: https://github.com/apache/activemq-artemis/pull/4737#discussion_r1447633573 ## tests/integration-tests/src/test/java/org/apache/activemq/artemis/tests/integration/client/AutoCreateTest.java: ## @@ -381,26 +382,36 @@ public void testCleanupAfterReboot(String protocol, boolean useDelay) throws Exc try (Connection connection = cf.createConnection()) { Session session = connection.createSession(false, Session.AUTO_ACKNOWLEDGE); Queue queue = session.createQueue(QUEUE_NAME); - MessageProducer producer = session.createProducer(queue); - producer.send(session.createTextMessage(randomString)); + Topic topic = session.createTopic(TOPIC_NAME); + MessageProducer producer = session.createProducer(null); + producer.send(queue, session.createTextMessage(randomString)); + producer.send(topic, session.createTextMessage(randomString)); } info = server.getPostOffice().getAddressInfo(SimpleString.toSimpleString(QUEUE_NAME)); Assert.assertNotNull(info); Assert.assertTrue(info.isAutoCreated()); + info = server.getPostOffice().getAddressInfo(SimpleString.toSimpleString(TOPIC_NAME)); + Assert.assertNotNull(info); + Assert.assertTrue(info.isAutoCreated()); + server.stop(); try (AssertionLoggerHandler loggerHandler = new AssertionLoggerHandler()) { server.start(); - Assert.assertFalse(loggerHandler.findText("AMQ224113")); // this time around the queue had messages, it has to exist + Assert.assertFalse(loggerHandler.matchText("AMQ224113.*" + QUEUE_NAME)); // this time around the queue had messages, it has to exist + Assert.assertTrue(loggerHandler.matchText("AMQ224113.*" + TOPIC_NAME)); // this time around the queue had messages, it has to exist Review Comment: The comment doesn't seem to match the intent of the assert that the address was removed via the log message being present. Issue Time Tracking --- Worklog Id: (was: 899027) Time Spent: 20m (was: 10m) > Auto created addresses are not removed upon restart > --- > > Key: ARTEMIS-4563 > URL: https://issues.apache.org/jira/browse/ARTEMIS-4563 > Project: ActiveMQ Artemis > Issue Type: Bug >Reporter: Domenico Francesco Bruscino >Assignee: Domenico Francesco Bruscino >Priority: Major > Time Spent: 20m > Remaining Estimate: 0h > > Auto created addresses without queues are not removed upon restart after > upgrading to 2.29.0 or any later versions -- This message was sent by Atlassian Jira (v8.20.10#820010)
[jira] [Updated] (ARTEMIS-4556) Support release of multi-platform Docker images
[ https://issues.apache.org/jira/browse/ARTEMIS-4556?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Justin Bertram updated ARTEMIS-4556: Description: We currently release Docker images only for {{{}linux/amd64{}}}, but images can be [built supporting multiple platforms|https://docs.docker.com/build/building/multi-platform/]. However, whatever platforms we choose to build must be supported by the based images we use. We currently publish images using: * [Eclipse Temurin Java 21 JRE based on Ubuntu|https://hub.docker.com/layers/library/eclipse-temurin/21-jre/images/sha256-2d00f6910282a7a20ae7747b8f5e2371f7d55f06daed6bf60a323fcc7eaa3da8?context=explore] * [Eclipse Temurin Java 21 JRE based on Alpine|https://hub.docker.com/layers/library/eclipse-temurin/21-jre-alpine/images/sha256-98963ed09c4fd82e128c6cc9e64d71798239b824164276626d79b8f9e666ac0e?context=explore] Both of these images support: * {{linux/amd64}} * {{linux/arm64}} was: We currently release Docker images only for {{{}linux/amd64{}}}, but images can be [built supporting multiple platforms|https://docs.docker.com/build/building/multi-platform/]. However, whatever platforms we choose to build must be supported by the based images we use. We currently use: * [Eclipse Temurin Java 21 JRE based on Ubuntu|https://hub.docker.com/layers/library/eclipse-temurin/21-jre/images/sha256-2d00f6910282a7a20ae7747b8f5e2371f7d55f06daed6bf60a323fcc7eaa3da8?context=explore] * [Eclipse Temurin Java 21 JRE based on Alpine|https://hub.docker.com/layers/library/eclipse-temurin/21-jre-alpine/images/sha256-98963ed09c4fd82e128c6cc9e64d71798239b824164276626d79b8f9e666ac0e?context=explore] Both of these images support: * {{linux/amd64}} * {{linux/arm64}} > Support release of multi-platform Docker images > --- > > Key: ARTEMIS-4556 > URL: https://issues.apache.org/jira/browse/ARTEMIS-4556 > Project: ActiveMQ Artemis > Issue Type: Task >Reporter: Justin Bertram >Assignee: Justin Bertram >Priority: Major > Time Spent: 10m > Remaining Estimate: 0h > > We currently release Docker images only for {{{}linux/amd64{}}}, but images > can be [built supporting multiple > platforms|https://docs.docker.com/build/building/multi-platform/]. However, > whatever platforms we choose to build must be supported by the based images > we use. We currently publish images using: > * [Eclipse Temurin Java 21 JRE based on > Ubuntu|https://hub.docker.com/layers/library/eclipse-temurin/21-jre/images/sha256-2d00f6910282a7a20ae7747b8f5e2371f7d55f06daed6bf60a323fcc7eaa3da8?context=explore] > * [Eclipse Temurin Java 21 JRE based on > Alpine|https://hub.docker.com/layers/library/eclipse-temurin/21-jre-alpine/images/sha256-98963ed09c4fd82e128c6cc9e64d71798239b824164276626d79b8f9e666ac0e?context=explore] > Both of these images support: > * {{linux/amd64}} > * {{linux/arm64}} -- This message was sent by Atlassian Jira (v8.20.10#820010)
[jira] [Updated] (ARTEMIS-4556) Support release of multi-platform Docker images
[ https://issues.apache.org/jira/browse/ARTEMIS-4556?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Justin Bertram updated ARTEMIS-4556: Description: We currently release Docker images only for {{{}linux/amd64{}}}, but images can be [built supporting multiple platforms|https://docs.docker.com/build/building/multi-platform/]. However, whatever platforms we choose to build must be supported by the based images we use. We currently use: * [Eclipse Temurin Java 21 JRE based on Ubuntu|https://hub.docker.com/layers/library/eclipse-temurin/21-jre/images/sha256-2d00f6910282a7a20ae7747b8f5e2371f7d55f06daed6bf60a323fcc7eaa3da8?context=explore] * [Eclipse Temurin Java 21 JRE based on Alpine|https://hub.docker.com/layers/library/eclipse-temurin/21-jre-alpine/images/sha256-98963ed09c4fd82e128c6cc9e64d71798239b824164276626d79b8f9e666ac0e?context=explore] Both of these images support: * {{linux/amd64}} * {{linux/arm64}} was: We currently release Docker images only for {{{}linux/amd64{}}}, but images can be [built supporting multiple platforms|https://docs.docker.com/build/building/multi-platform/]. However, whatever platforms we choose to build must be supported by the based images we use. We currently use: * [Eclipse Temurin Java 21 JRE based on Ubuntu|https://hub.docker.com/layers/library/eclipse-temurin/21-jre/images/sha256-2d00f6910282a7a20ae7747b8f5e2371f7d55f06daed6bf60a323fcc7eaa3da8?context=explore] * [Eclipse Temurin Java 21 JRE based on Alpine|https://hub.docker.com/layers/library/eclipse-temurin/21-jre-alpine/images/sha256-98963ed09c4fd82e128c6cc9e64d71798239b824164276626d79b8f9e666ac0e?context=explore] Both of these images support: * {{linux/amd64}} * {{linux/arm64/v8}} > Support release of multi-platform Docker images > --- > > Key: ARTEMIS-4556 > URL: https://issues.apache.org/jira/browse/ARTEMIS-4556 > Project: ActiveMQ Artemis > Issue Type: Task >Reporter: Justin Bertram >Assignee: Justin Bertram >Priority: Major > Time Spent: 10m > Remaining Estimate: 0h > > We currently release Docker images only for {{{}linux/amd64{}}}, but images > can be [built supporting multiple > platforms|https://docs.docker.com/build/building/multi-platform/]. However, > whatever platforms we choose to build must be supported by the based images > we use. We currently use: > * [Eclipse Temurin Java 21 JRE based on > Ubuntu|https://hub.docker.com/layers/library/eclipse-temurin/21-jre/images/sha256-2d00f6910282a7a20ae7747b8f5e2371f7d55f06daed6bf60a323fcc7eaa3da8?context=explore] > * [Eclipse Temurin Java 21 JRE based on > Alpine|https://hub.docker.com/layers/library/eclipse-temurin/21-jre-alpine/images/sha256-98963ed09c4fd82e128c6cc9e64d71798239b824164276626d79b8f9e666ac0e?context=explore] > Both of these images support: > * {{linux/amd64}} > * {{linux/arm64}} -- This message was sent by Atlassian Jira (v8.20.10#820010)
[jira] [Work logged] (ARTEMIS-4556) Support release of multi-platform Docker images
[ https://issues.apache.org/jira/browse/ARTEMIS-4556?focusedWorklogId=899023&page=com.atlassian.jira.plugin.system.issuetabpanels:worklog-tabpanel#worklog-899023 ] ASF GitHub Bot logged work on ARTEMIS-4556: --- Author: ASF GitHub Bot Created on: 10/Jan/24 16:11 Start Date: 10/Jan/24 16:11 Worklog Time Spent: 10m Work Description: jbertram opened a new pull request, #4738: URL: https://github.com/apache/activemq-artemis/pull/4738 (no comment) Issue Time Tracking --- Worklog Id: (was: 899023) Remaining Estimate: 0h Time Spent: 10m > Support release of multi-platform Docker images > --- > > Key: ARTEMIS-4556 > URL: https://issues.apache.org/jira/browse/ARTEMIS-4556 > Project: ActiveMQ Artemis > Issue Type: Task >Reporter: Justin Bertram >Assignee: Justin Bertram >Priority: Major > Time Spent: 10m > Remaining Estimate: 0h > > We currently release Docker images only for {{{}linux/amd64{}}}, but images > can be [built supporting multiple > platforms|https://docs.docker.com/build/building/multi-platform/]. However, > whatever platforms we choose to build must be supported by the based images > we use. We currently use: > * [Eclipse Temurin Java 21 JRE based on > Ubuntu|https://hub.docker.com/layers/library/eclipse-temurin/21-jre/images/sha256-2d00f6910282a7a20ae7747b8f5e2371f7d55f06daed6bf60a323fcc7eaa3da8?context=explore] > * [Eclipse Temurin Java 21 JRE based on > Alpine|https://hub.docker.com/layers/library/eclipse-temurin/21-jre-alpine/images/sha256-98963ed09c4fd82e128c6cc9e64d71798239b824164276626d79b8f9e666ac0e?context=explore] > Both of these images support: > * {{linux/amd64}} > * {{linux/arm64/v8}} -- This message was sent by Atlassian Jira (v8.20.10#820010)
[jira] [Resolved] (ARTEMIS-4554) Upgrade to latest Java for Docker images
[ https://issues.apache.org/jira/browse/ARTEMIS-4554?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Robbie Gemmell resolved ARTEMIS-4554. - Fix Version/s: 2.32.0 Resolution: Fixed > Upgrade to latest Java for Docker images > - > > Key: ARTEMIS-4554 > URL: https://issues.apache.org/jira/browse/ARTEMIS-4554 > Project: ActiveMQ Artemis > Issue Type: Task >Reporter: Justin Bertram >Assignee: Justin Bertram >Priority: Major > Fix For: 2.32.0 > > Time Spent: 2h > Remaining Estimate: 0h > -- This message was sent by Atlassian Jira (v8.20.10#820010)
[jira] [Work logged] (ARTEMIS-4554) Upgrade to latest Java for Docker images
[ https://issues.apache.org/jira/browse/ARTEMIS-4554?focusedWorklogId=899021&page=com.atlassian.jira.plugin.system.issuetabpanels:worklog-tabpanel#worklog-899021 ] ASF GitHub Bot logged work on ARTEMIS-4554: --- Author: ASF GitHub Bot Created on: 10/Jan/24 16:06 Start Date: 10/Jan/24 16:06 Worklog Time Spent: 10m Work Description: gemmellr merged PR #4731: URL: https://github.com/apache/activemq-artemis/pull/4731 Issue Time Tracking --- Worklog Id: (was: 899021) Time Spent: 2h (was: 1h 50m) > Upgrade to latest Java for Docker images > - > > Key: ARTEMIS-4554 > URL: https://issues.apache.org/jira/browse/ARTEMIS-4554 > Project: ActiveMQ Artemis > Issue Type: Task >Reporter: Justin Bertram >Assignee: Justin Bertram >Priority: Major > Time Spent: 2h > Remaining Estimate: 0h > -- This message was sent by Atlassian Jira (v8.20.10#820010)
[jira] [Commented] (ARTEMIS-4554) Upgrade to latest Java for Docker images
[ https://issues.apache.org/jira/browse/ARTEMIS-4554?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17805205#comment-17805205 ] ASF subversion and git services commented on ARTEMIS-4554: -- Commit 8b2255d78df7bd863aaeacaabe5f71488124443f in activemq-artemis's branch refs/heads/main from Justin Bertram [ https://gitbox.apache.org/repos/asf?p=activemq-artemis.git;h=8b2255d78d ] ARTEMIS-4554 upgrade to latest Java for Docker images > Upgrade to latest Java for Docker images > - > > Key: ARTEMIS-4554 > URL: https://issues.apache.org/jira/browse/ARTEMIS-4554 > Project: ActiveMQ Artemis > Issue Type: Task >Reporter: Justin Bertram >Assignee: Justin Bertram >Priority: Major > Time Spent: 2h > Remaining Estimate: 0h > -- This message was sent by Atlassian Jira (v8.20.10#820010)
[jira] [Work logged] (ARTEMIS-4563) Auto created addresses are not removed upon restart
[ https://issues.apache.org/jira/browse/ARTEMIS-4563?focusedWorklogId=899020&page=com.atlassian.jira.plugin.system.issuetabpanels:worklog-tabpanel#worklog-899020 ] ASF GitHub Bot logged work on ARTEMIS-4563: --- Author: ASF GitHub Bot Created on: 10/Jan/24 16:03 Start Date: 10/Jan/24 16:03 Worklog Time Spent: 10m Work Description: brusdev opened a new pull request, #4737: URL: https://github.com/apache/activemq-artemis/pull/4737 (no comment) Issue Time Tracking --- Worklog Id: (was: 899020) Remaining Estimate: 0h Time Spent: 10m > Auto created addresses are not removed upon restart > --- > > Key: ARTEMIS-4563 > URL: https://issues.apache.org/jira/browse/ARTEMIS-4563 > Project: ActiveMQ Artemis > Issue Type: Bug >Reporter: Domenico Francesco Bruscino >Assignee: Domenico Francesco Bruscino >Priority: Major > Time Spent: 10m > Remaining Estimate: 0h > > Auto created addresses without queues are not removed upon restart after > upgrading to 2.29.0 or any later versions -- This message was sent by Atlassian Jira (v8.20.10#820010)
[jira] [Created] (ARTEMIS-4563) Auto created addresses are not removed upon restart
Domenico Francesco Bruscino created ARTEMIS-4563: Summary: Auto created addresses are not removed upon restart Key: ARTEMIS-4563 URL: https://issues.apache.org/jira/browse/ARTEMIS-4563 Project: ActiveMQ Artemis Issue Type: Bug Reporter: Domenico Francesco Bruscino Assignee: Domenico Francesco Bruscino Auto created addresses without queues are not removed upon restart after upgrading to 2.29.0 or any later versions -- This message was sent by Atlassian Jira (v8.20.10#820010)
[jira] [Work logged] (ARTEMIS-4554) Upgrade to latest Java for Docker images
[ https://issues.apache.org/jira/browse/ARTEMIS-4554?focusedWorklogId=899011&page=com.atlassian.jira.plugin.system.issuetabpanels:worklog-tabpanel#worklog-899011 ] ASF GitHub Bot logged work on ARTEMIS-4554: --- Author: ASF GitHub Bot Created on: 10/Jan/24 15:18 Start Date: 10/Jan/24 15:18 Worklog Time Spent: 10m Work Description: jbertram commented on code in PR #4731: URL: https://github.com/apache/activemq-artemis/pull/4731#discussion_r1447529539 ## artemis-docker/prepare-docker.sh: ## @@ -53,23 +53,23 @@ Well done! Now you can continue with building the Docker image: # Go to $ARTEMIS_DIST_DIR $ cd $ARTEMIS_DIST_DIR - # For CentOS with full JDK 11 - $ docker build -f ./docker/Dockerfile-centos7-11 -t artemis-centos . + # For CentOS with full JDK 17 + $ docker build -f ./docker/Dockerfile-centos7-17 -t artemis-centos . - # For Ubuntu with full JDK 11 - $ docker build -f ./docker/Dockerfile-ubuntu-11 -t artemis-ubuntu . + # For Ubuntu with full JDK 21 + $ docker build -f ./docker/Dockerfile-ubuntu-21 -t artemis-ubuntu . - # For Ubuntu with just JRE 11 - $ docker build -f ./docker/Dockerfile-ubuntu-11-jre -t artemis-ubuntu-jre . + # For Ubuntu with just JRE 21 + $ docker build -f ./docker/Dockerfile-ubuntu-21-jre -t artemis-ubuntu-jre . - # For Alpine with full JDK 17 - $ docker build -f ./docker/Dockerfile-alpine-17 -t artemis-alpine . + # For Alpine with full JDK 21 + $ docker build -f ./docker/Dockerfile-alpine-21 -t artemis-alpine . - # For Alpine with just JRE 11 - $ docker build -f ./docker/Dockerfile-alpine-11-jre -t artemis-alpine-jre . + # For Alpine with just JRE 21 + $ docker build -f ./docker/Dockerfile-alpine-21-jre -t artemis-alpine-jre . - # For Ubuntu on Linux ARMv7/ARM64 with full JDK - $ docker buildx build --platform linux/arm64,linux/arm/v7 --push -t {your-repository}/apache-artemis:2.17.0-SNAPSHOT -f ./docker/Dockerfile-ubuntu-11 . + # Multi-platform for Ubuntu on Linux AMD64 & ARM64/V8 with full JDK + $ docker buildx build --platform linux/amd64,linux/arm64/v8 --push -t {your-repository}/apache-artemis:{your-version} -f ./docker/Dockerfile-ubuntu-21 . Review Comment: Simplifying to `linux/arm64` sounds good to me. I actually ran into the issue you linked where the image I built with `linux/arm64/v8` reported just `linux/arm64` when I looked at it on Docker Hub. I was confused at first, but now it makes more sense. Issue Time Tracking --- Worklog Id: (was: 899011) Time Spent: 1h 50m (was: 1h 40m) > Upgrade to latest Java for Docker images > - > > Key: ARTEMIS-4554 > URL: https://issues.apache.org/jira/browse/ARTEMIS-4554 > Project: ActiveMQ Artemis > Issue Type: Task >Reporter: Justin Bertram >Assignee: Justin Bertram >Priority: Major > Time Spent: 1h 50m > Remaining Estimate: 0h > -- This message was sent by Atlassian Jira (v8.20.10#820010)
[jira] [Work logged] (ARTEMIS-4554) Upgrade to latest Java for Docker images
[ https://issues.apache.org/jira/browse/ARTEMIS-4554?focusedWorklogId=899009&page=com.atlassian.jira.plugin.system.issuetabpanels:worklog-tabpanel#worklog-899009 ] ASF GitHub Bot logged work on ARTEMIS-4554: --- Author: ASF GitHub Bot Created on: 10/Jan/24 15:18 Start Date: 10/Jan/24 15:18 Worklog Time Spent: 10m Work Description: jbertram commented on code in PR #4731: URL: https://github.com/apache/activemq-artemis/pull/4731#discussion_r1447529539 ## artemis-docker/prepare-docker.sh: ## @@ -53,23 +53,23 @@ Well done! Now you can continue with building the Docker image: # Go to $ARTEMIS_DIST_DIR $ cd $ARTEMIS_DIST_DIR - # For CentOS with full JDK 11 - $ docker build -f ./docker/Dockerfile-centos7-11 -t artemis-centos . + # For CentOS with full JDK 17 + $ docker build -f ./docker/Dockerfile-centos7-17 -t artemis-centos . - # For Ubuntu with full JDK 11 - $ docker build -f ./docker/Dockerfile-ubuntu-11 -t artemis-ubuntu . + # For Ubuntu with full JDK 21 + $ docker build -f ./docker/Dockerfile-ubuntu-21 -t artemis-ubuntu . - # For Ubuntu with just JRE 11 - $ docker build -f ./docker/Dockerfile-ubuntu-11-jre -t artemis-ubuntu-jre . + # For Ubuntu with just JRE 21 + $ docker build -f ./docker/Dockerfile-ubuntu-21-jre -t artemis-ubuntu-jre . - # For Alpine with full JDK 17 - $ docker build -f ./docker/Dockerfile-alpine-17 -t artemis-alpine . + # For Alpine with full JDK 21 + $ docker build -f ./docker/Dockerfile-alpine-21 -t artemis-alpine . - # For Alpine with just JRE 11 - $ docker build -f ./docker/Dockerfile-alpine-11-jre -t artemis-alpine-jre . + # For Alpine with just JRE 21 + $ docker build -f ./docker/Dockerfile-alpine-21-jre -t artemis-alpine-jre . - # For Ubuntu on Linux ARMv7/ARM64 with full JDK - $ docker buildx build --platform linux/arm64,linux/arm/v7 --push -t {your-repository}/apache-artemis:2.17.0-SNAPSHOT -f ./docker/Dockerfile-ubuntu-11 . + # Multi-platform for Ubuntu on Linux AMD64 & ARM64/V8 with full JDK + $ docker buildx build --platform linux/amd64,linux/arm64/v8 --push -t {your-repository}/apache-artemis:{your-version} -f ./docker/Dockerfile-ubuntu-21 . Review Comment: Simplifying to `linux/arm64` sounds good to me. I actually ran into the issue you linked where the image I built with `linux/arm64/v8` reported just `linux/arm64` when I looked at it on Docker Hub. Issue Time Tracking --- Worklog Id: (was: 899009) Time Spent: 1.5h (was: 1h 20m) > Upgrade to latest Java for Docker images > - > > Key: ARTEMIS-4554 > URL: https://issues.apache.org/jira/browse/ARTEMIS-4554 > Project: ActiveMQ Artemis > Issue Type: Task >Reporter: Justin Bertram >Assignee: Justin Bertram >Priority: Major > Time Spent: 1.5h > Remaining Estimate: 0h > -- This message was sent by Atlassian Jira (v8.20.10#820010)
[jira] [Work logged] (ARTEMIS-4554) Upgrade to latest Java for Docker images
[ https://issues.apache.org/jira/browse/ARTEMIS-4554?focusedWorklogId=899010&page=com.atlassian.jira.plugin.system.issuetabpanels:worklog-tabpanel#worklog-899010 ] ASF GitHub Bot logged work on ARTEMIS-4554: --- Author: ASF GitHub Bot Created on: 10/Jan/24 15:18 Start Date: 10/Jan/24 15:18 Worklog Time Spent: 10m Work Description: jbertram commented on code in PR #4731: URL: https://github.com/apache/activemq-artemis/pull/4731#discussion_r1447529539 ## artemis-docker/prepare-docker.sh: ## @@ -53,23 +53,23 @@ Well done! Now you can continue with building the Docker image: # Go to $ARTEMIS_DIST_DIR $ cd $ARTEMIS_DIST_DIR - # For CentOS with full JDK 11 - $ docker build -f ./docker/Dockerfile-centos7-11 -t artemis-centos . + # For CentOS with full JDK 17 + $ docker build -f ./docker/Dockerfile-centos7-17 -t artemis-centos . - # For Ubuntu with full JDK 11 - $ docker build -f ./docker/Dockerfile-ubuntu-11 -t artemis-ubuntu . + # For Ubuntu with full JDK 21 + $ docker build -f ./docker/Dockerfile-ubuntu-21 -t artemis-ubuntu . - # For Ubuntu with just JRE 11 - $ docker build -f ./docker/Dockerfile-ubuntu-11-jre -t artemis-ubuntu-jre . + # For Ubuntu with just JRE 21 + $ docker build -f ./docker/Dockerfile-ubuntu-21-jre -t artemis-ubuntu-jre . - # For Alpine with full JDK 17 - $ docker build -f ./docker/Dockerfile-alpine-17 -t artemis-alpine . + # For Alpine with full JDK 21 + $ docker build -f ./docker/Dockerfile-alpine-21 -t artemis-alpine . - # For Alpine with just JRE 11 - $ docker build -f ./docker/Dockerfile-alpine-11-jre -t artemis-alpine-jre . + # For Alpine with just JRE 21 + $ docker build -f ./docker/Dockerfile-alpine-21-jre -t artemis-alpine-jre . - # For Ubuntu on Linux ARMv7/ARM64 with full JDK - $ docker buildx build --platform linux/arm64,linux/arm/v7 --push -t {your-repository}/apache-artemis:2.17.0-SNAPSHOT -f ./docker/Dockerfile-ubuntu-11 . + # Multi-platform for Ubuntu on Linux AMD64 & ARM64/V8 with full JDK + $ docker buildx build --platform linux/amd64,linux/arm64/v8 --push -t {your-repository}/apache-artemis:{your-version} -f ./docker/Dockerfile-ubuntu-21 . Review Comment: Simplifying to `linux/arm64` sounds good to me. I actually ran into the issue you linked where the image I built with `linux/arm64/v8` reported just `linux/arm64` when I looked at it on Docker Hub. I was confused at first, but now it makes sense. Issue Time Tracking --- Worklog Id: (was: 899010) Time Spent: 1h 40m (was: 1.5h) > Upgrade to latest Java for Docker images > - > > Key: ARTEMIS-4554 > URL: https://issues.apache.org/jira/browse/ARTEMIS-4554 > Project: ActiveMQ Artemis > Issue Type: Task >Reporter: Justin Bertram >Assignee: Justin Bertram >Priority: Major > Time Spent: 1h 40m > Remaining Estimate: 0h > -- This message was sent by Atlassian Jira (v8.20.10#820010)
[jira] [Work logged] (ARTEMIS-4557) expose producer window size in clusterconnection JMX
[ https://issues.apache.org/jira/browse/ARTEMIS-4557?focusedWorklogId=899006&page=com.atlassian.jira.plugin.system.issuetabpanels:worklog-tabpanel#worklog-899006 ] ASF GitHub Bot logged work on ARTEMIS-4557: --- Author: ASF GitHub Bot Created on: 10/Jan/24 15:09 Start Date: 10/Jan/24 15:09 Worklog Time Spent: 10m Work Description: jbertram commented on code in PR #4732: URL: https://github.com/apache/activemq-artemis/pull/4732#discussion_r1447517406 ## artemis-server/src/main/java/org/apache/activemq/artemis/core/management/impl/ClusterConnectionControlImpl.java: ## @@ -321,5 +321,18 @@ public Map getBridgeMetrics(String nodeId) { } + @Override + public long getProducerWindowSize() { + if (AuditLogger.isBaseLoggingEnabled()) { + AuditLogger.getTopology(this.clusterConnection); Review Comment: Nice catch. I skimmed right over that. I fixed it with 42ddf99ca8846218ee7b49d97a4f5087318c15e3. Issue Time Tracking --- Worklog Id: (was: 899006) Time Spent: 40m (was: 0.5h) > expose producer window size in clusterconnection JMX > > > Key: ARTEMIS-4557 > URL: https://issues.apache.org/jira/browse/ARTEMIS-4557 > Project: ActiveMQ Artemis > Issue Type: Improvement >Reporter: Andy Taylor >Assignee: Andy Taylor >Priority: Major > Time Spent: 40m > Remaining Estimate: 0h > -- This message was sent by Atlassian Jira (v8.20.10#820010)
[jira] [Commented] (ARTEMIS-4557) expose producer window size in clusterconnection JMX
[ https://issues.apache.org/jira/browse/ARTEMIS-4557?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17805184#comment-17805184 ] ASF subversion and git services commented on ARTEMIS-4557: -- Commit 42ddf99ca8846218ee7b49d97a4f5087318c15e3 in activemq-artemis's branch refs/heads/main from Justin Bertram [ https://gitbox.apache.org/repos/asf?p=activemq-artemis.git;h=42ddf99ca8 ] ARTEMIS-4557 fix audit logging > expose producer window size in clusterconnection JMX > > > Key: ARTEMIS-4557 > URL: https://issues.apache.org/jira/browse/ARTEMIS-4557 > Project: ActiveMQ Artemis > Issue Type: Improvement >Reporter: Andy Taylor >Assignee: Andy Taylor >Priority: Major > Time Spent: 0.5h > Remaining Estimate: 0h > -- This message was sent by Atlassian Jira (v8.20.10#820010)
[jira] [Updated] (ARTEMIS-4562) Limit large messages per queue based on size/count
[ https://issues.apache.org/jira/browse/ARTEMIS-4562?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Justin Bertram updated ARTEMIS-4562: Description: I need to limit the number of large messages per queue by message size & count just like paged messages are limited by {{page-limit-bytes}} & {{page-limit-messages}} respectively. Why is it required? If a consumer is down for some queue(s), or not picking up large messages, the {{max-disk-usage}} will be reached, impacting the whole broker. Having a limit per queue for large-messages will prevent a single queue from filling the disk. was: I need to limit the number of large messages per queue by message count/size just like paged messages are limited by {{page-limit-bytes}} and {{{}page-limit-messages{}}}. Why is it required? If a consumer is down for some queue(s), or not picking up large messages, the {{max-disk-usage}} will be reached, impacting the whole broker. Having a limit per queue for large-messages will prevent a single queue from filling the disk. > Limit large messages per queue based on size/count > -- > > Key: ARTEMIS-4562 > URL: https://issues.apache.org/jira/browse/ARTEMIS-4562 > Project: ActiveMQ Artemis > Issue Type: New Feature >Affects Versions: 2.31.2 >Reporter: Subhidh Agarwal >Priority: Major > > I need to limit the number of large messages per queue by message size & > count just like paged messages are limited by {{page-limit-bytes}} & > {{page-limit-messages}} respectively. > Why is it required? If a consumer is down for some queue(s), or not picking > up large messages, the {{max-disk-usage}} will be reached, impacting the > whole broker. Having a limit per queue for large-messages will prevent a > single queue from filling the disk. -- This message was sent by Atlassian Jira (v8.20.10#820010)
[jira] [Updated] (ARTEMIS-4562) Limit large messages per queue based on size/count
[ https://issues.apache.org/jira/browse/ARTEMIS-4562?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Justin Bertram updated ARTEMIS-4562: Summary: Limit large messages per queue based on size/count (was: large-message-limit per queue based on size/number of messages) > Limit large messages per queue based on size/count > -- > > Key: ARTEMIS-4562 > URL: https://issues.apache.org/jira/browse/ARTEMIS-4562 > Project: ActiveMQ Artemis > Issue Type: New Feature >Affects Versions: 2.31.2 >Reporter: Subhidh Agarwal >Priority: Major > > I need to limit the number of large messages per queue by message count/size > just like paged messages are limited by {{page-limit-bytes}} and > {{{}page-limit-messages{}}}. > Why is it required? If a consumer is down for some queue(s), or not picking > up large messages, the {{max-disk-usage}} will be reached, impacting the > whole broker. Having a limit per queue for large-messages will prevent a > single queue from filling the disk. -- This message was sent by Atlassian Jira (v8.20.10#820010)
[jira] [Updated] (ARTEMIS-4562) large-message-limit per queue based on size/number of messages
[ https://issues.apache.org/jira/browse/ARTEMIS-4562?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Justin Bertram updated ARTEMIS-4562: Description: I need to limit the number of large messages per queue by message count/size just like paged messages are limited by {{page-limit-bytes}} and {{{}page-limit-messages{}}}. Why is it required? If a consumer is down for some queue(s), or not picking up large messages, the {{max-disk-usage}} will be reached, impacting the whole broker. Having a limit per queue for large-messages will prevent a single queue from filling the disk. was: Need to limit the number of large messages per Queue by number of messages/size, just like paged messages are limited by `page-limit-bytes` and `page-limit-messages`. Why is it required? If a consumer is down for some Queue(s), or not picking up large messages, the max-disk-usage will be reached, impacting the whole broker. Having a limit per queue for large-messages will prevent a single queue from filling the disk. > large-message-limit per queue based on size/number of messages > -- > > Key: ARTEMIS-4562 > URL: https://issues.apache.org/jira/browse/ARTEMIS-4562 > Project: ActiveMQ Artemis > Issue Type: New Feature >Affects Versions: 2.31.2 >Reporter: Subhidh Agarwal >Priority: Major > > I need to limit the number of large messages per queue by message count/size > just like paged messages are limited by {{page-limit-bytes}} and > {{{}page-limit-messages{}}}. > Why is it required? If a consumer is down for some queue(s), or not picking > up large messages, the {{max-disk-usage}} will be reached, impacting the > whole broker. Having a limit per queue for large-messages will prevent a > single queue from filling the disk. -- This message was sent by Atlassian Jira (v8.20.10#820010)
[jira] [Assigned] (ARTEMIS-4562) large-message-limit per queue based on size/number of messages
[ https://issues.apache.org/jira/browse/ARTEMIS-4562?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Justin Bertram reassigned ARTEMIS-4562: --- Assignee: (was: Clebert Suconic) > large-message-limit per queue based on size/number of messages > -- > > Key: ARTEMIS-4562 > URL: https://issues.apache.org/jira/browse/ARTEMIS-4562 > Project: ActiveMQ Artemis > Issue Type: New Feature >Affects Versions: 2.31.2 >Reporter: Subhidh Agarwal >Priority: Major > > Need to limit the number of large messages per Queue by number of > messages/size, just like paged messages are limited by `page-limit-bytes` and > `page-limit-messages`. > Why is it required? > If a consumer is down for some Queue(s), or not picking up large messages, > the max-disk-usage will be reached, impacting the whole broker. Having a > limit per queue for large-messages will prevent a single queue from filling > the disk. -- This message was sent by Atlassian Jira (v8.20.10#820010)
[jira] [Updated] (ARTEMIS-4562) large-message-limit per queue based on size/number of messages
[ https://issues.apache.org/jira/browse/ARTEMIS-4562?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Justin Bertram updated ARTEMIS-4562: Component/s: (was: ActiveMQ-Artemis-Native) > large-message-limit per queue based on size/number of messages > -- > > Key: ARTEMIS-4562 > URL: https://issues.apache.org/jira/browse/ARTEMIS-4562 > Project: ActiveMQ Artemis > Issue Type: New Feature >Affects Versions: 2.31.2 >Reporter: Subhidh Agarwal >Assignee: Clebert Suconic >Priority: Major > > Need to limit the number of large messages per Queue by number of > messages/size, just like paged messages are limited by `page-limit-bytes` and > `page-limit-messages`. > Why is it required? > If a consumer is down for some Queue(s), or not picking up large messages, > the max-disk-usage will be reached, impacting the whole broker. Having a > limit per queue for large-messages will prevent a single queue from filling > the disk. -- This message was sent by Atlassian Jira (v8.20.10#820010)
[jira] [Created] (ARTEMIS-4562) large-message-limit per queue based on size/number of messages
Subhidh Agarwal created ARTEMIS-4562: Summary: large-message-limit per queue based on size/number of messages Key: ARTEMIS-4562 URL: https://issues.apache.org/jira/browse/ARTEMIS-4562 Project: ActiveMQ Artemis Issue Type: New Feature Components: ActiveMQ-Artemis-Native Affects Versions: 2.31.2 Reporter: Subhidh Agarwal Assignee: Clebert Suconic Need to limit the number of large messages per Queue by number of messages/size, just like paged messages are limited by `page-limit-bytes` and `page-limit-messages`. Why is it required? If a consumer is down for some Queue(s), or not picking up large messages, the max-disk-usage will be reached, impacting the whole broker. Having a limit per queue for large-messages will prevent a single queue from filling the disk. -- This message was sent by Atlassian Jira (v8.20.10#820010)
[jira] [Work logged] (ARTEMIS-4561) allow key and trust store type to be configured on the web component
[ https://issues.apache.org/jira/browse/ARTEMIS-4561?focusedWorklogId=898985&page=com.atlassian.jira.plugin.system.issuetabpanels:worklog-tabpanel#worklog-898985 ] ASF GitHub Bot logged work on ARTEMIS-4561: --- Author: ASF GitHub Bot Created on: 10/Jan/24 13:46 Start Date: 10/Jan/24 13:46 Worklog Time Spent: 10m Work Description: gtully opened a new pull request, #4736: URL: https://github.com/apache/activemq-artemis/pull/4736 (no comment) Issue Time Tracking --- Worklog Id: (was: 898985) Remaining Estimate: 0h Time Spent: 10m > allow key and trust store type to be configured on the web component > > > Key: ARTEMIS-4561 > URL: https://issues.apache.org/jira/browse/ARTEMIS-4561 > Project: ActiveMQ Artemis > Issue Type: Improvement > Components: Web Console >Affects Versions: 2.31.0 >Reporter: Gary Tully >Assignee: Gary Tully >Priority: Major > Fix For: 2.32.0 > > Time Spent: 10m > Remaining Estimate: 0h > > Following on from ARTEMIS-4528 > for the jetty engine configured from the web component, it is currently not > possible to configure the store type and configure the use of PEM. Without > this it is not possible to secure the web console with PEM format credentials -- This message was sent by Atlassian Jira (v8.20.10#820010)
[jira] [Comment Edited] (AMQ-9298) Fix console regression when listing consumers on a queue
[ https://issues.apache.org/jira/browse/AMQ-9298?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17805151#comment-17805151 ] Michael Prieß edited comment on AMQ-9298 at 1/10/24 1:45 PM: - Seems like this bug was already fixed with [https://github.com/apache/activemq/commit/4cedd80774a91ac14f50ad20d4e32b49bc9f4563] but not backported to 5.16.x. I can reproduce the issue with 5.16.7. was (Author: mpriess): Seems like this bug was already fixed with [https://github.com/apache/activemq/commit/4cedd80774a91ac14f50ad20d4e32b49bc9f4563] but not backported to 5.16.x. I can reproduce the issue with 5.16.17. > Fix console regression when listing consumers on a queue > > > Key: AMQ-9298 > URL: https://issues.apache.org/jira/browse/AMQ-9298 > Project: ActiveMQ > Issue Type: Bug >Reporter: Matt Pavlovich >Assignee: Matt Pavlovich >Priority: Major > > in org.apache.activemq.web.BrokerFacadeSupport > @Override > @SuppressWarnings("unchecked") > public Collection getQueueConsumers(String > queueName) throws Exception { > String brokerName = getBrokerName(); > queueName = StringUtils.replace(queueName, "\"", "_"); > ObjectName query = new > ObjectName("org.apache.activemq:type=Broker,brokerName=\"" + brokerName > + "\",destinationType=Queue,destinationName=\"" + queueName + > "\",endpoint=Consumer,*"); > Set queryResult = queryNames(query, null); > return getManagedObjects(queryResult.toArray(new > ObjectName[queryResult.size()]), SubscriptionViewMBean.class); > } > these quotes are redundant,when i delete these quotes,and replace this class > file to activemq-web-5.16.6.jar and restart active mq . the the consumer list > appears. -- This message was sent by Atlassian Jira (v8.20.10#820010)
[jira] [Commented] (AMQ-9298) Fix console regression when listing consumers on a queue
[ https://issues.apache.org/jira/browse/AMQ-9298?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17805151#comment-17805151 ] Michael Prieß commented on AMQ-9298: Seems like this bug was already fixed with [https://github.com/apache/activemq/commit/4cedd80774a91ac14f50ad20d4e32b49bc9f4563] but not backported to 5.16.x. I can reproduce the issue with 5.16.17. > Fix console regression when listing consumers on a queue > > > Key: AMQ-9298 > URL: https://issues.apache.org/jira/browse/AMQ-9298 > Project: ActiveMQ > Issue Type: Bug >Reporter: Matt Pavlovich >Assignee: Matt Pavlovich >Priority: Major > > in org.apache.activemq.web.BrokerFacadeSupport > @Override > @SuppressWarnings("unchecked") > public Collection getQueueConsumers(String > queueName) throws Exception { > String brokerName = getBrokerName(); > queueName = StringUtils.replace(queueName, "\"", "_"); > ObjectName query = new > ObjectName("org.apache.activemq:type=Broker,brokerName=\"" + brokerName > + "\",destinationType=Queue,destinationName=\"" + queueName + > "\",endpoint=Consumer,*"); > Set queryResult = queryNames(query, null); > return getManagedObjects(queryResult.toArray(new > ObjectName[queryResult.size()]), SubscriptionViewMBean.class); > } > these quotes are redundant,when i delete these quotes,and replace this class > file to activemq-web-5.16.6.jar and restart active mq . the the consumer list > appears. -- This message was sent by Atlassian Jira (v8.20.10#820010)
[jira] [Work logged] (ARTEMIS-4558) AMQP Mirror ACKS should be idempotent
[ https://issues.apache.org/jira/browse/ARTEMIS-4558?focusedWorklogId=898980&page=com.atlassian.jira.plugin.system.issuetabpanels:worklog-tabpanel#worklog-898980 ] ASF GitHub Bot logged work on ARTEMIS-4558: --- Author: ASF GitHub Bot Created on: 10/Jan/24 13:08 Start Date: 10/Jan/24 13:08 Worklog Time Spent: 10m Work Description: gemmellr commented on code in PR #4734: URL: https://github.com/apache/activemq-artemis/pull/4734#discussion_r1447347508 ## tests/soak-tests/src/test/java/org/apache/activemq/artemis/tests/soak/brokerConnection/mirror/IdempotentACKTest.java: ## @@ -0,0 +1,303 @@ +/* + * 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.soak.brokerConnection.mirror; + +import javax.jms.Connection; +import javax.jms.ConnectionFactory; +import javax.jms.JMSException; +import javax.jms.Message; +import javax.jms.MessageConsumer; +import javax.jms.MessageProducer; +import javax.jms.Queue; +import javax.jms.Session; +import javax.jms.TextMessage; +import javax.jms.TransactionRolledBackException; +import java.io.File; +import java.io.StringWriter; +import java.lang.invoke.MethodHandles; +import java.util.Properties; +import java.util.concurrent.CountDownLatch; +import java.util.concurrent.ExecutorService; +import java.util.concurrent.Executors; +import java.util.concurrent.TimeUnit; +import java.util.concurrent.atomic.AtomicBoolean; + +import org.apache.activemq.artemis.api.core.management.SimpleManagement; +import org.apache.activemq.artemis.core.config.amqpBrokerConnectivity.AMQPBrokerConnectionAddressType; +import org.apache.activemq.artemis.tests.soak.SoakTestBase; +import org.apache.activemq.artemis.tests.util.CFUtil; +import org.apache.activemq.artemis.tests.util.Wait; +import org.apache.activemq.artemis.util.ServerUtil; +import org.apache.activemq.artemis.utils.cli.helper.HelperCreate; +import org.junit.Assert; +import org.junit.Before; +import org.junit.BeforeClass; +import org.junit.Test; +import org.slf4j.Logger; +import org.slf4j.LoggerFactory; + +public class IdempotentACKTest extends SoakTestBase { + + private static final Logger logger = LoggerFactory.getLogger(MethodHandles.lookup().lookupClass()); + + private static String largeBody; + + static { + StringWriter writer = new StringWriter(); + while (writer.getBuffer().length() < 1024 * 1024) { + writer.append("This is a large string . "); + } + largeBody = writer.toString(); + } + + private static final String QUEUE_NAME = "myQueue"; + + public static final String DC1_NODE_A = "idempotentMirror/DC1"; + public static final String DC2_NODE_A = "idempotentMirror/DC2"; + + Process processDC1_node_A; + Process processDC2_node_A; + + private static String DC1_NODEA_URI = "tcp://localhost:61616"; + private static String DC2_NODEA_URI = "tcp://localhost:61618"; + + private static void createServer(String serverName, +String connectionName, +String mirrorURI, +int porOffset) throws Exception { + File serverLocation = getFileServerLocation(serverName); + deleteDirectory(serverLocation); + + HelperCreate cliCreateServer = new HelperCreate(); + cliCreateServer.setAllowAnonymous(true).setNoWeb(true).setArtemisInstance(serverLocation); + cliCreateServer.setMessageLoadBalancing("ON_DEMAND"); + cliCreateServer.setClustered(false); + cliCreateServer.setNoWeb(true); + cliCreateServer.setArgs("--no-stomp-acceptor", "--no-hornetq-acceptor", "--no-mqtt-acceptor", "--no-amqp-acceptor", "--max-hops", "1", "--name", DC1_NODE_A); + cliCreateServer.addArgs("--queues", QUEUE_NAME); + cliCreateServer.setPortOffset(porOffset); + cliCreateServer.createServer(); + + Properties brokerProperties = new Properties(); + brokerProperties.put("AMQPConnections." + connectionName + ".uri", mirrorURI); + brokerProperties.put("AMQPConnections." + connectionName + ".retryInterval", "1000"); + brokerProperties.put("AMQPConnections." +
[jira] [Work logged] (ARTEMIS-4558) AMQP Mirror ACKS should be idempotent
[ https://issues.apache.org/jira/browse/ARTEMIS-4558?focusedWorklogId=898979&page=com.atlassian.jira.plugin.system.issuetabpanels:worklog-tabpanel#worklog-898979 ] ASF GitHub Bot logged work on ARTEMIS-4558: --- Author: ASF GitHub Bot Created on: 10/Jan/24 13:06 Start Date: 10/Jan/24 13:06 Worklog Time Spent: 10m Work Description: gemmellr commented on code in PR #4734: URL: https://github.com/apache/activemq-artemis/pull/4734#discussion_r1447347508 ## tests/soak-tests/src/test/java/org/apache/activemq/artemis/tests/soak/brokerConnection/mirror/IdempotentACKTest.java: ## @@ -0,0 +1,303 @@ +/* + * 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.soak.brokerConnection.mirror; + +import javax.jms.Connection; +import javax.jms.ConnectionFactory; +import javax.jms.JMSException; +import javax.jms.Message; +import javax.jms.MessageConsumer; +import javax.jms.MessageProducer; +import javax.jms.Queue; +import javax.jms.Session; +import javax.jms.TextMessage; +import javax.jms.TransactionRolledBackException; +import java.io.File; +import java.io.StringWriter; +import java.lang.invoke.MethodHandles; +import java.util.Properties; +import java.util.concurrent.CountDownLatch; +import java.util.concurrent.ExecutorService; +import java.util.concurrent.Executors; +import java.util.concurrent.TimeUnit; +import java.util.concurrent.atomic.AtomicBoolean; + +import org.apache.activemq.artemis.api.core.management.SimpleManagement; +import org.apache.activemq.artemis.core.config.amqpBrokerConnectivity.AMQPBrokerConnectionAddressType; +import org.apache.activemq.artemis.tests.soak.SoakTestBase; +import org.apache.activemq.artemis.tests.util.CFUtil; +import org.apache.activemq.artemis.tests.util.Wait; +import org.apache.activemq.artemis.util.ServerUtil; +import org.apache.activemq.artemis.utils.cli.helper.HelperCreate; +import org.junit.Assert; +import org.junit.Before; +import org.junit.BeforeClass; +import org.junit.Test; +import org.slf4j.Logger; +import org.slf4j.LoggerFactory; + +public class IdempotentACKTest extends SoakTestBase { + + private static final Logger logger = LoggerFactory.getLogger(MethodHandles.lookup().lookupClass()); + + private static String largeBody; + + static { + StringWriter writer = new StringWriter(); + while (writer.getBuffer().length() < 1024 * 1024) { + writer.append("This is a large string . "); + } + largeBody = writer.toString(); + } + + private static final String QUEUE_NAME = "myQueue"; + + public static final String DC1_NODE_A = "idempotentMirror/DC1"; + public static final String DC2_NODE_A = "idempotentMirror/DC2"; + + Process processDC1_node_A; + Process processDC2_node_A; + + private static String DC1_NODEA_URI = "tcp://localhost:61616"; + private static String DC2_NODEA_URI = "tcp://localhost:61618"; + + private static void createServer(String serverName, +String connectionName, +String mirrorURI, +int porOffset) throws Exception { + File serverLocation = getFileServerLocation(serverName); + deleteDirectory(serverLocation); + + HelperCreate cliCreateServer = new HelperCreate(); + cliCreateServer.setAllowAnonymous(true).setNoWeb(true).setArtemisInstance(serverLocation); + cliCreateServer.setMessageLoadBalancing("ON_DEMAND"); + cliCreateServer.setClustered(false); + cliCreateServer.setNoWeb(true); + cliCreateServer.setArgs("--no-stomp-acceptor", "--no-hornetq-acceptor", "--no-mqtt-acceptor", "--no-amqp-acceptor", "--max-hops", "1", "--name", DC1_NODE_A); + cliCreateServer.addArgs("--queues", QUEUE_NAME); + cliCreateServer.setPortOffset(porOffset); + cliCreateServer.createServer(); + + Properties brokerProperties = new Properties(); + brokerProperties.put("AMQPConnections." + connectionName + ".uri", mirrorURI); + brokerProperties.put("AMQPConnections." + connectionName + ".retryInterval", "1000"); + brokerProperties.put("AMQPConnections." +
[jira] [Work logged] (ARTEMIS-4558) AMQP Mirror ACKS should be idempotent
[ https://issues.apache.org/jira/browse/ARTEMIS-4558?focusedWorklogId=898963&page=com.atlassian.jira.plugin.system.issuetabpanels:worklog-tabpanel#worklog-898963 ] ASF GitHub Bot logged work on ARTEMIS-4558: --- Author: ASF GitHub Bot Created on: 10/Jan/24 12:37 Start Date: 10/Jan/24 12:37 Worklog Time Spent: 10m Work Description: gemmellr commented on code in PR #4734: URL: https://github.com/apache/activemq-artemis/pull/4734#discussion_r1447330865 ## artemis-protocols/artemis-amqp-protocol/src/main/java/org/apache/activemq/artemis/protocol/amqp/connect/AMQPBrokerConnection.java: ## @@ -498,7 +498,7 @@ private Queue installMirrorController(AMQPMirrorBrokerConnectionElement replicaC Queue mirrorControlQueue = server.locateQueue(getMirrorSNF(replicaConfig)); if (mirrorControlQueue == null) { - mirrorControlQueue = server.createQueue(new QueueConfiguration(getMirrorSNF(replicaConfig)).setAddress(getMirrorSNF(replicaConfig)).setRoutingType(RoutingType.ANYCAST).setDurable(replicaConfig.isDurable()).setInternal(true), true); + mirrorControlQueue = server.createQueue(new QueueConfiguration(getMirrorSNF(replicaConfig)).setAddress(getMirrorSNF(replicaConfig)).setRoutingType(RoutingType.ANYCAST).setDurable(replicaConfig.isDurable()).setInternal(false), true); Review Comment: I have no concern around whether it can be managed or not. I'm saying that my impression from the prior change that added the 'dual mirror' stuff and made it 'internal' was that it was done more to have it treated a specific way (e.g excluded) by other e.g mirror/cluster/etc related code in the broker and not just to hide the queue from management. I am raising the question over whether thats actually the case and if so whether any previously desired treatment elsewhere wont occur as a result from simply marking it not-internal again. This didnt occur to me before, but while typing that it did... I believe Justin (or maybe you?) made a change to persist the 'internal' value at some point...if so is the broker code actually going to end up dealing with a mixture now where some are and some arent? Issue Time Tracking --- Worklog Id: (was: 898963) Time Spent: 1.5h (was: 1h 20m) > AMQP Mirror ACKS should be idempotent > - > > Key: ARTEMIS-4558 > URL: https://issues.apache.org/jira/browse/ARTEMIS-4558 > Project: ActiveMQ Artemis > Issue Type: Bug >Reporter: Clebert Suconic >Assignee: Clebert Suconic >Priority: Major > Fix For: 2.32.0 > > Time Spent: 1.5h > Remaining Estimate: 0h > > When I first developed Mirroring, I assumed sending the mirrored ACK on a > aferACK and disconnected from any other transactions would be enough, with > the caveat you could get a duplicate delivery on the target mirror in case of > failures. > I got some complains that this is not safe enough from some users, and I'm > making this now idempotent. > I took an overal mirroring hardening approach and I'm improving test coverage > for this improvement. -- This message was sent by Atlassian Jira (v8.20.10#820010)
[jira] [Created] (ARTEMIS-4561) allow key and trust store type to be configured on the web component
Gary Tully created ARTEMIS-4561: --- Summary: allow key and trust store type to be configured on the web component Key: ARTEMIS-4561 URL: https://issues.apache.org/jira/browse/ARTEMIS-4561 Project: ActiveMQ Artemis Issue Type: Improvement Components: Web Console Affects Versions: 2.31.0 Reporter: Gary Tully Assignee: Gary Tully Fix For: 2.32.0 Following on from ARTEMIS-4528 for the jetty engine configured from the web component, it is currently not possible to configure the store type and configure the use of PEM. Without this it is not possible to secure the web console with PEM format credentials -- This message was sent by Atlassian Jira (v8.20.10#820010)
[jira] [Work logged] (ARTEMIS-4554) Upgrade to latest Java for Docker images
[ https://issues.apache.org/jira/browse/ARTEMIS-4554?focusedWorklogId=898948&page=com.atlassian.jira.plugin.system.issuetabpanels:worklog-tabpanel#worklog-898948 ] ASF GitHub Bot logged work on ARTEMIS-4554: --- Author: ASF GitHub Bot Created on: 10/Jan/24 11:50 Start Date: 10/Jan/24 11:50 Worklog Time Spent: 10m Work Description: gemmellr commented on code in PR #4731: URL: https://github.com/apache/activemq-artemis/pull/4731#discussion_r1447282732 ## artemis-docker/prepare-docker.sh: ## @@ -53,23 +53,23 @@ Well done! Now you can continue with building the Docker image: # Go to $ARTEMIS_DIST_DIR $ cd $ARTEMIS_DIST_DIR - # For CentOS with full JDK 11 - $ docker build -f ./docker/Dockerfile-centos7-11 -t artemis-centos . + # For CentOS with full JDK 17 + $ docker build -f ./docker/Dockerfile-centos7-17 -t artemis-centos . - # For Ubuntu with full JDK 11 - $ docker build -f ./docker/Dockerfile-ubuntu-11 -t artemis-ubuntu . + # For Ubuntu with full JDK 21 + $ docker build -f ./docker/Dockerfile-ubuntu-21 -t artemis-ubuntu . - # For Ubuntu with just JRE 11 - $ docker build -f ./docker/Dockerfile-ubuntu-11-jre -t artemis-ubuntu-jre . + # For Ubuntu with just JRE 21 + $ docker build -f ./docker/Dockerfile-ubuntu-21-jre -t artemis-ubuntu-jre . - # For Alpine with full JDK 17 - $ docker build -f ./docker/Dockerfile-alpine-17 -t artemis-alpine . + # For Alpine with full JDK 21 + $ docker build -f ./docker/Dockerfile-alpine-21 -t artemis-alpine . - # For Alpine with just JRE 11 - $ docker build -f ./docker/Dockerfile-alpine-11-jre -t artemis-alpine-jre . + # For Alpine with just JRE 21 + $ docker build -f ./docker/Dockerfile-alpine-21-jre -t artemis-alpine-jre . - # For Ubuntu on Linux ARMv7/ARM64 with full JDK - $ docker buildx build --platform linux/arm64,linux/arm/v7 --push -t {your-repository}/apache-artemis:2.17.0-SNAPSHOT -f ./docker/Dockerfile-ubuntu-11 . + # Multi-platform for Ubuntu on Linux AMD64 & ARM64/V8 with full JDK + $ docker buildx build --platform linux/amd64,linux/arm64/v8 --push -t {your-repository}/apache-artemis:{your-version} -f ./docker/Dockerfile-ubuntu-21 . Review Comment: My understanding was they are essentially interchangeable, especially in this case with cross compiling against the bare 'linux/arm64' saying much the same thing as 'linux/arm/v8' because v8 was the original arm64. There could be more specific variants being produced in cases it might need to be explicitly distingish for a particular image, especially e.g if there are to be different supported variants of the image at the same time for different instruction classes and using a specific one is required in certain cases. For comparison, we also only tend to use 'linux/amd64' for images but there are also multiple variants of AMD64/x86-64 as well now to distinguish different instruction additions over time through feature levels, e.g the [docs I referenced for docker buildx](https://docs.docker.com/build/building/multi-platform/#cross-compilation) demonstrates those too such as linux/amd64/v2 and linux/amd64/v3. In the past, most stuff was built for just AMD64 'v1' but that increasingly isnt true anymore. As a related example to both of these, RHEL9 binaries are actually compiled for AMD64v2 feature level however the UBI9 images dont use linux/amd64/v2 for the os/arch name but [simply linux/amd64](https://hub.docker.com/layers/redhat/ubi9/latest/images/sha256-3b696988fc62a88631898d24bde1f2bfb703fe6530f36ad9b98baff9ad4c73fc?context=explore). The UBI9 image ARM bits are also published for simply linux/arm64 as another comparison. (Aside, its still being explored [whether RHEL10 will be compiled for AMD64/v3](https://developers.redhat.com/articles/2024/01/02/exploring-x86-64-v3-red-hat-enterprise-linux-10)...I would guess the images will just continue to use simply linux/amd64 for the os/arch name even if they are for/require v3). So e.g perhaps in future we could want/need to add linux/arm64/v9 in addition to linux/arm64 (or linux/arm64/v8) if we ever wanted to publish e.g v8 and v9 aimed images with different content at the same time to support some specific native instruction usages (dont see that happening for a while, personally), but otherwise we would likely just have one version and folks would all still just get the 'linux/arm64' image. Actually, doing some more searching, this issue around the docker buildx stuff suggests that in some cases at least ['linux/arm64/v8' could just result in 'linux/arm64' output without specified variant since its not actually to expectation](https://github.com/moby/buildkit/issues/4039) and comments indicating instead it expects just linux/arm64 or its said it could have been linux/arm/v8 if specifying v8 (i.e no 64 in that syntax). Though another comme