[
https://issues.apache.org/jira/browse/ARTEMIS-2088?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]
clebert suconic updated ARTEMIS-2088:
-------------------------------------
Fix Version/s: (was: 2.6.4)
2.6.5
> Page.write() should throw exception if file is closed
> -----------------------------------------------------
>
> Key: ARTEMIS-2088
> URL: https://issues.apache.org/jira/browse/ARTEMIS-2088
> Project: ActiveMQ Artemis
> Issue Type: Bug
> Components: Broker
> Affects Versions: 2.6.3
> Reporter: Howard Gao
> Assignee: Howard Gao
> Priority: Major
> Fix For: 2.6.5
>
>
> In Page.write(final PagedMessage message) if the page file is closed it
> returns silently. The caller has no way to know that if the message is paged
> to file or not.
> It should throw an exception so that the caller can handle it correctly.
> This causes random failure in test
> org.hornetq.tests.integration.client.PagingTest#testExpireLargeMessageOnPaging().
> The test shows that when the server stops it closes the page file. In the
> mean time a message is expired to the expiry queue.
> and if the expiry queue is in paging mode, it goes to Page.write() and
> returns without any error. The result is that the message is removed from the
> original queue and not added to the expiry queue.
> If we throw exception here it make the expiration failed, the message will
> not be removed from the orginal queue. Next time broker is started, the
> message will be reloaded and expired again. no message lost.
--
This message was sent by Atlassian JIRA
(v7.6.3#76005)