[ https://issues.apache.org/jira/browse/ARTEMIS-3572?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17443792#comment-17443792 ]
Francesco Nigro edited comment on ARTEMIS-3572 at 11/15/21, 12:20 PM: ---------------------------------------------------------------------- !pre.png! !post.png! !msg-pre.png! !msg-post.png! As said in the previous comments (there are other opened issue re this by me, in the past), the additional memory footprint is due to heap usage due to the additional properties (that are not cached too!!!!): just looking at the TypedProperties ie properties field, help to see it. I'm going to send a PR to improve it, but as said, the reason is known properties map before moving is 368 bytes, while after, is 696 bytes (!!!) Address size try to account memory heap occupation as well was (Author: nigrofranz): !pre.png! !post.png! !msg-pre.png! !msg-post.png! As said in the previous comments (there are other opened issue re this by me, in the past), the additional memory footprint is due to heap usage due to the additional properties (that are not cached too!!!!): just looking at the TypedProperties ie properties field, help to see it. I'm going to send a PR to improve it, but as said, the reason is known > Address Memory Used increases by 60% when messages are moved to another queue > ----------------------------------------------------------------------------- > > Key: ARTEMIS-3572 > URL: https://issues.apache.org/jira/browse/ARTEMIS-3572 > Project: ActiveMQ Artemis > Issue Type: Bug > Affects Versions: 2.16.0 > Reporter: Daniel Claesén > Priority: Major > Attachments: msg-post.png, msg-pre.png, post.png, pre.png, psot.png > > > When I manually move messages from one durable queue to another the address > memory used increases by 60%. I expect the address memory used to remain the > same as before the messages were moved. > The same thing happens when the broker moves messages automatically from a > queue to the DLQ. > Steps to reproduce: > * Using the GUI in the console: > ** Create a new multicast address named "mytest" > ** Select the address and create a durable multicast queue named "mytest" > * Use the artemis CLI to produce messages. For example like this: > ** artemis producer --user admin --password admin --url > tcp://localhost:61616 --destination topic://mytest --message-count 1000 > --message-size 40960 --threads 4 > * Note the reported address memory used in the console > ** In the example above it is 160.26MB > * Use the GUI in the console to move messages. For example with the > following operation: > ** moveMessages(String, String) > *** Keep the filter param empty and enter "DLQ" in the otherQueueName param. > * The reported address memory used in the console is now 60% higher > ** In my example the reported size was 256.43MB > > I have a Red Hat ticket > ([https://access.redhat.com/support/cases/#/case/03076511]) about this and it > was suggested that I should create Jira ticket to discuss it further with > developers. It was mentioned that management calls themselves use memory and > that this could be causing the issue, but I don't see why management calls > would use address memory. -- This message was sent by Atlassian Jira (v8.20.1#820001)