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

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

                Author: ASF GitHub Bot
            Created on: 01/Apr/20 09:32
            Start Date: 01/Apr/20 09:32
    Worklog Time Spent: 10m 
      Work Description: franz1981 commented on issue #3044: ARTEMIS-2676 
PageCursorProviderImpl::cleanup can save decoding pages without large messages
URL: https://github.com/apache/activemq-artemis/pull/3044#issuecomment-607084834
 
 
   @clebertsuconic I see on `PagedMessageImpl` this check:
   ```java
      public boolean isLargeMessage() {
         return message instanceof ICoreMessage && 
((ICoreMessage)message).isLargeMessage();
      }
   ```
   and 
   ```java
      @Override
      public void encode(final ActiveMQBuffer buffer) {
         buffer.writeLong(transactionID);
   
         boolean isLargeMessage = isLargeMessage();
   
         buffer.writeBoolean(isLargeMessage);
   ```
   why we cannot fix check/encode/decode to correctly write the 
`isLargeMessage` prefix field in an OO way without doing it ad-hoc if is Core 
as it is now?
   The only part to take care is to warn users to not upgrade the broker if 
there are paged large messages (with AMQP).
   
   I've added a new commit that tries to minimize the changes and that is 
taking this route: I will add some tests to validate this new behaviour: 
please, let me know how it looks :+1: 
 
----------------------------------------------------------------
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
 
For queries about this service, please contact Infrastructure at:
[email protected]


Issue Time Tracking
-------------------

    Worklog Id:     (was: 413926)
    Time Spent: 4h 20m  (was: 4h 10m)

> PageCursorProviderImpl::cleanup can save decoding pages without large messages
> ------------------------------------------------------------------------------
>
>                 Key: ARTEMIS-2676
>                 URL: https://issues.apache.org/jira/browse/ARTEMIS-2676
>             Project: ActiveMQ Artemis
>          Issue Type: Improvement
>          Components: Broker
>    Affects Versions: 2.11.0
>            Reporter: Francesco Nigro
>            Priority: Major
>          Time Spent: 4h 20m
>  Remaining Estimate: 0h
>
> PageCurosrProviderImpl::cleanup is calling 
> PageCurosrProviderImpl::finishCleanup that's fully reading pages (when not 
> present in the PageCache), just to trigger large messages delete.
> The decoding phase could be skipped and possibly the page read as well.



--
This message was sent by Atlassian Jira
(v8.3.4#803005)

Reply via email to