[jira] [Work logged] (ARTEMIS-4641) Allow AMQP federation to recover from missing or removed resources

2024-02-09 Thread ASF GitHub Bot (Jira)


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

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

Author: ASF GitHub Bot
Created on: 09/Feb/24 21:49
Start Date: 09/Feb/24 21:49
Worklog Time Spent: 10m 
  Work Description: tabish121 commented on PR #4817:
URL: 
https://github.com/apache/activemq-artemis/pull/4817#issuecomment-1936649789

   I've run the full test suite with these changes.




Issue Time Tracking
---

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

> Allow AMQP federation to recover from missing or removed resources
> --
>
> Key: ARTEMIS-4641
> URL: https://issues.apache.org/jira/browse/ARTEMIS-4641
> Project: ActiveMQ Artemis
>  Issue Type: Improvement
>  Components: AMQP
>Affects Versions: 2.32.0
>Reporter: Timothy A. Bish
>Assignee: Timothy A. Bish
>Priority: Major
> Fix For: 2.33.0
>
>  Time Spent: 20m
>  Remaining Estimate: 0h
>
> When an AMQP federation instance attempts to federate an address or queue it 
> can fail if the remote address or queue is not present or cannot be created 
> based on broker policy.  A federation link can also closed if the federated 
> resource is removed from the remote broker by management etc.  In those cases 
> the remote broker should note the resources that were targets of federation 
> and send alerts to the source federation broker to notify it that these 
> resources become available for federation and the source should attempt again 
> to create federation links if demand still exists.  This allows an AMQP 
> federation instance to heal itself based on updates from the remote.



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


[jira] [Work logged] (ARTEMIS-4641) Allow AMQP federation to recover from missing or removed resources

2024-02-09 Thread ASF GitHub Bot (Jira)


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

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

Author: ASF GitHub Bot
Created on: 09/Feb/24 21:48
Start Date: 09/Feb/24 21:48
Worklog Time Spent: 10m 
  Work Description: tabish121 opened a new pull request, #4817:
URL: https://github.com/apache/activemq-artemis/pull/4817

   When an AMQP federation instance attempts to federate an address or queue it 
can fail if the remote address or queue is not present or cannot be created 
based on broker policy. A federation link can also closed if the federated 
resource is removed from the remote broker by management etc. In those cases 
the remote broker should note the resources that were targets of federation and 
send alerts to the source federation broker to notify it that these resources 
become available for federation and the source should attempt again to create 
federation links if demand still exists. This allows an AMQP federation 
instance to heal itself based on updates from the remote.




Issue Time Tracking
---

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

> Allow AMQP federation to recover from missing or removed resources
> --
>
> Key: ARTEMIS-4641
> URL: https://issues.apache.org/jira/browse/ARTEMIS-4641
> Project: ActiveMQ Artemis
>  Issue Type: Improvement
>  Components: AMQP
>Affects Versions: 2.32.0
>Reporter: Timothy A. Bish
>Assignee: Timothy A. Bish
>Priority: Major
> Fix For: 2.33.0
>
>  Time Spent: 10m
>  Remaining Estimate: 0h
>
> When an AMQP federation instance attempts to federate an address or queue it 
> can fail if the remote address or queue is not present or cannot be created 
> based on broker policy.  A federation link can also closed if the federated 
> resource is removed from the remote broker by management etc.  In those cases 
> the remote broker should note the resources that were targets of federation 
> and send alerts to the source federation broker to notify it that these 
> resources become available for federation and the source should attempt again 
> to create federation links if demand still exists.  This allows an AMQP 
> federation instance to heal itself based on updates from the remote.



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


[jira] [Created] (ARTEMIS-4641) Allow AMQP federation to recover from missing or removed resources

2024-02-09 Thread Timothy A. Bish (Jira)
Timothy A. Bish created ARTEMIS-4641:


 Summary: Allow AMQP federation to recover from missing or removed 
resources
 Key: ARTEMIS-4641
 URL: https://issues.apache.org/jira/browse/ARTEMIS-4641
 Project: ActiveMQ Artemis
  Issue Type: Improvement
  Components: AMQP
Affects Versions: 2.32.0
Reporter: Timothy A. Bish
Assignee: Timothy A. Bish
 Fix For: 2.33.0


When an AMQP federation instance attempts to federate an address or queue it 
can fail if the remote address or queue is not present or cannot be created 
based on broker policy.  A federation link can also closed if the federated 
resource is removed from the remote broker by management etc.  In those cases 
the remote broker should note the resources that were targets of federation and 
send alerts to the source federation broker to notify it that these resources 
become available for federation and the source should attempt again to create 
federation links if demand still exists.  This allows an AMQP federation 
instance to heal itself based on updates from the remote.



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


[jira] [Commented] (ARTEMIS-4217) AMQ111005: Failed to convert message. Sending it to Dead Letter Address.

2024-02-09 Thread daves (Jira)


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

daves commented on ARTEMIS-4217:


Thank you [~jbertram] and [~tabish] for finding the cause and helping me.
Changing amqpMinLargeMessageSize or journal-buffer-size works. I cannot 
reproduce the problem with correct settings.

> AMQ111005: Failed to convert message. Sending it to Dead Letter Address.
> 
>
> Key: ARTEMIS-4217
> URL: https://issues.apache.org/jira/browse/ARTEMIS-4217
> Project: ActiveMQ Artemis
>  Issue Type: Bug
>  Components: AMQP
>Affects Versions: 2.28.0
> Environment: Windows Server 2022 21H2
> openjdk 19.0.1 2022-10-18
> OpenJDK Runtime Environment (build 19.0.1+10-21)
> OpenJDK 64-Bit Server VM (build 19.0.1+10-21, mixed mode, sharing)
>Reporter: daves
>Priority: Major
> Attachments: ArtemisConvertError.zip, ArtemisReproMemory.zip, 
> image-2023-06-16-15-59-25-689.png, image-2023-06-16-15-59-25-721.png
>
>
> Some of the AMQP messages sent by my client never arrive at the consumer. In 
> the Artemis log I found the following exception:
> {noformat}
> 2023-03-23 18:06:58,084 WARN  
> [org.apache.activemq.artemis.protocol.amqp.logger] AMQ111005: Failed to 
> convert message. Sending it to Dead Letter Address. 
> org.apache.activemq.artemis.protocol.amqp.converter.coreWrapper.ConversionException:
>  java.nio.channels.ClosedChannelException
>      at 
> org.apache.activemq.artemis.protocol.amqp.converter.CoreAmqpConverter.fromCore(CoreAmqpConverter.java:318)
>  ~[artemis-amqp-protocol-2.28.0.jar:2.28.0]
>      at 
> org.apache.activemq.artemis.protocol.amqp.converter.CoreAmqpConverter.checkAMQP(CoreAmqpConverter.java:79)
>  ~[artemis-amqp-protocol-2.28.0.jar:2.28.0]     
>      at 
> org.apache.activemq.artemis.protocol.amqp.proton.ProtonServerSenderContext.executeDelivery(ProtonServerSenderContext.java:561)
>  ~[artemis-amqp-protocol-2.28.0.jar:2.28.0]     
>      at 
> org.apache.activemq.artemis.core.server.impl.MessageReferenceImpl.run(MessageReferenceImpl.java:131)
>  ~[artemis-server-2.28.0.jar:2.28.0]     
>      at 
> io.netty.util.concurrent.AbstractEventExecutor.runTask(AbstractEventExecutor.java:174)
>  ~[netty-common-4.1.86.Final.jar:4.1.86.Final]     
>      at 
> io.netty.util.concurrent.AbstractEventExecutor.safeExecute(AbstractEventExecutor.java:167)
>  ~[netty-common-4.1.86.Final.jar:4.1.86.Final]     
>      at 
> io.netty.util.concurrent.SingleThreadEventExecutor.runAllTasks(SingleThreadEventExecutor.java:470)
>  ~[netty-common-4.1.86.Final.jar:4.1.86.Final]     
>      at io.netty.channel.nio.NioEventLoop.run(NioEventLoop.java:569) 
> ~[netty-transport-4.1.86.Final.jar:4.1.86.Final]     
>      at 
> io.netty.util.concurrent.SingleThreadEventExecutor$4.run(SingleThreadEventExecutor.java:997)
>  ~[netty-common-4.1.86.Final.jar:4.1.86.Final]     
>      at 
> io.netty.util.internal.ThreadExecutorMap$2.run(ThreadExecutorMap.java:74) 
> ~[netty-common-4.1.86.Final.jar:4.1.86.Final]     
>      at 
> org.apache.activemq.artemis.utils.ActiveMQThreadFactory$1.run(ActiveMQThreadFactory.java:118)
>  ~[artemis-commons-2.28.0.jar:?] Caused by: java.lang.RuntimeException: 
> java.nio.channels.ClosedChannelException     
>      at 
> org.apache.activemq.artemis.core.persistence.impl.journal.LargeBody.getBodyBufferSize(LargeBody.java:293)
>  ~[artemis-server-2.28.0.jar:2.28.0]     
>      at 
> org.apache.activemq.artemis.core.persistence.impl.journal.LargeServerMessageImpl.getBodyBufferSize(LargeServerMessageImpl.java:263)
>  ~[artemis-server-2.28.0.jar:2.28.0]     
>      at 
> org.apache.activemq.artemis.protocol.amqp.converter.coreWrapper.CoreBytesMessageWrapper.getBodyLength(CoreBytesMessageWrapper.java:98)
>  ~[artemis-amqp-protocol-2.28.0.jar:2.28.0]     
>      at 
> org.apache.activemq.artemis.protocol.amqp.converter.coreWrapper.CoreBytesMessageWrapper.getBinaryFromMessageBody(CoreBytesMessageWrapper.java:68)
>  ~[artemis-amqp-protocol-2.28.0.jar:2.28.0]     
>      at 
> org.apache.activemq.artemis.protocol.amqp.converter.coreWrapper.CoreBytesMessageWrapper.createAMQPSection(CoreBytesMessageWrapper.java:78)
>  ~[artemis-amqp-protocol-2.28.0.jar:2.28.0]     
>      at 
> org.apache.activemq.artemis.protocol.amqp.converter.CoreAmqpConverter.fromCore(CoreAmqpConverter.java:106)
>  ~[artemis-amqp-protocol-2.28.0.jar:2.28.0]     
>      ... 10 more 
> Caused by: java.nio.channels.ClosedChannelException     
>      at sun.nio.ch.FileChannelImpl.ensureOpen(FileChannelImpl.java:165) 
> ~[?:?]     
>      at sun.nio.ch.FileChannelImpl.size(FileChannelImpl.java:416) ~[?:?]     
>      at 
> org.apache.activemq.artemis.core.io.nio.NIOSequentialFile.size(NIOSequentialFile.java:339)
>  ~[artemis-journal-2.28.0.jar:2.28.0]  

