[jira] [Assigned] (ARTEMIS-3831) Scale-down fails when using same discovery-group used by Broker cluster connection

2024-01-10 Thread Justin Bertram (Jira)


 [ 
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

2024-01-10 Thread ASF GitHub Bot (Jira)


 [ 
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

2024-01-10 Thread ASF GitHub Bot (Jira)


 [ 
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

2024-01-10 Thread ASF subversion and git services (Jira)


[ 
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

2024-01-10 Thread ASF subversion and git services (Jira)


[ 
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

2024-01-10 Thread ASF GitHub Bot (Jira)


 [ 
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

2024-01-10 Thread ASF GitHub Bot (Jira)


 [ 
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

2024-01-10 Thread ASF subversion and git services (Jira)


[ 
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

2024-01-10 Thread Robbie Gemmell (Jira)


 [ 
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

2024-01-10 Thread ASF GitHub Bot (Jira)


 [ 
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

2024-01-10 Thread ASF GitHub Bot (Jira)


 [ 
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

2024-01-10 Thread ASF GitHub Bot (Jira)


 [ 
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

2024-01-10 Thread ASF GitHub Bot (Jira)


 [ 
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

2024-01-10 Thread ASF GitHub Bot (Jira)


 [ 
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

2024-01-10 Thread ASF GitHub Bot (Jira)


 [ 
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

2024-01-10 Thread ASF GitHub Bot (Jira)


 [ 
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

2024-01-10 Thread ASF GitHub Bot (Jira)


 [ 
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

2024-01-10 Thread ASF GitHub Bot (Jira)


 [ 
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

2024-01-10 Thread Subhidh Agarwal (Jira)


 [ 
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

2024-01-10 Thread ASF GitHub Bot (Jira)


 [ 
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

2024-01-10 Thread Justin Bertram (Jira)


 [ 
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

2024-01-10 Thread Justin Bertram (Jira)


 [ 
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

2024-01-10 Thread ASF GitHub Bot (Jira)


 [ 
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

2024-01-10 Thread Robbie Gemmell (Jira)


 [ 
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

2024-01-10 Thread ASF GitHub Bot (Jira)


 [ 
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

2024-01-10 Thread ASF subversion and git services (Jira)


[ 
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

2024-01-10 Thread ASF GitHub Bot (Jira)


 [ 
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

2024-01-10 Thread Domenico Francesco Bruscino (Jira)
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

2024-01-10 Thread ASF GitHub Bot (Jira)


 [ 
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

2024-01-10 Thread ASF GitHub Bot (Jira)


 [ 
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

2024-01-10 Thread ASF GitHub Bot (Jira)


 [ 
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

2024-01-10 Thread ASF GitHub Bot (Jira)


 [ 
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

2024-01-10 Thread ASF subversion and git services (Jira)


[ 
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

2024-01-10 Thread Justin Bertram (Jira)


 [ 
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

2024-01-10 Thread Justin Bertram (Jira)


 [ 
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

2024-01-10 Thread Justin Bertram (Jira)


 [ 
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

2024-01-10 Thread Justin Bertram (Jira)


 [ 
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

2024-01-10 Thread Justin Bertram (Jira)


 [ 
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

2024-01-10 Thread Subhidh Agarwal (Jira)
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

2024-01-10 Thread ASF GitHub Bot (Jira)


 [ 
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

2024-01-10 Thread Jira


[ 
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

2024-01-10 Thread Jira


[ 
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

2024-01-10 Thread ASF GitHub Bot (Jira)


 [ 
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

2024-01-10 Thread ASF GitHub Bot (Jira)


 [ 
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

2024-01-10 Thread ASF GitHub Bot (Jira)


 [ 
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

2024-01-10 Thread Gary Tully (Jira)
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

2024-01-10 Thread ASF GitHub Bot (Jira)


 [ 
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