GitHub user wy96f opened a pull request:

    https://github.com/apache/activemq-artemis/pull/2446

    ARTEMIS-2188 fix address size leak caused by large page message

    When we write a paged large message, 
addLiveMessage->incrementDelayDeletionCount->
    
    incrementRefCount->onDurableUp is called where pagingstore size and global 
size is added.
    
    The page where the large message resides maybe evicted from cache.
    
    When the page is deleted, 
LargeServerMessageImpl::decrementDelayDeletionCount is called the last time but 
the large message is not the original one which means context is null and 
nonDurableDown is not called resulting in pagingstore size and global size not 
properly subtracted.
    
    Writing large paged message should be handled like regular paged message. 
The large paged message doesn't account for the memory size, we don't need to 
call PagingStoreImpl::onDurableUp.

You can merge this pull request into a Git repository by running:

    $ git pull https://github.com/wy96f/activemq-artemis fix_address_size_leak

Alternatively you can review and apply these changes as the patch at:

    https://github.com/apache/activemq-artemis/pull/2446.patch

To close this pull request, make a commit to your master/trunk branch
with (at least) the following in the commit message:

    This closes #2446
    
----
commit 3eaa656d40ecc3744ee148ddac47316be466647a
Author: yang wei <wy96fyw@...>
Date:   2018-11-29T14:52:16Z

    ARTEMIS-2188 fix address size leak caused by large page message

----


---

Reply via email to