[jira] [Comment Edited] (ARTEMIS-4217) AMQ111005: Failed to convert message. Sending it to Dead Letter Address.

2024-02-09 Thread Justin Bertram (Jira)


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

Justin Bertram edited comment on ARTEMIS-4217 at 2/9/24 8:45 PM:
-

I was able to reproduce the problem with a relatively simple test in the 
test-suite based on the information that [~tabish] provided in his previous 
comment. The conversion from AMQP to core is happening because you're sending a 
message whose size is less than {{amqpMinLargeMessageSize}} but larger than the 
{{journal-buffer-size}}. Therefore, since the broker can't fit the message into 
the journal buffer it converts it into a _core_ large message and stores it 
directly to disk. Then the broker converts it back to AMQP to send it to your 
consumer. This is when/where the exceptions are happening.

Ideally the broker wouldn't covert the message to a _core_ large message but 
would instead keep it as an AMQP large message. I don't yet have code that will 
do that. However, I believe you can avoid the issue by adjusting your 
configuration. Currently you're using an {{amqpMinLargeMessageSize}} of 
{{500}} (i.e. 5MB) and the default {{journal-buffer-size}} of {{501760}} 
(i.e. 490KiB). You almost certainly don't want to be storing messages which are 
close to 5MB in memory so I recommend you lower your 
{{amqpMinLargeMessageSize}} to something a bit more reasonable. The default is 
{{102400}} (i.e. 100KiB) so maybe double it to be {{204800}}. If you find 
that's still too low for your liking then feel free to increase it and  the 
{{journal-buffer-size}} if necessary as well. However, keep in mind that the 
larger the {{amqpMinLargeMessageSize}} and {{journal-buffer-size}} is the more 
heap the broker will consume.

Let me know if that resolves the issue for you.


was (Author: jbertram):
I was able to reproduce the problem with a relatively simple test in the 
test-suite based on the information that [~tabish] provided in his previous 
comment. The conversion from AMQP to core is happening because you're sending a 
message whose size is less than {{amqpMinLargeMessageSize}} but larger than the 
{{journal-buffer-size}}. Therefore, since the broker can't fit the message into 
the journal buffer it convert it into a _core_ large message and stores it 
directly to disk. Then the broker converts it back to AMQP to send it to your 
consumer. This is when/where the exceptions are happening.

Ideally the broker wouldn't covert the message to a _core_ large message but 
would instead keep it as an AMQP large message. I don't yet have code that will 
do that. However, I believe you can avoid the issue by adjusting your 
configuration. Currently you're using an {{amqpMinLargeMessageSize}} of 
{{500}} (i.e. 5MB) and the default {{journal-buffer-size}} of {{501760}} 
(i.e. 490KiB). You almost certainly don't want to be storing messages which are 
close to 5MB in memory so I recommend you lower your 
{{amqpMinLargeMessageSize}} to something a bit more reasonable. The default is 
{{102400}} (i.e. 100KiB) so maybe double it to be {{204800}}. If you find 
that's still too low for your liking then feel free to increase it and  the 
{{journal-buffer-size}} if necessary as well. However, keep in mind that the 
larger the {{amqpMinLargeMessageSize}} and {{journal-buffer-size}} is the more 
heap the broker will consume.

Let me know if that resolves the issue for you.

> AMQ111005: Failed to convert message. Sending it to Dead Letter Address.
> 
>
> Key: ARTEMIS-4217
> URL: https://issues.apache.org/jira/browse/ARTEMIS-4217
> Project: ActiveMQ Artemis
>  Issue Type: Bug
>  Components: AMQP
>Affects Versions: 2.28.0
> Environment: Windows Server 2022 21H2
> openjdk 19.0.1 2022-10-18
> OpenJDK Runtime Environment (build 19.0.1+10-21)
> OpenJDK 64-Bit Server VM (build 19.0.1+10-21, mixed mode, sharing)
>Reporter: daves
>Priority: Major
> Attachments: ArtemisConvertError.zip, ArtemisReproMemory.zip, 
> image-2023-06-16-15-59-25-689.png, image-2023-06-16-15-59-25-721.png
>
>
> Some of the AMQP messages sent by my client never arrive at the consumer. In 
> the Artemis log I found the following exception:
> {noformat}
> 2023-03-23 18:06:58,084 WARN  
> [org.apache.activemq.artemis.protocol.amqp.logger] AMQ111005: Failed to 
> convert message. Sending it to Dead Letter Address. 
> org.apache.activemq.artemis.protocol.amqp.converter.coreWrapper.ConversionException:
>  java.nio.channels.ClosedChannelException
>      at 
> org.apache.activemq.artemis.protocol.amqp.converter.CoreAmqpConverter.fromCore(CoreAmqpConverter.java:318)
>  ~[artemis-amqp-protocol-2.28.0.jar:2.28.0]
>      at 
> 

[jira] [Commented] (ARTEMIS-4217) AMQ111005: Failed to convert message. Sending it to Dead Letter Address.

2024-02-09 Thread Justin Bertram (Jira)


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

Justin Bertram commented on ARTEMIS-4217:
-

I was able to reproduce the problem with a relatively simple test in the 
test-suite based on the information that [~tabish] provided in his previous 
comment. The conversion from AMQP to core is happening because you're sending a 
message whose size is less than {{amqpMinLargeMessageSize}} but larger than the 
{{journal-buffer-size}}. Therefore, since the broker can't fit the message into 
the journal buffer it convert it into a _core_ large message and stores it 
directly to disk. Then the broker converts it back to AMQP to send it to your 
consumer. This is when/where the exceptions are happening.

Ideally the broker wouldn't covert the message to a _core_ large message but 
would instead keep it as an AMQP large message. I don't yet have code that will 
do that. However, I believe you can avoid the issue by adjusting your 
configuration. Currently you're using an {{amqpMinLargeMessageSize}} of 
{{500}} (i.e. 5MB) and the default {{journal-buffer-size}} of {{501760}} 
(i.e. 490KiB). You almost certainly don't want to be storing messages which are 
close to 5MB in memory so I recommend you lower your 
{{amqpMinLargeMessageSize}} to something a bit more reasonable. The default is 
{{102400}} (i.e. 100KiB) so maybe double it to be {{204800}}. If you find 
that's still too low for your liking then feel free to increase it and  the 
{{journal-buffer-size}} if necessary as well. However, keep in mind that the 
larger the {{amqpMinLargeMessageSize}} and {{journal-buffer-size}} is the more 
heap the broker will consume.

Let me know if that resolves the issue for you.

