[jira] [Work logged] (ARTEMIS-4774) PageCounters get out of sync after AckManager

2024-05-15 Thread ASF GitHub Bot (Jira)


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

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

Author: ASF GitHub Bot
Created on: 16/May/24 03:28
Start Date: 16/May/24 03:28
Worklog Time Spent: 10m 
  Work Description: clebertsuconic opened a new pull request, #4937:
URL: https://github.com/apache/activemq-artemis/pull/4937

   (no comment)




Issue Time Tracking
---

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

> PageCounters get out of sync after AckManager
> -
>
> Key: ARTEMIS-4774
> URL: https://issues.apache.org/jira/browse/ARTEMIS-4774
> Project: ActiveMQ Artemis
>  Issue Type: Bug
>Reporter: Clebert Suconic
>Assignee: Clebert Suconic
>Priority: Major
> Fix For: 2.34.0
>
>  Time Spent: 10m
>  Remaining Estimate: 0h
>




--
This message was sent by Atlassian Jira
(v8.20.10#820010)


[jira] [Commented] (ARTEMIS-4774) PageCounters get out of sync after AckManager

2024-05-15 Thread Clebert Suconic (Jira)


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

Clebert Suconic commented on ARTEMIS-4774:
--

The AckManager is leaving the PageCounters out of sync.
The issue is that the counters were using delivered counts from paging in the 
calculation, however the Ackmanager is not actually fetching data in certain 
retries.

To fix this I'm splitting some of the metrics between Paged and NonPaged 
counters, and removing the need to discount deliveries.


also there's some hardening on AckManager and Mirror while fixing this issue

> PageCounters get out of sync after AckManager
> -
>
> Key: ARTEMIS-4774
> URL: https://issues.apache.org/jira/browse/ARTEMIS-4774
> Project: ActiveMQ Artemis
>  Issue Type: Bug
>Reporter: Clebert Suconic
>Assignee: Clebert Suconic
>Priority: Major
> Fix For: 2.34.0
>
>




--
This message was sent by Atlassian Jira
(v8.20.10#820010)


[jira] [Created] (ARTEMIS-4774) PageCounters get out of sync after AckManager

2024-05-15 Thread Clebert Suconic (Jira)
Clebert Suconic created ARTEMIS-4774:


 Summary: PageCounters get out of sync after AckManager
 Key: ARTEMIS-4774
 URL: https://issues.apache.org/jira/browse/ARTEMIS-4774
 Project: ActiveMQ Artemis
  Issue Type: Bug
Reporter: Clebert Suconic
Assignee: Clebert Suconic
 Fix For: 2.34.0






--
This message was sent by Atlassian Jira
(v8.20.10#820010)


[jira] [Created] (ARTEMIS-4773) Performance improvement on page.sync

2024-05-15 Thread Clebert Suconic (Jira)
Clebert Suconic created ARTEMIS-4773:


 Summary: Performance improvement on page.sync
 Key: ARTEMIS-4773
 URL: https://issues.apache.org/jira/browse/ARTEMIS-4773
 Project: ActiveMQ Artemis
  Issue Type: Improvement
Reporter: Clebert Suconic


PagingStoreImpl::ioSync is holding a readWriteLock while calling sync:

https://github.com/apache/activemq-artemis/blob/c523458a9aa4f67ad0e9bdbc5c4733bc88bf55f6/artemis-server/src/main/java/org/apache/activemq/artemis/core/paging/impl/PagingStoreImpl.java#L516-L529

However that's causing a contention on adding new data:

  at jdk.internal.misc.Unsafe.park(java.base@17.0.11/Native Method)
- parking to wait for  <0x8087a170> (a 
java.util.concurrent.locks.ReentrantReadWriteLock$NonfairSync)
at 
java.util.concurrent.locks.LockSupport.park(java.base@17.0.11/LockSupport.java:211)
at 
java.util.concurrent.locks.AbstractQueuedSynchronizer.acquire(java.base@17.0.11/AbstractQueuedSynchronizer.java:715)
at 
java.util.concurrent.locks.AbstractQueuedSynchronizer.acquire(java.base@17.0.11/AbstractQueuedSynchronizer.java:938)
at 
java.util.concurrent.locks.ReentrantReadWriteLock$WriteLock.lock(java.base@17.0.11/ReentrantReadWriteLock.java:959)
at 
org.apache.activemq.artemis.core.paging.impl.PagingStoreImpl.writePage(PagingStoreImpl.java:1249)
at 
org.apache.activemq.artemis.core.paging.impl.PagingStoreImpl.page(PagingStoreImpl.java:1242)
at 
org.apache.activemq.artemis.core.paging.impl.PagingStoreImpl.page(PagingStoreImpl.java:1173)
at 
org.apache.activemq.artemis.core.persistence.impl.journal.AbstractJournalStorageManager.addToPage(AbstractJournalStorageManager.java:2256


To fix that I'm going to remove the sync from the readWriteLock. and Ignore an 
alreadyClosedException.


I tested this, and also an user and the improvement was significant, especially 
with a slower device (that's actually more common on cloud providers these 
days).





--
This message was sent by Atlassian Jira
(v8.20.10#820010)


[jira] [Work logged] (ARTEMIS-4771) NPE between AMQPLargeMessageWriter::tryDelivering and resetClose

2024-05-15 Thread ASF GitHub Bot (Jira)


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

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

Author: ASF GitHub Bot
Created on: 15/May/24 23:21
Start Date: 15/May/24 23:21
Worklog Time Spent: 10m 
  Work Description: clebertsuconic commented on code in PR #4932:
URL: https://github.com/apache/activemq-artemis/pull/4932#discussion_r1602361845


##
artemis-protocols/artemis-amqp-protocol/src/main/java/org/apache/activemq/artemis/protocol/amqp/proton/AMQPLargeMessageWriter.java:
##
@@ -170,16 +170,26 @@ private void resume() {
}
 
private void tryDelivering() {
+
+  final Delivery localDelivery = delivery;
+  final MessageReference localReference = reference;
+  final LargeBodyReader localBodyReader = largeBodyReader;
+
+  if (localDelivery == null || localReference == null || localBodyReader 
== null) {
+ logger.debug("Write got closed before tryDelivering was called");
+ return;
+  }

Review Comment:
   I don't want to introduce any performance issue. I would prefer going safe.  
   
   





Issue Time Tracking
---

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

> NPE between AMQPLargeMessageWriter::tryDelivering and resetClose
> 
>
> Key: ARTEMIS-4771
> URL: https://issues.apache.org/jira/browse/ARTEMIS-4771
> Project: ActiveMQ Artemis
>  Issue Type: Bug
>Reporter: Clebert Suconic
>Priority: Major
>  Time Spent: 1.5h
>  Remaining Estimate: 0h
>
> This is using RedHat's bits:
> java.lang.NullPointerException: Cannot invoke 
> "org.apache.qpid.proton.engine.Delivery.getTag()" because "this.delivery" is 
> null
> at 
> org.apache.activemq.artemis.protocol.amqp.proton.AMQPLargeMessageWriter.tryDelivering(AMQPLargeMessageWriter.java:174)
>  ~[artemis-amqp-protocol-2.33.0.redhat-9.jar:2.33.0.redhat-9]
> at 
> io.netty.util.concurrent.AbstractEventExecutor.runTask(AbstractEventExecutor.java:173)
>  ~[netty-common-4.1.108.Final-redhat-1.jar:4.1.108.Final-redhat-1]
> at 
> io.netty.util.concurrent.AbstractEventExecutor.safeExecute(AbstractEventExecutor.java:166)
>  [netty-common-4.1.108.Final-redhat-1.jar:4.1.108.Final-redhat-1]
> at 
> io.netty.util.concurrent.SingleThreadEventExecutor.runAllTasks(SingleThreadEventExecutor.java:470)
>  [netty-common-4.1.108.Final-redhat-1.jar:4.1.108.Final-redhat-1]
> at io.netty.channel.epoll.EpollEventLoop.run(EpollEventLoop.java:413) 
> [netty-transport-classes-epoll-4.1.108.Final-redhat-1.jar:4.1.108.Final-redhat-1]
> at 
> io.netty.util.concurrent.SingleThreadEventExecutor$4.run(SingleThreadEventExecutor.java:997)
>  [netty-common-4.1.108.Final-redhat-1.jar:4.1.108.Final-redhat-1]
> at 
> io.netty.util.internal.ThreadExecutorMap$2.run(ThreadExecutorMap.java:74) 
> [netty-common-4.1.108.Final-redhat-1.jar:4.1.108.Final-redhat-1]
> at 
> org.apache.activemq.artemis.utils.ActiveMQThreadFactory$1.run(ActiveMQThreadFactory.java:118)
>  [artemis-commons-2.33.0.redhat-9.jar:2.33.0.redhat-9]



--
This message was sent by Atlassian Jira
(v8.20.10#820010)


[jira] [Work logged] (ARTEMIS-4771) NPE between AMQPLargeMessageWriter::tryDelivering and resetClose

2024-05-15 Thread ASF GitHub Bot (Jira)


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

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

Author: ASF GitHub Bot
Created on: 15/May/24 23:17
Start Date: 15/May/24 23:17
Worklog Time Spent: 10m 
  Work Description: tabish121 commented on code in PR #4932:
URL: https://github.com/apache/activemq-artemis/pull/4932#discussion_r1602358744


##
artemis-protocols/artemis-amqp-protocol/src/main/java/org/apache/activemq/artemis/protocol/amqp/proton/AMQPLargeMessageWriter.java:
##
@@ -170,16 +170,26 @@ private void resume() {
}
 
private void tryDelivering() {
+
+  final Delivery localDelivery = delivery;
+  final MessageReference localReference = reference;
+  final LargeBodyReader localBodyReader = largeBodyReader;
+
+  if (localDelivery == null || localReference == null || localBodyReader 
== null) {
+ logger.debug("Write got closed before tryDelivering was called");
+ return;
+  }

Review Comment:
   I don't see how not throwing an NPE due to thread synchronization issues 
isn't best solved by proper thread synchronization...
   
   With the current fix it could continue writing after the close if the close 
is happening on another thread than the write as the values being checked 
aren't synced on a barrier so they could be non-null for more than one 
execution until a cache flush is forced by some other barrier. It might not NPE 
now but it still isn't guaranteed to stop when you intended it to. 





Issue Time Tracking
---

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

> NPE between AMQPLargeMessageWriter::tryDelivering and resetClose
> 
>
> Key: ARTEMIS-4771
> URL: https://issues.apache.org/jira/browse/ARTEMIS-4771
> Project: ActiveMQ Artemis
>  Issue Type: Bug
>Reporter: Clebert Suconic
>Priority: Major
>  Time Spent: 1h 20m
>  Remaining Estimate: 0h
>
> This is using RedHat's bits:
> java.lang.NullPointerException: Cannot invoke 
> "org.apache.qpid.proton.engine.Delivery.getTag()" because "this.delivery" is 
> null
> at 
> org.apache.activemq.artemis.protocol.amqp.proton.AMQPLargeMessageWriter.tryDelivering(AMQPLargeMessageWriter.java:174)
>  ~[artemis-amqp-protocol-2.33.0.redhat-9.jar:2.33.0.redhat-9]
> at 
> io.netty.util.concurrent.AbstractEventExecutor.runTask(AbstractEventExecutor.java:173)
>  ~[netty-common-4.1.108.Final-redhat-1.jar:4.1.108.Final-redhat-1]
> at 
> io.netty.util.concurrent.AbstractEventExecutor.safeExecute(AbstractEventExecutor.java:166)
>  [netty-common-4.1.108.Final-redhat-1.jar:4.1.108.Final-redhat-1]
> at 
> io.netty.util.concurrent.SingleThreadEventExecutor.runAllTasks(SingleThreadEventExecutor.java:470)
>  [netty-common-4.1.108.Final-redhat-1.jar:4.1.108.Final-redhat-1]
> at io.netty.channel.epoll.EpollEventLoop.run(EpollEventLoop.java:413) 
> [netty-transport-classes-epoll-4.1.108.Final-redhat-1.jar:4.1.108.Final-redhat-1]
> at 
> io.netty.util.concurrent.SingleThreadEventExecutor$4.run(SingleThreadEventExecutor.java:997)
>  [netty-common-4.1.108.Final-redhat-1.jar:4.1.108.Final-redhat-1]
> at 
> io.netty.util.internal.ThreadExecutorMap$2.run(ThreadExecutorMap.java:74) 
> [netty-common-4.1.108.Final-redhat-1.jar:4.1.108.Final-redhat-1]
> at 
> org.apache.activemq.artemis.utils.ActiveMQThreadFactory$1.run(ActiveMQThreadFactory.java:118)
>  [artemis-commons-2.33.0.redhat-9.jar:2.33.0.redhat-9]



--
This message was sent by Atlassian Jira
(v8.20.10#820010)


[jira] [Work logged] (ARTEMIS-4771) NPE between AMQPLargeMessageWriter::tryDelivering and resetClose

2024-05-15 Thread ASF GitHub Bot (Jira)


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

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

Author: ASF GitHub Bot
Created on: 15/May/24 23:05
Start Date: 15/May/24 23:05
Worklog Time Spent: 10m 
  Work Description: clebertsuconic commented on code in PR #4932:
URL: https://github.com/apache/activemq-artemis/pull/4932#discussion_r1602351080


##
artemis-protocols/artemis-amqp-protocol/src/main/java/org/apache/activemq/artemis/protocol/amqp/proton/AMQPLargeMessageWriter.java:
##
@@ -170,16 +170,26 @@ private void resume() {
}
 
private void tryDelivering() {
+
+  final Delivery localDelivery = delivery;
+  final MessageReference localReference = reference;
+  final LargeBodyReader localBodyReader = largeBodyReader;
+
+  if (localDelivery == null || localReference == null || localBodyReader 
== null) {
+ logger.debug("Write got closed before tryDelivering was called");
+ return;
+  }

Review Comment:
   The goal is to not Throw a npe.  Not needed synchronization for that. 





Issue Time Tracking
---

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

> NPE between AMQPLargeMessageWriter::tryDelivering and resetClose
> 
>
> Key: ARTEMIS-4771
> URL: https://issues.apache.org/jira/browse/ARTEMIS-4771
> Project: ActiveMQ Artemis
>  Issue Type: Bug
>Reporter: Clebert Suconic
>Priority: Major
>  Time Spent: 1h 10m
>  Remaining Estimate: 0h
>
> This is using RedHat's bits:
> java.lang.NullPointerException: Cannot invoke 
> "org.apache.qpid.proton.engine.Delivery.getTag()" because "this.delivery" is 
> null
> at 
> org.apache.activemq.artemis.protocol.amqp.proton.AMQPLargeMessageWriter.tryDelivering(AMQPLargeMessageWriter.java:174)
>  ~[artemis-amqp-protocol-2.33.0.redhat-9.jar:2.33.0.redhat-9]
> at 
> io.netty.util.concurrent.AbstractEventExecutor.runTask(AbstractEventExecutor.java:173)
>  ~[netty-common-4.1.108.Final-redhat-1.jar:4.1.108.Final-redhat-1]
> at 
> io.netty.util.concurrent.AbstractEventExecutor.safeExecute(AbstractEventExecutor.java:166)
>  [netty-common-4.1.108.Final-redhat-1.jar:4.1.108.Final-redhat-1]
> at 
> io.netty.util.concurrent.SingleThreadEventExecutor.runAllTasks(SingleThreadEventExecutor.java:470)
>  [netty-common-4.1.108.Final-redhat-1.jar:4.1.108.Final-redhat-1]
> at io.netty.channel.epoll.EpollEventLoop.run(EpollEventLoop.java:413) 
> [netty-transport-classes-epoll-4.1.108.Final-redhat-1.jar:4.1.108.Final-redhat-1]
> at 
> io.netty.util.concurrent.SingleThreadEventExecutor$4.run(SingleThreadEventExecutor.java:997)
>  [netty-common-4.1.108.Final-redhat-1.jar:4.1.108.Final-redhat-1]
> at 
> io.netty.util.internal.ThreadExecutorMap$2.run(ThreadExecutorMap.java:74) 
> [netty-common-4.1.108.Final-redhat-1.jar:4.1.108.Final-redhat-1]
> at 
> org.apache.activemq.artemis.utils.ActiveMQThreadFactory$1.run(ActiveMQThreadFactory.java:118)
>  [artemis-commons-2.33.0.redhat-9.jar:2.33.0.redhat-9]



--
This message was sent by Atlassian Jira
(v8.20.10#820010)


[jira] [Work logged] (ARTEMIS-4771) NPE between AMQPLargeMessageWriter::tryDelivering and resetClose

2024-05-15 Thread ASF GitHub Bot (Jira)


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

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

Author: ASF GitHub Bot
Created on: 15/May/24 23:02
Start Date: 15/May/24 23:02
Worklog Time Spent: 10m 
  Work Description: tabish121 commented on code in PR #4932:
URL: https://github.com/apache/activemq-artemis/pull/4932#discussion_r1602349518


##
artemis-protocols/artemis-amqp-protocol/src/main/java/org/apache/activemq/artemis/protocol/amqp/proton/AMQPLargeMessageWriter.java:
##
@@ -170,16 +170,26 @@ private void resume() {
}
 
private void tryDelivering() {
+
+  final Delivery localDelivery = delivery;
+  final MessageReference localReference = reference;
+  final LargeBodyReader localBodyReader = largeBodyReader;
+
+  if (localDelivery == null || localReference == null || localBodyReader 
== null) {
+ logger.debug("Write got closed before tryDelivering was called");
+ return;
+  }

Review Comment:
   So why not just add synchronization if your goal is to make the code thread 
safe?  





Issue Time Tracking
---

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

> NPE between AMQPLargeMessageWriter::tryDelivering and resetClose
> 
>
> Key: ARTEMIS-4771
> URL: https://issues.apache.org/jira/browse/ARTEMIS-4771
> Project: ActiveMQ Artemis
>  Issue Type: Bug
>Reporter: Clebert Suconic
>Priority: Major
>  Time Spent: 1h
>  Remaining Estimate: 0h
>
> This is using RedHat's bits:
> java.lang.NullPointerException: Cannot invoke 
> "org.apache.qpid.proton.engine.Delivery.getTag()" because "this.delivery" is 
> null
> at 
> org.apache.activemq.artemis.protocol.amqp.proton.AMQPLargeMessageWriter.tryDelivering(AMQPLargeMessageWriter.java:174)
>  ~[artemis-amqp-protocol-2.33.0.redhat-9.jar:2.33.0.redhat-9]
> at 
> io.netty.util.concurrent.AbstractEventExecutor.runTask(AbstractEventExecutor.java:173)
>  ~[netty-common-4.1.108.Final-redhat-1.jar:4.1.108.Final-redhat-1]
> at 
> io.netty.util.concurrent.AbstractEventExecutor.safeExecute(AbstractEventExecutor.java:166)
>  [netty-common-4.1.108.Final-redhat-1.jar:4.1.108.Final-redhat-1]
> at 
> io.netty.util.concurrent.SingleThreadEventExecutor.runAllTasks(SingleThreadEventExecutor.java:470)
>  [netty-common-4.1.108.Final-redhat-1.jar:4.1.108.Final-redhat-1]
> at io.netty.channel.epoll.EpollEventLoop.run(EpollEventLoop.java:413) 
> [netty-transport-classes-epoll-4.1.108.Final-redhat-1.jar:4.1.108.Final-redhat-1]
> at 
> io.netty.util.concurrent.SingleThreadEventExecutor$4.run(SingleThreadEventExecutor.java:997)
>  [netty-common-4.1.108.Final-redhat-1.jar:4.1.108.Final-redhat-1]
> at 
> io.netty.util.internal.ThreadExecutorMap$2.run(ThreadExecutorMap.java:74) 
> [netty-common-4.1.108.Final-redhat-1.jar:4.1.108.Final-redhat-1]
> at 
> org.apache.activemq.artemis.utils.ActiveMQThreadFactory$1.run(ActiveMQThreadFactory.java:118)
>  [artemis-commons-2.33.0.redhat-9.jar:2.33.0.redhat-9]



--
This message was sent by Atlassian Jira
(v8.20.10#820010)


[jira] [Work logged] (ARTEMIS-4771) NPE between AMQPLargeMessageWriter::tryDelivering and resetClose

2024-05-15 Thread ASF GitHub Bot (Jira)


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

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

Author: ASF GitHub Bot
Created on: 15/May/24 22:10
Start Date: 15/May/24 22:10
Worklog Time Spent: 10m 
  Work Description: clebertsuconic commented on code in PR #4932:
URL: https://github.com/apache/activemq-artemis/pull/4932#discussion_r1602306503


##
artemis-protocols/artemis-amqp-protocol/src/main/java/org/apache/activemq/artemis/protocol/amqp/proton/AMQPLargeMessageWriter.java:
##
@@ -170,16 +170,26 @@ private void resume() {
}
 
private void tryDelivering() {
+
+  final Delivery localDelivery = delivery;
+  final MessageReference localReference = reference;
+  final LargeBodyReader localBodyReader = largeBodyReader;
+
+  if (localDelivery == null || localReference == null || localBodyReader 
== null) {
+ logger.debug("Write got closed before tryDelivering was called");
+ return;
+  }

Review Comment:
   
https://github.com/apache/activemq-artemis/blob/14e83faa1bf5523d63755ec54f42cbc1d21affc6/artemis-protocols/artemis-amqp-protocol/src/main/java/org/apache/activemq/artemis/protocol/amqp/proton/AMQPLargeMessageWriter.java#L126-L134
   
   
   so.. one thread is in resetClose.. another thread is on the tryDeliver...
   
   
   closed is only set to true at the end of the statement...
   
   as a result you could the NPE.
   
   
   you may say set closed first...but still I don't feel like this is 
completely atomic without added synchronization... however I don't want 
synchrnoization here.. just a local copy and checking it should be enough for 
me.
   
   
   I plan to add a test on this.





Issue Time Tracking
---

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

> NPE between AMQPLargeMessageWriter::tryDelivering and resetClose
> 
>
> Key: ARTEMIS-4771
> URL: https://issues.apache.org/jira/browse/ARTEMIS-4771
> Project: ActiveMQ Artemis
>  Issue Type: Bug
>Reporter: Clebert Suconic
>Priority: Major
>  Time Spent: 50m
>  Remaining Estimate: 0h
>
> This is using RedHat's bits:
> java.lang.NullPointerException: Cannot invoke 
> "org.apache.qpid.proton.engine.Delivery.getTag()" because "this.delivery" is 
> null
> at 
> org.apache.activemq.artemis.protocol.amqp.proton.AMQPLargeMessageWriter.tryDelivering(AMQPLargeMessageWriter.java:174)
>  ~[artemis-amqp-protocol-2.33.0.redhat-9.jar:2.33.0.redhat-9]
> at 
> io.netty.util.concurrent.AbstractEventExecutor.runTask(AbstractEventExecutor.java:173)
>  ~[netty-common-4.1.108.Final-redhat-1.jar:4.1.108.Final-redhat-1]
> at 
> io.netty.util.concurrent.AbstractEventExecutor.safeExecute(AbstractEventExecutor.java:166)
>  [netty-common-4.1.108.Final-redhat-1.jar:4.1.108.Final-redhat-1]
> at 
> io.netty.util.concurrent.SingleThreadEventExecutor.runAllTasks(SingleThreadEventExecutor.java:470)
>  [netty-common-4.1.108.Final-redhat-1.jar:4.1.108.Final-redhat-1]
> at io.netty.channel.epoll.EpollEventLoop.run(EpollEventLoop.java:413) 
> [netty-transport-classes-epoll-4.1.108.Final-redhat-1.jar:4.1.108.Final-redhat-1]
> at 
> io.netty.util.concurrent.SingleThreadEventExecutor$4.run(SingleThreadEventExecutor.java:997)
>  [netty-common-4.1.108.Final-redhat-1.jar:4.1.108.Final-redhat-1]
> at 
> io.netty.util.internal.ThreadExecutorMap$2.run(ThreadExecutorMap.java:74) 
> [netty-common-4.1.108.Final-redhat-1.jar:4.1.108.Final-redhat-1]
> at 
> org.apache.activemq.artemis.utils.ActiveMQThreadFactory$1.run(ActiveMQThreadFactory.java:118)
>  [artemis-commons-2.33.0.redhat-9.jar:2.33.0.redhat-9]



--
This message was sent by Atlassian Jira
(v8.20.10#820010)


[jira] [Work logged] (ARTEMIS-4771) NPE between AMQPLargeMessageWriter::tryDelivering and resetClose

2024-05-15 Thread ASF GitHub Bot (Jira)


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

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

Author: ASF GitHub Bot
Created on: 15/May/24 22:08
Start Date: 15/May/24 22:08
Worklog Time Spent: 10m 
  Work Description: clebertsuconic commented on code in PR #4932:
URL: https://github.com/apache/activemq-artemis/pull/4932#discussion_r1602304910


##
artemis-protocols/artemis-amqp-protocol/src/main/java/org/apache/activemq/artemis/protocol/amqp/proton/AMQPLargeMessageWriter.java:
##
@@ -170,16 +170,26 @@ private void resume() {
}
 
private void tryDelivering() {
+
+  final Delivery localDelivery = delivery;
+  final MessageReference localReference = reference;
+  final LargeBodyReader localBodyReader = largeBodyReader;
+
+  if (localDelivery == null || localReference == null || localBodyReader 
== null) {
+ logger.debug("Write got closed before tryDelivering was called");
+ return;
+  }

Review Comment:
   If I checked just closed, I guess you could still hit the NPE. You could 
check the closed variable.. but I don't know how to get rid of the possible NPE 
here without adding synchronization.
   
   The NPE will be just an annoyance since it's closing anyway.. but I was 
asked to mitigate the NPE.





Issue Time Tracking
---

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

> NPE between AMQPLargeMessageWriter::tryDelivering and resetClose
> 
>
> Key: ARTEMIS-4771
> URL: https://issues.apache.org/jira/browse/ARTEMIS-4771
> Project: ActiveMQ Artemis
>  Issue Type: Bug
>Reporter: Clebert Suconic
>Priority: Major
>  Time Spent: 40m
>  Remaining Estimate: 0h
>
> This is using RedHat's bits:
> java.lang.NullPointerException: Cannot invoke 
> "org.apache.qpid.proton.engine.Delivery.getTag()" because "this.delivery" is 
> null
> at 
> org.apache.activemq.artemis.protocol.amqp.proton.AMQPLargeMessageWriter.tryDelivering(AMQPLargeMessageWriter.java:174)
>  ~[artemis-amqp-protocol-2.33.0.redhat-9.jar:2.33.0.redhat-9]
> at 
> io.netty.util.concurrent.AbstractEventExecutor.runTask(AbstractEventExecutor.java:173)
>  ~[netty-common-4.1.108.Final-redhat-1.jar:4.1.108.Final-redhat-1]
> at 
> io.netty.util.concurrent.AbstractEventExecutor.safeExecute(AbstractEventExecutor.java:166)
>  [netty-common-4.1.108.Final-redhat-1.jar:4.1.108.Final-redhat-1]
> at 
> io.netty.util.concurrent.SingleThreadEventExecutor.runAllTasks(SingleThreadEventExecutor.java:470)
>  [netty-common-4.1.108.Final-redhat-1.jar:4.1.108.Final-redhat-1]
> at io.netty.channel.epoll.EpollEventLoop.run(EpollEventLoop.java:413) 
> [netty-transport-classes-epoll-4.1.108.Final-redhat-1.jar:4.1.108.Final-redhat-1]
> at 
> io.netty.util.concurrent.SingleThreadEventExecutor$4.run(SingleThreadEventExecutor.java:997)
>  [netty-common-4.1.108.Final-redhat-1.jar:4.1.108.Final-redhat-1]
> at 
> io.netty.util.internal.ThreadExecutorMap$2.run(ThreadExecutorMap.java:74) 
> [netty-common-4.1.108.Final-redhat-1.jar:4.1.108.Final-redhat-1]
> at 
> org.apache.activemq.artemis.utils.ActiveMQThreadFactory$1.run(ActiveMQThreadFactory.java:118)
>  [artemis-commons-2.33.0.redhat-9.jar:2.33.0.redhat-9]



--
This message was sent by Atlassian Jira
(v8.20.10#820010)


[jira] [Work logged] (ARTEMIS-4771) NPE between AMQPLargeMessageWriter::tryDelivering and resetClose

2024-05-15 Thread ASF GitHub Bot (Jira)


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

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

Author: ASF GitHub Bot
Created on: 15/May/24 18:22
Start Date: 15/May/24 18:22
Worklog Time Spent: 10m 
  Work Description: tabish121 commented on code in PR #4932:
URL: https://github.com/apache/activemq-artemis/pull/4932#discussion_r1602074233


##
artemis-protocols/artemis-amqp-protocol/src/main/java/org/apache/activemq/artemis/protocol/amqp/proton/AMQPLargeMessageWriter.java:
##
@@ -170,16 +170,26 @@ private void resume() {
}
 
private void tryDelivering() {
+
+  final Delivery localDelivery = delivery;
+  final MessageReference localReference = reference;
+  final LargeBodyReader localBodyReader = largeBodyReader;
+
+  if (localDelivery == null || localReference == null || localBodyReader 
== null) {
+ logger.debug("Write got closed before tryDelivering was called");
+ return;
+  }

Review Comment:
   That would make more sense as the closed indicator is the only volatile in 
the mix and would generally convey the state in a timely manner.  Copying the 
other resources local is fine but doesn't pass a barrier so they still aren't 
the best indicator of closedness.





Issue Time Tracking
---

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

> NPE between AMQPLargeMessageWriter::tryDelivering and resetClose
> 
>
> Key: ARTEMIS-4771
> URL: https://issues.apache.org/jira/browse/ARTEMIS-4771
> Project: ActiveMQ Artemis
>  Issue Type: Bug
>Reporter: Clebert Suconic
>Priority: Major
>  Time Spent: 0.5h
>  Remaining Estimate: 0h
>
> This is using RedHat's bits:
> java.lang.NullPointerException: Cannot invoke 
> "org.apache.qpid.proton.engine.Delivery.getTag()" because "this.delivery" is 
> null
> at 
> org.apache.activemq.artemis.protocol.amqp.proton.AMQPLargeMessageWriter.tryDelivering(AMQPLargeMessageWriter.java:174)
>  ~[artemis-amqp-protocol-2.33.0.redhat-9.jar:2.33.0.redhat-9]
> at 
> io.netty.util.concurrent.AbstractEventExecutor.runTask(AbstractEventExecutor.java:173)
>  ~[netty-common-4.1.108.Final-redhat-1.jar:4.1.108.Final-redhat-1]
> at 
> io.netty.util.concurrent.AbstractEventExecutor.safeExecute(AbstractEventExecutor.java:166)
>  [netty-common-4.1.108.Final-redhat-1.jar:4.1.108.Final-redhat-1]
> at 
> io.netty.util.concurrent.SingleThreadEventExecutor.runAllTasks(SingleThreadEventExecutor.java:470)
>  [netty-common-4.1.108.Final-redhat-1.jar:4.1.108.Final-redhat-1]
> at io.netty.channel.epoll.EpollEventLoop.run(EpollEventLoop.java:413) 
> [netty-transport-classes-epoll-4.1.108.Final-redhat-1.jar:4.1.108.Final-redhat-1]
> at 
> io.netty.util.concurrent.SingleThreadEventExecutor$4.run(SingleThreadEventExecutor.java:997)
>  [netty-common-4.1.108.Final-redhat-1.jar:4.1.108.Final-redhat-1]
> at 
> io.netty.util.internal.ThreadExecutorMap$2.run(ThreadExecutorMap.java:74) 
> [netty-common-4.1.108.Final-redhat-1.jar:4.1.108.Final-redhat-1]
> at 
> org.apache.activemq.artemis.utils.ActiveMQThreadFactory$1.run(ActiveMQThreadFactory.java:118)
>  [artemis-commons-2.33.0.redhat-9.jar:2.33.0.redhat-9]



--
This message was sent by Atlassian Jira
(v8.20.10#820010)


[jira] [Work logged] (ARTEMIS-3622) MQTT can deadlock on client connection / disconnection

2024-05-15 Thread ASF GitHub Bot (Jira)


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

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

Author: ASF GitHub Bot
Created on: 15/May/24 17:37
Start Date: 15/May/24 17:37
Worklog Time Spent: 10m 
  Work Description: gemmellr commented on code in PR #4909:
URL: https://github.com/apache/activemq-artemis/pull/4909#discussion_r1602019436


##
artemis-protocols/artemis-mqtt-protocol/src/main/java/org/apache/activemq/artemis/core/protocol/mqtt/MQTTConnectionManager.java:
##
@@ -176,33 +174,27 @@ ServerSessionImpl createServerSession(String username, 
String password, String v
   return (ServerSessionImpl) serverSession;
}
 
-   void disconnect(boolean failure) {
+   synchronized void disconnect(boolean failure) {
   if (session == null || session.getStopped()) {
  return;
   }
 
-  synchronized (session.getState()) {

Review Comment:
   This seems fine in terms of protecting the connect+disconnect calls similar 
to before...but, are there other areas synchronising on and accessing or 
manipulating the session state that might no longer be protected as before that 
still need to be?





Issue Time Tracking
---

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

> MQTT can deadlock on client connection / disconnection
> --
>
> Key: ARTEMIS-3622
> URL: https://issues.apache.org/jira/browse/ARTEMIS-3622
> Project: ActiveMQ Artemis
>  Issue Type: Bug
>  Components: MQTT
>Affects Versions: 2.19.0
> Environment: Using the latest java 17 and artemis 2.19 but looking at 
> the code, it should affect 2.20 as well.
>Reporter: Marcelo Takeshi Fukushima
>Assignee: Justin Bertram
>Priority: Major
>  Time Spent: 20m
>  Remaining Estimate: 0h
>
> It seems that the {{MQTTProtocolHandler}} and {{MQTTConnectionManager}} are 
> on a racing condition and can deadlock themselves on misbehaving clients. I'm 
> including the relevant stack trace (ignore thread 11 that is just waiting for 
> the lock).
> Looking at the relevant code, it seems that the clean-up thread (88 on the 
> {{{}MQTTFailureListener{}}}) starts cleaning up the session state and then 
> the session, but when {{MQTTSession.stop}} calls 
> {{{}MQTTSessionState.clear{}}}, the session state is no longer the same (a 
> racy connection has replaced the session state with a brand new under the 
> same client-id).
> I think the methods connect and disconnect on the {{MQTTConnectionManager}} 
> could be marked as synchronized as a whole, to prevent racy connects / 
> disconnects (but since I don't know all the ins and outs of the code, you 
> guys might have a better fix).
> {noformat}
> Found one Java-level deadlock:
> =
> "Thread-11 
> (ActiveMQ-server-org.apache.activemq.artemis.core.server.impl.ActiveMQServerImpl$6@640f11a1)":
>   waiting to lock monitor 0x7f6d003368c0 (object 0x00045f29f240, a 
> org.apache.activemq.artemis.core.protocol.mqtt.MQTTSessionState),
>   which is held by "Thread-24 
> (ActiveMQ-server-org.apache.activemq.artemis.core.server.impl.ActiveMQServerImpl$6@640f11a1)"
> "Thread-24 
> (ActiveMQ-server-org.apache.activemq.artemis.core.server.impl.ActiveMQServerImpl$6@640f11a1)":
>   waiting to lock monitor 0x7f6d00336a80 (object 0x00045f2a1068, a 
> org.apache.activemq.artemis.core.protocol.mqtt.MQTTSession),
>   which is held by "Thread-88 
> (ActiveMQ-remoting-threads-ActiveMQServerImpl::name=0.0.0.0-212232499)"
> "Thread-88 
> (ActiveMQ-remoting-threads-ActiveMQServerImpl::name=0.0.0.0-212232499)":
>   waiting to lock monitor 0x7f6d003368c0 (object 0x00045f29f240, a 
> org.apache.activemq.artemis.core.protocol.mqtt.MQTTSessionState),
>   which is held by "Thread-24 
> (ActiveMQ-server-org.apache.activemq.artemis.core.server.impl.ActiveMQServerImpl$6@640f11a1)"
> Java stack information for the threads listed above:
> ===
> "Thread-11 
> (ActiveMQ-server-org.apache.activemq.artemis.core.server.impl.ActiveMQServerImpl$6@640f11a1)":
>   at 
> org.apache.activemq.artemis.core.protocol.mqtt.MQTTConnectionManager.disconnect(MQTTConnectionManager.java:150)
>   - waiting to lock <0x00045f29f240> (a 
> org.apache.activemq.artemis.core.protocol.mqtt.MQTTSessionState)
>   at 
> org.apache.activemq.artemis.core.protocol.mqtt.MQTTFailureListener.connectionFailed(MQTTFailureListener.java:37)
>   at 
> org.apache.activemq.artemis.core.protocol.mqtt.MQTTConnection.fail(MQTTConnection.java:150)
>   at 
> org.apache.activemq.artemis.core.remoting.server.impl.RemotingServiceImpl$FailureCheckAndFlushThread$2.run

[jira] [Work logged] (ARTEMIS-4771) NPE between AMQPLargeMessageWriter::tryDelivering and resetClose

2024-05-15 Thread ASF GitHub Bot (Jira)


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

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

Author: ASF GitHub Bot
Created on: 15/May/24 17:12
Start Date: 15/May/24 17:12
Worklog Time Spent: 10m 
  Work Description: gemmellr commented on code in PR #4932:
URL: https://github.com/apache/activemq-artemis/pull/4932#discussion_r1601973117


##
artemis-protocols/artemis-amqp-protocol/src/main/java/org/apache/activemq/artemis/protocol/amqp/proton/AMQPLargeMessageWriter.java:
##
@@ -170,16 +170,26 @@ private void resume() {
}
 
private void tryDelivering() {
+
+  final Delivery localDelivery = delivery;
+  final MessageReference localReference = reference;
+  final LargeBodyReader localBodyReader = largeBodyReader;
+
+  if (localDelivery == null || localReference == null || localBodyReader 
== null) {
+ logger.debug("Write got closed before tryDelivering was called");
+ return;
+  }

Review Comment:
   Cant we just check 'closed' here instead of all these changes and checks?





Issue Time Tracking
---

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

> NPE between AMQPLargeMessageWriter::tryDelivering and resetClose
> 
>
> Key: ARTEMIS-4771
> URL: https://issues.apache.org/jira/browse/ARTEMIS-4771
> Project: ActiveMQ Artemis
>  Issue Type: Bug
>Reporter: Clebert Suconic
>Priority: Major
>  Time Spent: 20m
>  Remaining Estimate: 0h
>
> This is using RedHat's bits:
> java.lang.NullPointerException: Cannot invoke 
> "org.apache.qpid.proton.engine.Delivery.getTag()" because "this.delivery" is 
> null
> at 
> org.apache.activemq.artemis.protocol.amqp.proton.AMQPLargeMessageWriter.tryDelivering(AMQPLargeMessageWriter.java:174)
>  ~[artemis-amqp-protocol-2.33.0.redhat-9.jar:2.33.0.redhat-9]
> at 
> io.netty.util.concurrent.AbstractEventExecutor.runTask(AbstractEventExecutor.java:173)
>  ~[netty-common-4.1.108.Final-redhat-1.jar:4.1.108.Final-redhat-1]
> at 
> io.netty.util.concurrent.AbstractEventExecutor.safeExecute(AbstractEventExecutor.java:166)
>  [netty-common-4.1.108.Final-redhat-1.jar:4.1.108.Final-redhat-1]
> at 
> io.netty.util.concurrent.SingleThreadEventExecutor.runAllTasks(SingleThreadEventExecutor.java:470)
>  [netty-common-4.1.108.Final-redhat-1.jar:4.1.108.Final-redhat-1]
> at io.netty.channel.epoll.EpollEventLoop.run(EpollEventLoop.java:413) 
> [netty-transport-classes-epoll-4.1.108.Final-redhat-1.jar:4.1.108.Final-redhat-1]
> at 
> io.netty.util.concurrent.SingleThreadEventExecutor$4.run(SingleThreadEventExecutor.java:997)
>  [netty-common-4.1.108.Final-redhat-1.jar:4.1.108.Final-redhat-1]
> at 
> io.netty.util.internal.ThreadExecutorMap$2.run(ThreadExecutorMap.java:74) 
> [netty-common-4.1.108.Final-redhat-1.jar:4.1.108.Final-redhat-1]
> at 
> org.apache.activemq.artemis.utils.ActiveMQThreadFactory$1.run(ActiveMQThreadFactory.java:118)
>  [artemis-commons-2.33.0.redhat-9.jar:2.33.0.redhat-9]



--
This message was sent by Atlassian Jira
(v8.20.10#820010)


[jira] [Work logged] (ARTEMIS-4772) Expose registered broker plugin class names in JMX

2024-05-15 Thread ASF GitHub Bot (Jira)


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

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

Author: ASF GitHub Bot
Created on: 15/May/24 14:37
Start Date: 15/May/24 14:37
Worklog Time Spent: 10m 
  Work Description: mnapierajAvSystem opened a new pull request, #4935:
URL: https://github.com/apache/activemq-artemis/pull/4935

   (no comment)




Issue Time Tracking
---

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

> Expose registered broker plugin class names in JMX
> --
>
> Key: ARTEMIS-4772
> URL: https://issues.apache.org/jira/browse/ARTEMIS-4772
> Project: ActiveMQ Artemis
>  Issue Type: Improvement
>  Components: JMX
>Affects Versions: 2.33.0
>Reporter: Marek Napieraj
>Priority: Minor
>  Labels: features, pull-request-available
> Fix For: 2.34.0
>
>  Time Spent: 10m
>  Remaining Estimate: 0h
>
> Make broker plugin class names available as a JMX Attribute for better 
> debug/monitoring of Artemis instances.



--
This message was sent by Atlassian Jira
(v8.20.10#820010)


[jira] [Work logged] (ARTEMIS-4745) Allow configuration of AMQP federation pull consumer batch size

2024-05-15 Thread ASF GitHub Bot (Jira)


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

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

Author: ASF GitHub Bot
Created on: 15/May/24 14:32
Start Date: 15/May/24 14:32
Worklog Time Spent: 10m 
  Work Description: mnapierajAvSystem closed pull request #4934: 
ARTEMIS-4745 Expose registered broker plugin class names as JMX Attribute
URL: https://github.com/apache/activemq-artemis/pull/4934




Issue Time Tracking
---

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

> Allow configuration of AMQP federation pull consumer batch size 
> 
>
> Key: ARTEMIS-4745
> URL: https://issues.apache.org/jira/browse/ARTEMIS-4745
> Project: ActiveMQ Artemis
>  Issue Type: Improvement
>  Components: AMQP
>Affects Versions: 2.33.0
>Reporter: Timothy A. Bish
>Assignee: Timothy A. Bish
>Priority: Minor
> Fix For: 2.34.0
>
>  Time Spent: 1h 10m
>  Remaining Estimate: 0h
>
> When Queue federation receiver links are configured to only pull messages 
> from the remote when local capacity allows it they grant a fixed credit 
> window amount of link credits currently.  In some cases control over this 
> batch size value is beneficial.  We can add an additional configuration 
> property to convey this limit to the federation configuration



--
This message was sent by Atlassian Jira
(v8.20.10#820010)


[jira] [Work logged] (ARTEMIS-4745) Allow configuration of AMQP federation pull consumer batch size

2024-05-15 Thread ASF GitHub Bot (Jira)


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

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

Author: ASF GitHub Bot
Created on: 15/May/24 14:19
Start Date: 15/May/24 14:19
Worklog Time Spent: 10m 
  Work Description: mnapierajAvSystem commented on PR #4934:
URL: 
https://github.com/apache/activemq-artemis/pull/4934#issuecomment-2112680407

   you are absolutely right. Updating commit message will be enough or create a 
branch with proper name and new PR is required?




Issue Time Tracking
---

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

> Allow configuration of AMQP federation pull consumer batch size 
> 
>
> Key: ARTEMIS-4745
> URL: https://issues.apache.org/jira/browse/ARTEMIS-4745
> Project: ActiveMQ Artemis
>  Issue Type: Improvement
>  Components: AMQP
>Affects Versions: 2.33.0
>Reporter: Timothy A. Bish
>Assignee: Timothy A. Bish
>Priority: Minor
> Fix For: 2.34.0
>
>  Time Spent: 1h
>  Remaining Estimate: 0h
>
> When Queue federation receiver links are configured to only pull messages 
> from the remote when local capacity allows it they grant a fixed credit 
> window amount of link credits currently.  In some cases control over this 
> batch size value is beneficial.  We can add an additional configuration 
> property to convey this limit to the federation configuration



--
This message was sent by Atlassian Jira
(v8.20.10#820010)


[jira] [Work logged] (ARTEMIS-4745) Allow configuration of AMQP federation pull consumer batch size

2024-05-15 Thread ASF GitHub Bot (Jira)


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

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

Author: ASF GitHub Bot
Created on: 15/May/24 14:15
Start Date: 15/May/24 14:15
Worklog Time Spent: 10m 
  Work Description: tabish121 commented on PR #4934:
URL: 
https://github.com/apache/activemq-artemis/pull/4934#issuecomment-2112671582

   Seems as though you should be referencing 
[ARTEMIS-4772](https://issues.apache.org/jira/browse/ARTEMIS-4772) in this 
commit.  




Issue Time Tracking
---

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

> Allow configuration of AMQP federation pull consumer batch size 
> 
>
> Key: ARTEMIS-4745
> URL: https://issues.apache.org/jira/browse/ARTEMIS-4745
> Project: ActiveMQ Artemis
>  Issue Type: Improvement
>  Components: AMQP
>Affects Versions: 2.33.0
>Reporter: Timothy A. Bish
>Assignee: Timothy A. Bish
>Priority: Minor
> Fix For: 2.34.0
>
>  Time Spent: 50m
>  Remaining Estimate: 0h
>
> When Queue federation receiver links are configured to only pull messages 
> from the remote when local capacity allows it they grant a fixed credit 
> window amount of link credits currently.  In some cases control over this 
> batch size value is beneficial.  We can add an additional configuration 
> property to convey this limit to the federation configuration



--
This message was sent by Atlassian Jira
(v8.20.10#820010)


[jira] [Work logged] (ARTEMIS-4745) Allow configuration of AMQP federation pull consumer batch size

2024-05-15 Thread ASF GitHub Bot (Jira)


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

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

Author: ASF GitHub Bot
Created on: 15/May/24 14:10
Start Date: 15/May/24 14:10
Worklog Time Spent: 10m 
  Work Description: mnapierajAvSystem opened a new pull request, #4934:
URL: https://github.com/apache/activemq-artemis/pull/4934

   (no comment)




Issue Time Tracking
---

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

> Allow configuration of AMQP federation pull consumer batch size 
> 
>
> Key: ARTEMIS-4745
> URL: https://issues.apache.org/jira/browse/ARTEMIS-4745
> Project: ActiveMQ Artemis
>  Issue Type: Improvement
>  Components: AMQP
>Affects Versions: 2.33.0
>Reporter: Timothy A. Bish
>Assignee: Timothy A. Bish
>Priority: Minor
> Fix For: 2.34.0
>
>  Time Spent: 40m
>  Remaining Estimate: 0h
>
> When Queue federation receiver links are configured to only pull messages 
> from the remote when local capacity allows it they grant a fixed credit 
> window amount of link credits currently.  In some cases control over this 
> batch size value is beneficial.  We can add an additional configuration 
> property to convey this limit to the federation configuration



--
This message was sent by Atlassian Jira
(v8.20.10#820010)


[jira] [Created] (ARTEMIS-4772) Expose registered broker plugin class names in JMX

2024-05-15 Thread Marek Napieraj (Jira)
Marek Napieraj created ARTEMIS-4772:
---

 Summary: Expose registered broker plugin class names in JMX
 Key: ARTEMIS-4772
 URL: https://issues.apache.org/jira/browse/ARTEMIS-4772
 Project: ActiveMQ Artemis
  Issue Type: Improvement
  Components: JMX
Affects Versions: 2.33.0
Reporter: Marek Napieraj
 Fix For: 2.34.0


Make broker plugin class names available as a JMX Attribute for better 
debug/monitoring of Artemis instances.



--
This message was sent by Atlassian Jira
(v8.20.10#820010)


[jira] [Work logged] (ARTEMIS-4680) Upgrade the console to use HawtIO 4

2024-05-15 Thread ASF GitHub Bot (Jira)


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

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

Author: ASF GitHub Bot
Created on: 15/May/24 10:13
Start Date: 15/May/24 10:13
Worklog Time Spent: 10m 
  Work Description: gemmellr merged PR #15:
URL: https://github.com/apache/activemq-artemis-console/pull/15




Issue Time Tracking
---

Worklog Id: (was: 919470)
Time Spent: 10h 40m  (was: 10.5h)

> Upgrade the console to use HawtIO 4
> ---
>
> Key: ARTEMIS-4680
> URL: https://issues.apache.org/jira/browse/ARTEMIS-4680
> Project: ActiveMQ Artemis
>  Issue Type: Improvement
>  Components: Web Console
>Reporter: Andy Taylor
>Assignee: Andy Taylor
>Priority: Major
> Fix For: console-1.0.0
>
>  Time Spent: 10h 40m
>  Remaining Estimate: 0h
>
> The current console is based upon HawtIO 1 which in turn is built on 
> Bootstrap. Bootstrap is old and no longer actively being maintained.
>  
> This improvement is to migrate the current console to use HawtIO 4 which i 
> based on Typescript, react and Patternfly.
>  
> As it can run standalone and be built seperately, this will be released 
> independently from [https://github.com/apache/activemq-artemis-console] and 
> the output later consumed in Artemis releases (similar to artemis-native).



--
This message was sent by Atlassian Jira
(v8.20.10#820010)


[jira] [Work logged] (ARTEMIS-4680) Upgrade the console to use HawtIO 4

2024-05-15 Thread ASF GitHub Bot (Jira)


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

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

Author: ASF GitHub Bot
Created on: 15/May/24 09:22
Start Date: 15/May/24 09:22
Worklog Time Spent: 10m 
  Work Description: andytaylor commented on PR #15:
URL: 
https://github.com/apache/activemq-artemis-console/pull/15#issuecomment-2112011157

   > All looks good to me! Checking out this PR gave me the opportunity to run 
the hawtio console for the first time.
   > 
   > Maybe it would be worth it to split the PR into a few commits though, I 
feel that there is space for at least one commit for the dependencies update 
and one commit for the UI fixes.
   
   I have split it into 2 commits as suggested




Issue Time Tracking
---

Worklog Id: (was: 919465)
Time Spent: 10.5h  (was: 10h 20m)

> Upgrade the console to use HawtIO 4
> ---
>
> Key: ARTEMIS-4680
> URL: https://issues.apache.org/jira/browse/ARTEMIS-4680
> Project: ActiveMQ Artemis
>  Issue Type: Improvement
>  Components: Web Console
>Reporter: Andy Taylor
>Assignee: Andy Taylor
>Priority: Major
> Fix For: console-1.0.0
>
>  Time Spent: 10.5h
>  Remaining Estimate: 0h
>
> The current console is based upon HawtIO 1 which in turn is built on 
> Bootstrap. Bootstrap is old and no longer actively being maintained.
>  
> This improvement is to migrate the current console to use HawtIO 4 which i 
> based on Typescript, react and Patternfly.
>  
> As it can run standalone and be built seperately, this will be released 
> independently from [https://github.com/apache/activemq-artemis-console] and 
> the output later consumed in Artemis releases (similar to artemis-native).



--
This message was sent by Atlassian Jira
(v8.20.10#820010)