> AMQ111005: Failed to convert message. Sending it to Dead Letter Address.
> 
>
> Key: ARTEMIS-4217
> URL: https://issues.apache.org/jira/browse/ARTEMIS-4217
> Project: ActiveMQ Artemis
>  Issue Type: Bug
>  Components: AMQP
>Affects Versions: 2.28.0
> Environment: Windows Server 2022 21H2
> openjdk 19.0.1 2022-10-18
> OpenJDK Runtime Environment (build 19.0.1+10-21)
> OpenJDK 64-Bit Server VM (build 19.0.1+10-21, mixed mode, sharing)
>Reporter: daves
>Priority: Major
> Attachments: ArtemisConvertError.zip, ArtemisReproMemory.zip, 
> image-2023-06-16-15-59-25-689.png, image-2023-06-16-15-59-25-721.png
>
>
> Some of the AMQP messages sent by my client never arrive at the consumer. In 
> the Artemis log I found the following exception:
> {noformat}
> 2023-03-23 18:06:58,084 WARN  
> [org.apache.activemq.artemis.protocol.amqp.logger] AMQ111005: Failed to 
> convert message. Sending it to Dead Letter Address. 
> org.apache.activemq.artemis.protocol.amqp.converter.coreWrapper.ConversionException:
>  java.nio.channels.ClosedChannelException
>      at 
> org.apache.activemq.artemis.protocol.amqp.converter.CoreAmqpConverter.fromCore(CoreAmqpConverter.java:318)
>  ~[artemis-amqp-protocol-2.28.0.jar:2.28.0]
>      at 
> org.apache.activemq.artemis.protocol.amqp.converter.CoreAmqpConverter.checkAMQP(CoreAmqpConverter.java:79)
>  ~[artemis-amqp-protocol-2.28.0.jar:2.28.0]     
>      at 
> org.apache.activemq.artemis.protocol.amqp.proton.ProtonServerSenderContext.executeDelivery(ProtonServerSenderContext.java:561)
>  ~[artemis-amqp-protocol-2.28.0.jar:2.28.0]     
>      at 
> org.apache.activemq.artemis.core.server.impl.MessageReferenceImpl.run(MessageReferenceImpl.java:131)
>  ~[artemis-server-2.28.0.jar:2.28.0]     
>      at 
> io.netty.util.concurrent.AbstractEventExecutor.runTask(AbstractEventExecutor.java:174)
>  ~[netty-common-4.1.86.Final.jar:4.1.86.Final]     
>      at 
> io.netty.util.concurrent.AbstractEventExecutor.safeExecute(AbstractEventExecutor.java:167)
>  ~[netty-common-4.1.86.Final.jar:4.1.86.Final]     
>      at 
> io.netty.util.concurrent.SingleThreadEventExecutor.runAllTasks(SingleThreadEventExecutor.java:470)
>  ~[netty-common-4.1.86.Final.jar:4.1.86.Final]     
>      at io.netty.channel.nio.NioEventLoop.run(NioEventLoop.java:569) 
> ~[netty-transport-4.1.86.Final.jar:4.1.86.Final]     
>      at 
> io.netty.util.concurrent.SingleThreadEventExecutor$4.run(SingleThreadEventExecutor.java:997)
>  ~[netty-common-4.1.86.Final.jar:4.1.86.Final]     
>      at 
> io.netty.util.internal.ThreadExecutorMap$2.run(ThreadExecutorMap.java:74) 
> ~[netty-common-4.1.86.Final.jar:4.1.86.Final]     
>      at 
> org.apache.activemq.artemis.utils.ActiveMQThreadFactory$1.run(ActiveMQThreadFactory.java:118)
>  ~[artemis-commons-2.28.0.jar:?] Caused by: java.lang.RuntimeException: 
> java.nio.channels.ClosedChannelException     
>      at 
> 

[jira] [Comment Edited] (ARTEMIS-4217) AMQ111005: Failed to convert message. Sending it to Dead Letter Address.

2024-02-09 Thread daves (Jira)


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

daves edited comment on ARTEMIS-4217 at 2/9/24 7:32 PM:


Hi [~jbertram]

I planned to upload the file together with a comment, but I got interrupted 
while writing the comment, sorry.

I did some more testing and found a way to reproduce the problem rellably. 
For the problem to occure the system running the broker must be in a low memory 
state. I've added a small project to the issue to reproduce the problem.

Setup:
Broker: The problem exists since version 2.28 I used 2.31.2 for this test. 
2.27.1 is the last version in which the problem never occurs.

Broker config:

{code:xml}

http://www.w3.org/2001/XMLSchema-instance; 
xmlns:xi="http://www.w3.org/2001/XInclude; xsi:schemaLocation="urn:activemq 
/schema/artemis-configuration.xsd">
  http://www.w3.org/2001/XMLSchema-instance; 
xsi:schemaLocation="urn:activemq:core ">
    Argos
    true
    NIO
    C:/Data/Artemis/Argos/data/paging
    C:/Data/Artemis/Argos/data/bindings
    C:/Data/Artemis/Argos/data/journal
    
C:/Data/Artemis/Argos/data/large-messages
    true
    2
    10
    4096
    10M
    1404000
    1
    5000
    99
    true
    12
    6
    HALT
    1196000
    
      tcp://0.0.0.0:5672?tcpSendBufferSize=2000;tcpReceiveBufferSize=2000;minLargeMessageSize=500;amqpMinLargeMessageSize=500;consumerWindowSize=10485760;directDeliver=false;protocols=AMQP;useEpoll=true;amqpCredits=1000;amqpMinCredits=300
    
    
      
        
        
        
        
        
        
        
        
        
        
      
    
    
      
        0
        -1
        
10
        PAGE
        true
        true
        true
        true
      
      
        1.5
        5000
        6
        10
        10485760
        104857600
        2
        PAGE
        
10
        true
        true
        true
        true
        false
        false
        false
        false
      
    
    
      
        
          
        
      
      
        
          
        
      
    
  

{code}

Repro tool:
Extract ArtemisReproMemory.zip and run the project.
It is a .net application and should run on all major platforms, but I tested it 
only on Windows (11) . To build and run it, you need the .net8.0 SDK from here: 
https://dotnet.microsoft.com/en-us/download/visual-studio-sdks

Run this command to build the project (in the root of the extracted directory):
{code:bash}
dotnet build -c Release
{code}

Start the built application like this:
{code:bash}
cd .\ArtemisReproMemory\bin\Release\net8.0\
dotnet .\ArtemisReproMemory.dll -a amqp://admin:password@localhost:5672 -b 10  
{code}

Use the -a switch to specify a broker URL (AMQP)
Use -b to allocate the specified number of bytes to simulate a high memory 
state. (Only makes sense if the broker is running on the same machine) 


The repro tool will send large messages to the specified broker using the AMQP 
protocol and simultaneously consume the messages. The actions of the repro tool 
trigger the problem (
Failed to convert message. Sending it to Dead Letter Address.) on all machines 
I tested with.

In some cases, it took considerably longer for the problem to occur, if the 
broker was started before the system memory was all "in use". So it can help to 
start the broker after the repro tool is up and running (using the -b flag).

Artemis will, using this setup, generate the following log entries and loose 
messages:

{code:java}
2024-02-09 10:30:17,320 WARN  [org.apache.activemq.artemis.core.server] 
AMQ222150: Sending message 
Reference[8590002935]:NON-RELIABLE:LargeServerMessage[messageID=8590002935,durable=false,userID=d5f605da-c72d-11ee-891c-a059505d02d7,priority=4,
 timestamp=0,expiration=0, durable=false, address=test-q, 
properties=TypedProperties[NATIVE_MESSAGE_ID=ID:AMQP_NO_PREFIX:test-producer 
#18, JMS_AMQP_ORIGINAL_ENCODING=6, _AMQ_LARGE_SIZE=1048576]]@964273977 to Dead 
Letter Address, but there is no Dead Letter Address configured for queue test-q 
so dropping it
2024-02-09 10:30:29,752 WARN  
[org.apache.activemq.artemis.protocol.amqp.logger] AMQ111005: Failed to convert 
message. Sending it to Dead Letter Address.
org.apache.activemq.artemis.protocol.amqp.converter.coreWrapper.ConversionException:
 java.nio.channels.AsynchronousCloseException
at 
org.apache.activemq.artemis.protocol.amqp.converter.CoreAmqpConverter.fromCore(CoreAmqpConverter.java:318)
 ~[artemis-amqp-protocol-2.31.2.jar:2.31.2]
at 
org.apache.activemq.artemis.protocol.amqp.converter.CoreAmqpConverter.checkAMQP(CoreAmqpConverter.java:79)
 ~[artemis-amqp-protocol-2.31.2.jar:2.31.2]
at 
org.apache.activemq.artemis.protocol.amqp.proton.ProtonServerSenderContext.executeDelivery(ProtonServerSenderContext.java:572)
 ~[artemis-amqp-protocol-2.31.2.jar:2.31.2]
at 

[jira] [Comment Edited] (ARTEMIS-4217) AMQ111005: Failed to convert message. Sending it to Dead Letter Address.

2024-02-09 Thread daves (Jira)


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

daves edited comment on ARTEMIS-4217 at 2/9/24 7:30 PM:


Hi [~jbertram]

I planned to upload the file together with a comment, but I got interrupted 
while writing the comment, sorry.

I did some more testing and found a way to reproduce the problem rellably. 
For the problem to occure the system running the broker must be in a low memory 
state. I've added a small project to the issue to reproduce the problem.

Setup:
Broker: The problem exists since version 2.28 I used 2.31.2 for this test. 
2.27.1 is the last version in which the problem never occurs.

Broker config:

{code:xml}

http://www.w3.org/2001/XMLSchema-instance; 
xmlns:xi="http://www.w3.org/2001/XInclude; xsi:schemaLocation="urn:activemq 
/schema/artemis-configuration.xsd">
  http://www.w3.org/2001/XMLSchema-instance; 
xsi:schemaLocation="urn:activemq:core ">
    Argos
    true
    NIO
    C:/Data/Artemis/Argos/data/paging
    C:/Data/Artemis/Argos/data/bindings
    C:/Data/Artemis/Argos/data/journal
    
C:/Data/Artemis/Argos/data/large-messages
    true
    2
    10
    4096
    10M
    1404000
    1
    5000
    99
    true
    12
    6
    HALT
    1196000
    
      tcp://0.0.0.0:5672?tcpSendBufferSize=2000;tcpReceiveBufferSize=2000;minLargeMessageSize=500;amqpMinLargeMessageSize=500;consumerWindowSize=10485760;directDeliver=false;protocols=AMQP;useEpoll=true;amqpCredits=1000;amqpMinCredits=300
    
    
      
        
        
        
        
        
        
        
        
        
        
      
    
    
      
        0
        -1
        
10
        PAGE
        true
        true
        true
        true
      
      
        1.5
        5000
        6
        10
        10485760
        104857600
        2
        PAGE
        
10
        true
        true
        true
        true
        false
        false
        false
        false
      
    
    
      
        
          
        
      
      
        
          
        
      
    
  

{code}

Repro tool:
Extract ArtemisReproMemory.zip and run the project.
It is a .net application and should run on all major platforms, but I tested it 
only on Windows (11) . To build and run it, you need the .net8.0 SDK from here: 
https://dotnet.microsoft.com/en-us/download/visual-studio-sdks

Run this command to build the project (in the root of the extracted directory):
{code:cmd}
dotnet build -c Release
{code}

Start the built application like this:
{code:cmd}
cd .\ArtemisReproMemory\bin\Release\net8.0\
dotnet .\ArtemisReproMemory.dll -a amqp://admin:password@localhost:5672 -b 10  
{code}

Use the -a switch to specify a broker URL (AMQP)
Use -b to allocate the specified number of bytes to simulate a high memory 
state. (Only makes sense if the broker is running on the same machine) 


The repro tool will send large messages to the specified broker using the AMQP 
protocol and simultaneously consume the messages. The actions of the repro tool 
trigger the problem (
Failed to convert message. Sending it to Dead Letter Address.) on all machines 
I tested with.

In some cases, it took considerably longer for the problem to occur, if the 
broker was started before the system memory was all "in use". So it can help to 
start the broker after the repro tool is up and running (using the -b flag).

Artemis will, using this setup, generate the following log entries and loose 
messages:

{code:java}
2024-02-09 10:30:17,320 WARN  [org.apache.activemq.artemis.core.server] 
AMQ222150: Sending message 
Reference[8590002935]:NON-RELIABLE:LargeServerMessage[messageID=8590002935,durable=false,userID=d5f605da-c72d-11ee-891c-a059505d02d7,priority=4,
 timestamp=0,expiration=0, durable=false, address=test-q, 
properties=TypedProperties[NATIVE_MESSAGE_ID=ID:AMQP_NO_PREFIX:test-producer 
#18, JMS_AMQP_ORIGINAL_ENCODING=6, _AMQ_LARGE_SIZE=1048576]]@964273977 to Dead 
Letter Address, but there is no Dead Letter Address configured for queue test-q 
so dropping it
2024-02-09 10:30:29,752 WARN  
[org.apache.activemq.artemis.protocol.amqp.logger] AMQ111005: Failed to convert 
message. Sending it to Dead Letter Address.
org.apache.activemq.artemis.protocol.amqp.converter.coreWrapper.ConversionException:
 java.nio.channels.AsynchronousCloseException
at 
org.apache.activemq.artemis.protocol.amqp.converter.CoreAmqpConverter.fromCore(CoreAmqpConverter.java:318)
 ~[artemis-amqp-protocol-2.31.2.jar:2.31.2]
at 
org.apache.activemq.artemis.protocol.amqp.converter.CoreAmqpConverter.checkAMQP(CoreAmqpConverter.java:79)
 ~[artemis-amqp-protocol-2.31.2.jar:2.31.2]
at 
org.apache.activemq.artemis.protocol.amqp.proton.ProtonServerSenderContext.executeDelivery(ProtonServerSenderContext.java:572)
 ~[artemis-amqp-protocol-2.31.2.jar:2.31.2]
at 

[jira] [Commented] (ARTEMIS-4217) AMQ111005: Failed to convert message. Sending it to Dead Letter Address.

2024-02-09 Thread daves (Jira)


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

daves commented on ARTEMIS-4217:


Hi [~jbertram]

I planned to upload the file together with a comment, but I got interrupted 
while writing the comment, sorry.

I did some more testing and found a way to reproduce the problem rellably. 
For the problem to occure the system running the broker must be in a low memory 
state. I've added a small project to the issue to reproduce the problem.

Setup:
Broker: The problem exists since version 2.28 I used 2.31.2 for this test. 
2.27.1 is the last version in which the problem never occurs.

Broker config:

{code:xml}

http://www.w3.org/2001/XMLSchema-instance; 
xmlns:xi="http://www.w3.org/2001/XInclude; xsi:schemaLocation="urn:activemq 
/schema/artemis-configuration.xsd">
  http://www.w3.org/2001/XMLSchema-instance; 
xsi:schemaLocation="urn:activemq:core ">
    Argos
    true
    NIO
    
C:/Logisoft/Data/Artemis/Argos/data/paging
    
C:/Logisoft/Data/Artemis/Argos/data/bindings
    
C:/Logisoft/Data/Artemis/Argos/data/journal
    
C:/Logisoft/Data/Artemis/Argos/data/large-messages
    true
    2
    10
    4096
    10M
    1404000
    1
    5000
    99
    true
    12
    6
    HALT
    1196000
    
      tcp://0.0.0.0:5672?tcpSendBufferSize=2000;tcpReceiveBufferSize=2000;minLargeMessageSize=500;amqpMinLargeMessageSize=500;consumerWindowSize=10485760;directDeliver=false;protocols=AMQP;useEpoll=true;amqpCredits=1000;amqpMinCredits=300
    
    
      
        
        
        
        
        
        
        
        
        
        
      
    
    
      
        0
        -1
        
10
        PAGE
        true
        true
        true
        true
      
      
        1.5
        5000
        6
        10
        10485760
        104857600
        2
        PAGE
        
10
        true
        true
        true
        true
        false
        false
        false
        false
      
    
    
      
        
          
        
      
      
        
          
        
      
    
  

{code}

Repro tool:
Extract ArtemisReproMemory.zip and run the project.
It is a .net application and should run on all major platforms, but I tested it 
only on Windows (11) . To build and run it, you need the .net8.0 SDK from here: 
https://dotnet.microsoft.com/en-us/download/visual-studio-sdks

Run this command to build the project (in the root of the extracted directory):
{code:cmd}
dotnet build -c Release
{code}

Start the built application like this:
{code:cmd}
cd .\ArtemisReproMemory\bin\Release\net8.0\
dotnet .\ArtemisReproMemory.dll -a amqp://admin:password@localhost:5672 -b 10  
{code}

Use the -a switch to specify a broker URL (AMQP)
Use -b to allocate the specified number of bytes to simulate a high memory 
state. (Only makes sense if the broker is running on the same machine) 


The repro tool will send large messages to the specified broker using the AMQP 
protocol and simultaneously consume the messages. The actions of the repro tool 
trigger the problem (
Failed to convert message. Sending it to Dead Letter Address.) on all machines 
I tested with.

In some cases, it took considerably longer for the problem to occur, if the 
broker was started before the system memory was all "in use". So it can help to 
start the broker after the repro tool is up and running (using the -b flag).

Artemis will, using this setup, generate the following log entries and loose 
messages:

{code:java}
2024-02-09 10:30:17,320 WARN  [org.apache.activemq.artemis.core.server] 
AMQ222150: Sending message 
Reference[8590002935]:NON-RELIABLE:LargeServerMessage[messageID=8590002935,durable=false,userID=d5f605da-c72d-11ee-891c-a059505d02d7,priority=4,
 timestamp=0,expiration=0, durable=false, address=test-q, 
properties=TypedProperties[NATIVE_MESSAGE_ID=ID:AMQP_NO_PREFIX:test-producer 
#18, JMS_AMQP_ORIGINAL_ENCODING=6, _AMQ_LARGE_SIZE=1048576]]@964273977 to Dead 
Letter Address, but there is no Dead Letter Address configured for queue test-q 
so dropping it
2024-02-09 10:30:29,752 WARN  
[org.apache.activemq.artemis.protocol.amqp.logger] AMQ111005: Failed to convert 
message. Sending it to Dead Letter Address.
org.apache.activemq.artemis.protocol.amqp.converter.coreWrapper.ConversionException:
 java.nio.channels.AsynchronousCloseException
at 
org.apache.activemq.artemis.protocol.amqp.converter.CoreAmqpConverter.fromCore(CoreAmqpConverter.java:318)
 ~[artemis-amqp-protocol-2.31.2.jar:2.31.2]
at 
org.apache.activemq.artemis.protocol.amqp.converter.CoreAmqpConverter.checkAMQP(CoreAmqpConverter.java:79)
 ~[artemis-amqp-protocol-2.31.2.jar:2.31.2]
at 
org.apache.activemq.artemis.protocol.amqp.proton.ProtonServerSenderContext.executeDelivery(ProtonServerSenderContext.java:572)
 ~[artemis-amqp-protocol-2.31.2.jar:2.31.2]
at 

[jira] [Created] (AMQ-9433) Add configurable advanced timing metrics to Destination Policy for queues and topics

2024-02-09 Thread Matt Pavlovich (Jira)
Matt Pavlovich created AMQ-9433:
---

 Summary: Add configurable advanced timing metrics to Destination 
Policy for queues and topics
 Key: AMQ-9433
 URL: https://issues.apache.org/jira/browse/AMQ-9433
 Project: ActiveMQ
  Issue Type: Improvement
Reporter: Matt Pavlovich


Tracking timestamps for every message in and out could incur performance impact 
with all the System.. get millis or nanos time stamps.

This feature enhancement would add a configurable flag 'enableTimingStatistics' 
to destination policy and then only track those statistics when the flag is 
enabled.



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


[jira] [Work logged] (ARTEMIS-4586) Auto reload web binding SSL stores on change

2024-02-09 Thread ASF GitHub Bot (Jira)


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

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

Author: ASF GitHub Bot
Created on: 09/Feb/24 17:21
Start Date: 09/Feb/24 17:21
Worklog Time Spent: 10m 
  Work Description: gemmellr commented on PR #4760:
URL: 
https://github.com/apache/activemq-artemis/pull/4760#issuecomment-1936304096

   Yep update looks good, merged.




Issue Time Tracking
---

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

> Auto reload web binding SSL stores on change
> 
>
> Key: ARTEMIS-4586
> URL: https://issues.apache.org/jira/browse/ARTEMIS-4586
> Project: ActiveMQ Artemis
>  Issue Type: Improvement
>Reporter: Domenico Francesco Bruscino
>Assignee: Domenico Francesco Bruscino
>Priority: Major
>  Time Spent: 1h
>  Remaining Estimate: 0h
>
> Add the web binding attribute `sslAutoReload` to enable auto reload of the 
> SSL stores related to a binding when they are updated.



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


[jira] [Commented] (ARTEMIS-4586) Auto reload web binding SSL stores on change

2024-02-09 Thread ASF subversion and git services (Jira)


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

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

Commit 29781bd5da6f9892a6fb80c2da5dd7eb3c0e4ebd in activemq-artemis's branch 
refs/heads/main from Domenico Francesco Bruscino
[ https://gitbox.apache.org/repos/asf?p=activemq-artemis.git;h=29781bd5da ]

ARTEMIS-4586 Auto reload web binding SSL stores on change


> Auto reload web binding SSL stores on change
> 
>
> Key: ARTEMIS-4586
> URL: https://issues.apache.org/jira/browse/ARTEMIS-4586
> Project: ActiveMQ Artemis
>  Issue Type: Improvement
>Reporter: Domenico Francesco Bruscino
>Assignee: Domenico Francesco Bruscino
>Priority: Major
>  Time Spent: 50m
>  Remaining Estimate: 0h
>
> Add the web binding attribute `sslAutoReload` to enable auto reload of the 
> SSL stores related to a binding when they are updated.



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


[jira] [Work logged] (ARTEMIS-4586) Auto reload web binding SSL stores on change

2024-02-09 Thread ASF GitHub Bot (Jira)


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

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

Author: ASF GitHub Bot
Created on: 09/Feb/24 17:20
Start Date: 09/Feb/24 17:20
Worklog Time Spent: 10m 
  Work Description: gemmellr merged PR #4760:
URL: https://github.com/apache/activemq-artemis/pull/4760




Issue Time Tracking
---

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

> Auto reload web binding SSL stores on change
> 
>
> Key: ARTEMIS-4586
> URL: https://issues.apache.org/jira/browse/ARTEMIS-4586
> Project: ActiveMQ Artemis
>  Issue Type: Improvement
>Reporter: Domenico Francesco Bruscino
>Assignee: Domenico Francesco Bruscino
>Priority: Major
>  Time Spent: 50m
>  Remaining Estimate: 0h
>
> Add the web binding attribute `sslAutoReload` to enable auto reload of the 
> SSL stores related to a binding when they are updated.



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


[jira] [Work logged] (ARTEMIS-4586) Auto reload web binding SSL stores on change

2024-02-09 Thread ASF GitHub Bot (Jira)


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

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

Author: ASF GitHub Bot
Created on: 09/Feb/24 17:13
Start Date: 09/Feb/24 17:13
Worklog Time Spent: 10m 
  Work Description: gemmellr commented on PR #4760:
URL: 
https://github.com/apache/activemq-artemis/pull/4760#issuecomment-1936294026

   didnt get notified it had been updated, so havent looked yet




Issue Time Tracking
---

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

> Auto reload web binding SSL stores on change
> 
>
> Key: ARTEMIS-4586
> URL: https://issues.apache.org/jira/browse/ARTEMIS-4586
> Project: ActiveMQ Artemis
>  Issue Type: Improvement
>Reporter: Domenico Francesco Bruscino
>Assignee: Domenico Francesco Bruscino
>Priority: Major
>  Time Spent: 40m
>  Remaining Estimate: 0h
>
> Add the web binding attribute `sslAutoReload` to enable auto reload of the 
> SSL stores related to a binding when they are updated.



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


[jira] [Work logged] (ARTEMIS-4586) Auto reload web binding SSL stores on change

2024-02-09 Thread ASF GitHub Bot (Jira)


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

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

Author: ASF GitHub Bot
Created on: 09/Feb/24 16:37
Start Date: 09/Feb/24 16:37
Worklog Time Spent: 10m 
  Work Description: jbertram commented on PR #4760:
URL: 
https://github.com/apache/activemq-artemis/pull/4760#issuecomment-1936240743

   @gemmellr, this OK to merge?




Issue Time Tracking
---

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

> Auto reload web binding SSL stores on change
> 
>
> Key: ARTEMIS-4586
> URL: https://issues.apache.org/jira/browse/ARTEMIS-4586
> Project: ActiveMQ Artemis
>  Issue Type: Improvement
>Reporter: Domenico Francesco Bruscino
>Assignee: Domenico Francesco Bruscino
>Priority: Major
>  Time Spent: 0.5h
>  Remaining Estimate: 0h
>
> Add the web binding attribute `sslAutoReload` to enable auto reload of the 
> SSL stores related to a binding when they are updated.



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


[jira] [Commented] (ARTEMIS-4217) AMQ111005: Failed to convert message. Sending it to Dead Letter Address.

2024-02-09 Thread Justin Bertram (Jira)


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

Justin Bertram commented on ARTEMIS-4217:
-

[~daves], I see you attached  [^ArtemisReproMemory.zip]. Can you provide any 
details about what this is for?

> AMQ111005: Failed to convert message. Sending it to Dead Letter Address.
> 
>
> Key: ARTEMIS-4217
> URL: https://issues.apache.org/jira/browse/ARTEMIS-4217
> Project: ActiveMQ Artemis
>  Issue Type: Bug
>  Components: AMQP
>Affects Versions: 2.28.0
> Environment: Windows Server 2022 21H2
> openjdk 19.0.1 2022-10-18
> OpenJDK Runtime Environment (build 19.0.1+10-21)
> OpenJDK 64-Bit Server VM (build 19.0.1+10-21, mixed mode, sharing)
>Reporter: daves
>Priority: Major
> Attachments: ArtemisConvertError.zip, ArtemisReproMemory.zip, 
> image-2023-06-16-15-59-25-689.png, image-2023-06-16-15-59-25-721.png
>
>
> Some of the AMQP messages sent by my client never arrive at the consumer. In 
> the Artemis log I found the following exception:
> {noformat}
> 2023-03-23 18:06:58,084 WARN  
> [org.apache.activemq.artemis.protocol.amqp.logger] AMQ111005: Failed to 
> convert message. Sending it to Dead Letter Address. 
> org.apache.activemq.artemis.protocol.amqp.converter.coreWrapper.ConversionException:
>  java.nio.channels.ClosedChannelException
>      at 
> org.apache.activemq.artemis.protocol.amqp.converter.CoreAmqpConverter.fromCore(CoreAmqpConverter.java:318)
>  ~[artemis-amqp-protocol-2.28.0.jar:2.28.0]
>      at 
> org.apache.activemq.artemis.protocol.amqp.converter.CoreAmqpConverter.checkAMQP(CoreAmqpConverter.java:79)
>  ~[artemis-amqp-protocol-2.28.0.jar:2.28.0]     
>      at 
> org.apache.activemq.artemis.protocol.amqp.proton.ProtonServerSenderContext.executeDelivery(ProtonServerSenderContext.java:561)
>  ~[artemis-amqp-protocol-2.28.0.jar:2.28.0]     
>      at 
> org.apache.activemq.artemis.core.server.impl.MessageReferenceImpl.run(MessageReferenceImpl.java:131)
>  ~[artemis-server-2.28.0.jar:2.28.0]     
>      at 
> io.netty.util.concurrent.AbstractEventExecutor.runTask(AbstractEventExecutor.java:174)
>  ~[netty-common-4.1.86.Final.jar:4.1.86.Final]     
>      at 
> io.netty.util.concurrent.AbstractEventExecutor.safeExecute(AbstractEventExecutor.java:167)
>  ~[netty-common-4.1.86.Final.jar:4.1.86.Final]     
>      at 
> io.netty.util.concurrent.SingleThreadEventExecutor.runAllTasks(SingleThreadEventExecutor.java:470)
>  ~[netty-common-4.1.86.Final.jar:4.1.86.Final]     
>      at io.netty.channel.nio.NioEventLoop.run(NioEventLoop.java:569) 
> ~[netty-transport-4.1.86.Final.jar:4.1.86.Final]     
>      at 
> io.netty.util.concurrent.SingleThreadEventExecutor$4.run(SingleThreadEventExecutor.java:997)
>  ~[netty-common-4.1.86.Final.jar:4.1.86.Final]     
>      at 
> io.netty.util.internal.ThreadExecutorMap$2.run(ThreadExecutorMap.java:74) 
> ~[netty-common-4.1.86.Final.jar:4.1.86.Final]     
>      at 
> org.apache.activemq.artemis.utils.ActiveMQThreadFactory$1.run(ActiveMQThreadFactory.java:118)
>  ~[artemis-commons-2.28.0.jar:?] Caused by: java.lang.RuntimeException: 
> java.nio.channels.ClosedChannelException     
>      at 
> org.apache.activemq.artemis.core.persistence.impl.journal.LargeBody.getBodyBufferSize(LargeBody.java:293)
>  ~[artemis-server-2.28.0.jar:2.28.0]     
>      at 
> org.apache.activemq.artemis.core.persistence.impl.journal.LargeServerMessageImpl.getBodyBufferSize(LargeServerMessageImpl.java:263)
>  ~[artemis-server-2.28.0.jar:2.28.0]     
>      at 
> org.apache.activemq.artemis.protocol.amqp.converter.coreWrapper.CoreBytesMessageWrapper.getBodyLength(CoreBytesMessageWrapper.java:98)
>  ~[artemis-amqp-protocol-2.28.0.jar:2.28.0]     
>      at 
> org.apache.activemq.artemis.protocol.amqp.converter.coreWrapper.CoreBytesMessageWrapper.getBinaryFromMessageBody(CoreBytesMessageWrapper.java:68)
>  ~[artemis-amqp-protocol-2.28.0.jar:2.28.0]     
>      at 
> org.apache.activemq.artemis.protocol.amqp.converter.coreWrapper.CoreBytesMessageWrapper.createAMQPSection(CoreBytesMessageWrapper.java:78)
>  ~[artemis-amqp-protocol-2.28.0.jar:2.28.0]     
>      at 
> org.apache.activemq.artemis.protocol.amqp.converter.CoreAmqpConverter.fromCore(CoreAmqpConverter.java:106)
>  ~[artemis-amqp-protocol-2.28.0.jar:2.28.0]     
>      ... 10 more 
> Caused by: java.nio.channels.ClosedChannelException     
>      at sun.nio.ch.FileChannelImpl.ensureOpen(FileChannelImpl.java:165) 
> ~[?:?]     
>      at sun.nio.ch.FileChannelImpl.size(FileChannelImpl.java:416) ~[?:?]     
>      at 
> org.apache.activemq.artemis.core.io.nio.NIOSequentialFile.size(NIOSequentialFile.java:339)
>  ~[artemis-journal-2.28.0.jar:2.28.0]     
>      at 
> 

[jira] [Work logged] (ARTEMIS-4639) Artemis Cluster and NullpointerException in "sending topology"

2024-02-09 Thread ASF GitHub Bot (Jira)


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

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

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




Issue Time Tracking
---

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

> Artemis Cluster and NullpointerException in "sending topology"
> --
>
> Key: ARTEMIS-4639
> URL: https://issues.apache.org/jira/browse/ARTEMIS-4639
> Project: ActiveMQ Artemis
>  Issue Type: Bug
>  Components: Broker, Clustering
>Affects Versions: 2.32.0
>Reporter: Jean-Pascal Briquet
>Assignee: Justin Bertram
>Priority: Major
> Fix For: 2.33.0
>
>  Time Spent: 50m
>  Remaining Estimate: 0h
>
> A {{NullPointerException}} may appear while the "sending topology" operation 
> is being executed.
> *Configuration:*
> Artemis clustering enabled with static connectors using the option 
> {{{}allow-direct-connections-only="true"{}}}. 
> *Broker logs:*
> {noformat}
> 2024-02-06 22:06:14,259 WARN  [org.apache.activemq.artemis.core.client] 
> AMQ212030: error sending topology
> java.lang.NullPointerException: Cannot invoke 
> "org.apache.activemq.artemis.api.core.TransportConfiguration.newTransportConfig(String)"
>  because the return value of 
> "org.apache.activemq.artemis.api.core.client.TopologyMember.getLive()" is null
>   at 
> org.apache.activemq.artemis.core.server.cluster.impl.ClusterConnectionImpl.nodeUP(ClusterConnectionImpl.java:755)
>  ~[artemis-server-2.30.0.jar:2.30.0]
>   at 
> org.apache.activemq.artemis.core.client.impl.Topology$1.run(Topology.java:284)
>  ~[artemis-core-client-2.30.0.jar:2.30.0]
>   at 
> org.apache.activemq.artemis.utils.actors.OrderedExecutor.doTask(OrderedExecutor.java:57)
>  ~[artemis-commons-2.30.0.jar:?]
>   at 
> org.apache.activemq.artemis.utils.actors.OrderedExecutor.doTask(OrderedExecutor.java:32)
>  ~[artemis-commons-2.30.0.jar:?]
>   at 
> org.apache.activemq.artemis.utils.actors.ProcessorBase.executePendingTasks(ProcessorBase.java:68)
>  ~[artemis-commons-2.30.0.jar:?]
>   at 
> java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136)
>  [?:?]
>   at 
> java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635)
>  [?:?]
>   at 
> org.apache.activemq.artemis.utils.ActiveMQThreadFactory$1.run(ActiveMQThreadFactory.java:118)
>  [artemis-commons-2.30.0.jar:?]
> 2024-02-06 22:06:14,260 WARN  [org.apache.activemq.artemis.core.client] 
> AMQ212030: error sending topology
> java.lang.NullPointerException: Cannot invoke 
> "org.apache.activemq.artemis.api.core.TransportConfiguration.getParams()" 
> because "liveConnector" is null
>   at 
> org.apache.activemq.artemis.core.client.impl.TopologyMemberImpl.toURI(TopologyMemberImpl.java:133)
>  ~[artemis-core-client-2.30.0.jar:2.30.0]
>   at 
> org.apache.activemq.artemis.core.protocol.openwire.OpenWireProtocolManager.generateMembersURI(OpenWireProtocolManager.java:536)
>  ~[artemis-openwire-protocol-2.30.0.jar:2.30.0]
>   at 
> org.apache.activemq.artemis.core.protocol.openwire.OpenWireProtocolManager.newConnectionControl(OpenWireProtocolManager.java:521)
>  ~[artemis-openwire-protocol-2.30.0.jar:2.30.0]
>   at 
> org.apache.activemq.artemis.core.protocol.openwire.OpenWireProtocolManager.updateClientClusterInfo(OpenWireProtocolManager.java:288)
>  ~[artemis-openwire-protocol-2.30.0.jar:2.30.0]
>   at 
> org.apache.activemq.artemis.core.protocol.openwire.OpenWireProtocolManager.nodeUP(OpenWireProtocolManager.java:236)
>  ~[artemis-openwire-protocol-2.30.0.jar:2.30.0]
>   at 
> org.apache.activemq.artemis.core.client.impl.Topology$1.run(Topology.java:284)
>  ~[artemis-core-client-2.30.0.jar:2.30.0]
>   at 
> org.apache.activemq.artemis.utils.actors.OrderedExecutor.doTask(OrderedExecutor.java:57)
>  ~[artemis-commons-2.30.0.jar:?]
>   at 
> org.apache.activemq.artemis.utils.actors.OrderedExecutor.doTask(OrderedExecutor.java:32)
>  ~[artemis-commons-2.30.0.jar:?]
>   at 
> org.apache.activemq.artemis.utils.actors.ProcessorBase.executePendingTasks(ProcessorBase.java:68)
>  ~[artemis-commons-2.30.0.jar:?]
>   at 
> java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136)
>  [?:?]
>   at 
> java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635)
>  [?:?]
>   at 
> org.apache.activemq.artemis.utils.ActiveMQThreadFactory$1.run(ActiveMQThreadFactory.java:118)
>  

[jira] [Commented] (ARTEMIS-4639) Artemis Cluster and NullpointerException in "sending topology"

2024-02-09 Thread ASF subversion and git services (Jira)


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

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

Commit 20840cfdf1de78bf6a53aa9a98510cb52456b81a in activemq-artemis's branch 
refs/heads/main from Justin Bertram
[ https://gitbox.apache.org/repos/asf?p=activemq-artemis.git;h=20840cfdf1 ]

ARTEMIS-4639 NPEs when TopologyMember's primary is null


> Artemis Cluster and NullpointerException in "sending topology"
> --
>
> Key: ARTEMIS-4639
> URL: https://issues.apache.org/jira/browse/ARTEMIS-4639
> Project: ActiveMQ Artemis
>  Issue Type: Bug
>  Components: Broker, Clustering
>Affects Versions: 2.32.0
>Reporter: Jean-Pascal Briquet
>Assignee: Justin Bertram
>Priority: Major
> Fix For: 2.33.0
>
>  Time Spent: 40m
>  Remaining Estimate: 0h
>
> A {{NullPointerException}} may appear while the "sending topology" operation 
> is being executed.
> *Configuration:*
> Artemis clustering enabled with static connectors using the option 
> {{{}allow-direct-connections-only="true"{}}}. 
> *Broker logs:*
> {noformat}
> 2024-02-06 22:06:14,259 WARN  [org.apache.activemq.artemis.core.client] 
> AMQ212030: error sending topology
> java.lang.NullPointerException: Cannot invoke 
> "org.apache.activemq.artemis.api.core.TransportConfiguration.newTransportConfig(String)"
>  because the return value of 
> "org.apache.activemq.artemis.api.core.client.TopologyMember.getLive()" is null
>   at 
> org.apache.activemq.artemis.core.server.cluster.impl.ClusterConnectionImpl.nodeUP(ClusterConnectionImpl.java:755)
>  ~[artemis-server-2.30.0.jar:2.30.0]
>   at 
> org.apache.activemq.artemis.core.client.impl.Topology$1.run(Topology.java:284)
>  ~[artemis-core-client-2.30.0.jar:2.30.0]
>   at 
> org.apache.activemq.artemis.utils.actors.OrderedExecutor.doTask(OrderedExecutor.java:57)
>  ~[artemis-commons-2.30.0.jar:?]
>   at 
> org.apache.activemq.artemis.utils.actors.OrderedExecutor.doTask(OrderedExecutor.java:32)
>  ~[artemis-commons-2.30.0.jar:?]
>   at 
> org.apache.activemq.artemis.utils.actors.ProcessorBase.executePendingTasks(ProcessorBase.java:68)
>  ~[artemis-commons-2.30.0.jar:?]
>   at 
> java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136)
>  [?:?]
>   at 
> java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635)
>  [?:?]
>   at 
> org.apache.activemq.artemis.utils.ActiveMQThreadFactory$1.run(ActiveMQThreadFactory.java:118)
>  [artemis-commons-2.30.0.jar:?]
> 2024-02-06 22:06:14,260 WARN  [org.apache.activemq.artemis.core.client] 
> AMQ212030: error sending topology
> java.lang.NullPointerException: Cannot invoke 
> "org.apache.activemq.artemis.api.core.TransportConfiguration.getParams()" 
> because "liveConnector" is null
>   at 
> org.apache.activemq.artemis.core.client.impl.TopologyMemberImpl.toURI(TopologyMemberImpl.java:133)
>  ~[artemis-core-client-2.30.0.jar:2.30.0]
>   at 
> org.apache.activemq.artemis.core.protocol.openwire.OpenWireProtocolManager.generateMembersURI(OpenWireProtocolManager.java:536)
>  ~[artemis-openwire-protocol-2.30.0.jar:2.30.0]
>   at 
> org.apache.activemq.artemis.core.protocol.openwire.OpenWireProtocolManager.newConnectionControl(OpenWireProtocolManager.java:521)
>  ~[artemis-openwire-protocol-2.30.0.jar:2.30.0]
>   at 
> org.apache.activemq.artemis.core.protocol.openwire.OpenWireProtocolManager.updateClientClusterInfo(OpenWireProtocolManager.java:288)
>  ~[artemis-openwire-protocol-2.30.0.jar:2.30.0]
>   at 
> org.apache.activemq.artemis.core.protocol.openwire.OpenWireProtocolManager.nodeUP(OpenWireProtocolManager.java:236)
>  ~[artemis-openwire-protocol-2.30.0.jar:2.30.0]
>   at 
> org.apache.activemq.artemis.core.client.impl.Topology$1.run(Topology.java:284)
>  ~[artemis-core-client-2.30.0.jar:2.30.0]
>   at 
> org.apache.activemq.artemis.utils.actors.OrderedExecutor.doTask(OrderedExecutor.java:57)
>  ~[artemis-commons-2.30.0.jar:?]
>   at 
> org.apache.activemq.artemis.utils.actors.OrderedExecutor.doTask(OrderedExecutor.java:32)
>  ~[artemis-commons-2.30.0.jar:?]
>   at 
> org.apache.activemq.artemis.utils.actors.ProcessorBase.executePendingTasks(ProcessorBase.java:68)
>  ~[artemis-commons-2.30.0.jar:?]
>   at 
> java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136)
>  [?:?]
>   at 
> java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635)
>  [?:?]
>   at 
> org.apache.activemq.artemis.utils.ActiveMQThreadFactory$1.run(ActiveMQThreadFactory.java:118)
>  [artemis-commons-2.30.0.jar:?]{noformat}



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


[jira] [Resolved] (ARTEMIS-4639) Artemis Cluster and NullpointerException in "sending topology"

2024-02-09 Thread Robbie Gemmell (Jira)


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

Robbie Gemmell resolved ARTEMIS-4639.
-
Fix Version/s: 2.33.0
   Resolution: Fixed

> Artemis Cluster and NullpointerException in "sending topology"
> --
>
> Key: ARTEMIS-4639
> URL: https://issues.apache.org/jira/browse/ARTEMIS-4639
> Project: ActiveMQ Artemis
>  Issue Type: Bug
>  Components: Broker, Clustering
>Affects Versions: 2.32.0
>Reporter: Jean-Pascal Briquet
>Assignee: Justin Bertram
>Priority: Major
> Fix For: 2.33.0
>
>  Time Spent: 40m
>  Remaining Estimate: 0h
>
> A {{NullPointerException}} may appear while the "sending topology" operation 
> is being executed.
> *Configuration:*
> Artemis clustering enabled with static connectors using the option 
> {{{}allow-direct-connections-only="true"{}}}. 
> *Broker logs:*
> {noformat}
> 2024-02-06 22:06:14,259 WARN  [org.apache.activemq.artemis.core.client] 
> AMQ212030: error sending topology
> java.lang.NullPointerException: Cannot invoke 
> "org.apache.activemq.artemis.api.core.TransportConfiguration.newTransportConfig(String)"
>  because the return value of 
> "org.apache.activemq.artemis.api.core.client.TopologyMember.getLive()" is null
>   at 
> org.apache.activemq.artemis.core.server.cluster.impl.ClusterConnectionImpl.nodeUP(ClusterConnectionImpl.java:755)
>  ~[artemis-server-2.30.0.jar:2.30.0]
>   at 
> org.apache.activemq.artemis.core.client.impl.Topology$1.run(Topology.java:284)
>  ~[artemis-core-client-2.30.0.jar:2.30.0]
>   at 
> org.apache.activemq.artemis.utils.actors.OrderedExecutor.doTask(OrderedExecutor.java:57)
>  ~[artemis-commons-2.30.0.jar:?]
>   at 
> org.apache.activemq.artemis.utils.actors.OrderedExecutor.doTask(OrderedExecutor.java:32)
>  ~[artemis-commons-2.30.0.jar:?]
>   at 
> org.apache.activemq.artemis.utils.actors.ProcessorBase.executePendingTasks(ProcessorBase.java:68)
>  ~[artemis-commons-2.30.0.jar:?]
>   at 
> java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136)
>  [?:?]
>   at 
> java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635)
>  [?:?]
>   at 
> org.apache.activemq.artemis.utils.ActiveMQThreadFactory$1.run(ActiveMQThreadFactory.java:118)
>  [artemis-commons-2.30.0.jar:?]
> 2024-02-06 22:06:14,260 WARN  [org.apache.activemq.artemis.core.client] 
> AMQ212030: error sending topology
> java.lang.NullPointerException: Cannot invoke 
> "org.apache.activemq.artemis.api.core.TransportConfiguration.getParams()" 
> because "liveConnector" is null
>   at 
> org.apache.activemq.artemis.core.client.impl.TopologyMemberImpl.toURI(TopologyMemberImpl.java:133)
>  ~[artemis-core-client-2.30.0.jar:2.30.0]
>   at 
> org.apache.activemq.artemis.core.protocol.openwire.OpenWireProtocolManager.generateMembersURI(OpenWireProtocolManager.java:536)
>  ~[artemis-openwire-protocol-2.30.0.jar:2.30.0]
>   at 
> org.apache.activemq.artemis.core.protocol.openwire.OpenWireProtocolManager.newConnectionControl(OpenWireProtocolManager.java:521)
>  ~[artemis-openwire-protocol-2.30.0.jar:2.30.0]
>   at 
> org.apache.activemq.artemis.core.protocol.openwire.OpenWireProtocolManager.updateClientClusterInfo(OpenWireProtocolManager.java:288)
>  ~[artemis-openwire-protocol-2.30.0.jar:2.30.0]
>   at 
> org.apache.activemq.artemis.core.protocol.openwire.OpenWireProtocolManager.nodeUP(OpenWireProtocolManager.java:236)
>  ~[artemis-openwire-protocol-2.30.0.jar:2.30.0]
>   at 
> org.apache.activemq.artemis.core.client.impl.Topology$1.run(Topology.java:284)
>  ~[artemis-core-client-2.30.0.jar:2.30.0]
>   at 
> org.apache.activemq.artemis.utils.actors.OrderedExecutor.doTask(OrderedExecutor.java:57)
>  ~[artemis-commons-2.30.0.jar:?]
>   at 
> org.apache.activemq.artemis.utils.actors.OrderedExecutor.doTask(OrderedExecutor.java:32)
>  ~[artemis-commons-2.30.0.jar:?]
>   at 
> org.apache.activemq.artemis.utils.actors.ProcessorBase.executePendingTasks(ProcessorBase.java:68)
>  ~[artemis-commons-2.30.0.jar:?]
>   at 
> java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136)
>  [?:?]
>   at 
> java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635)
>  [?:?]
>   at 
> org.apache.activemq.artemis.utils.ActiveMQThreadFactory$1.run(ActiveMQThreadFactory.java:118)
>  [artemis-commons-2.30.0.jar:?]{noformat}



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


[jira] [Updated] (ARTEMIS-4217) AMQ111005: Failed to convert message. Sending it to Dead Letter Address.

2024-02-09 Thread daves (Jira)


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

daves updated ARTEMIS-4217:
---
Attachment: ArtemisReproMemory.zip

> AMQ111005: Failed to convert message. Sending it to Dead Letter Address.
> 
>
> Key: ARTEMIS-4217
> URL: https://issues.apache.org/jira/browse/ARTEMIS-4217
> Project: ActiveMQ Artemis
>  Issue Type: Bug
>  Components: AMQP
>Affects Versions: 2.28.0
> Environment: Windows Server 2022 21H2
> openjdk 19.0.1 2022-10-18
> OpenJDK Runtime Environment (build 19.0.1+10-21)
> OpenJDK 64-Bit Server VM (build 19.0.1+10-21, mixed mode, sharing)
>Reporter: daves
>Priority: Major
> Attachments: ArtemisConvertError.zip, ArtemisReproMemory.zip, 
> image-2023-06-16-15-59-25-689.png, image-2023-06-16-15-59-25-721.png
>
>
> Some of the AMQP messages sent by my client never arrive at the consumer. In 
> the Artemis log I found the following exception:
> {noformat}
> 2023-03-23 18:06:58,084 WARN  
> [org.apache.activemq.artemis.protocol.amqp.logger] AMQ111005: Failed to 
> convert message. Sending it to Dead Letter Address. 
> org.apache.activemq.artemis.protocol.amqp.converter.coreWrapper.ConversionException:
>  java.nio.channels.ClosedChannelException
>      at 
> org.apache.activemq.artemis.protocol.amqp.converter.CoreAmqpConverter.fromCore(CoreAmqpConverter.java:318)
>  ~[artemis-amqp-protocol-2.28.0.jar:2.28.0]
>      at 
> org.apache.activemq.artemis.protocol.amqp.converter.CoreAmqpConverter.checkAMQP(CoreAmqpConverter.java:79)
>  ~[artemis-amqp-protocol-2.28.0.jar:2.28.0]     
>      at 
> org.apache.activemq.artemis.protocol.amqp.proton.ProtonServerSenderContext.executeDelivery(ProtonServerSenderContext.java:561)
>  ~[artemis-amqp-protocol-2.28.0.jar:2.28.0]     
>      at 
> org.apache.activemq.artemis.core.server.impl.MessageReferenceImpl.run(MessageReferenceImpl.java:131)
>  ~[artemis-server-2.28.0.jar:2.28.0]     
>      at 
> io.netty.util.concurrent.AbstractEventExecutor.runTask(AbstractEventExecutor.java:174)
>  ~[netty-common-4.1.86.Final.jar:4.1.86.Final]     
>      at 
> io.netty.util.concurrent.AbstractEventExecutor.safeExecute(AbstractEventExecutor.java:167)
>  ~[netty-common-4.1.86.Final.jar:4.1.86.Final]     
>      at 
> io.netty.util.concurrent.SingleThreadEventExecutor.runAllTasks(SingleThreadEventExecutor.java:470)
>  ~[netty-common-4.1.86.Final.jar:4.1.86.Final]     
>      at io.netty.channel.nio.NioEventLoop.run(NioEventLoop.java:569) 
> ~[netty-transport-4.1.86.Final.jar:4.1.86.Final]     
>      at 
> io.netty.util.concurrent.SingleThreadEventExecutor$4.run(SingleThreadEventExecutor.java:997)
>  ~[netty-common-4.1.86.Final.jar:4.1.86.Final]     
>      at 
> io.netty.util.internal.ThreadExecutorMap$2.run(ThreadExecutorMap.java:74) 
> ~[netty-common-4.1.86.Final.jar:4.1.86.Final]     
>      at 
> org.apache.activemq.artemis.utils.ActiveMQThreadFactory$1.run(ActiveMQThreadFactory.java:118)
>  ~[artemis-commons-2.28.0.jar:?] Caused by: java.lang.RuntimeException: 
> java.nio.channels.ClosedChannelException     
>      at 
> org.apache.activemq.artemis.core.persistence.impl.journal.LargeBody.getBodyBufferSize(LargeBody.java:293)
>  ~[artemis-server-2.28.0.jar:2.28.0]     
>      at 
> org.apache.activemq.artemis.core.persistence.impl.journal.LargeServerMessageImpl.getBodyBufferSize(LargeServerMessageImpl.java:263)
>  ~[artemis-server-2.28.0.jar:2.28.0]     
>      at 
> org.apache.activemq.artemis.protocol.amqp.converter.coreWrapper.CoreBytesMessageWrapper.getBodyLength(CoreBytesMessageWrapper.java:98)
>  ~[artemis-amqp-protocol-2.28.0.jar:2.28.0]     
>      at 
> org.apache.activemq.artemis.protocol.amqp.converter.coreWrapper.CoreBytesMessageWrapper.getBinaryFromMessageBody(CoreBytesMessageWrapper.java:68)
>  ~[artemis-amqp-protocol-2.28.0.jar:2.28.0]     
>      at 
> org.apache.activemq.artemis.protocol.amqp.converter.coreWrapper.CoreBytesMessageWrapper.createAMQPSection(CoreBytesMessageWrapper.java:78)
>  ~[artemis-amqp-protocol-2.28.0.jar:2.28.0]     
>      at 
> org.apache.activemq.artemis.protocol.amqp.converter.CoreAmqpConverter.fromCore(CoreAmqpConverter.java:106)
>  ~[artemis-amqp-protocol-2.28.0.jar:2.28.0]     
>      ... 10 more 
> Caused by: java.nio.channels.ClosedChannelException     
>      at sun.nio.ch.FileChannelImpl.ensureOpen(FileChannelImpl.java:165) 
> ~[?:?]     
>      at sun.nio.ch.FileChannelImpl.size(FileChannelImpl.java:416) ~[?:?]     
>      at 
> org.apache.activemq.artemis.core.io.nio.NIOSequentialFile.size(NIOSequentialFile.java:339)
>  ~[artemis-journal-2.28.0.jar:2.28.0]     
>      at 
> org.apache.activemq.artemis.core.persistence.impl.journal.LargeBody.getBodyBufferSize(LargeBody.java:285)
>  ~[artemis-server-2.28.0.jar:2.28.0]     
>      at 
>