[
https://issues.apache.org/jira/browse/AMQ-7009?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16686570#comment-16686570
]
ASF subversion and git services commented on AMQ-7009:
------------------------------------------------------
Commit bc8c78cd32b27dd1806fe2246c21241ab68a1fde in activemq's branch
refs/heads/master from gtully
[ https://git-wip-us.apache.org/repos/asf?p=activemq.git;h=bc8c78c ]
AMQ-7009 - apply fix to memorymessagestore setBatch with thanks to Nezih BEN
FREDJ for test and suggestion
> ActiveMQ stop delivering messages
> ---------------------------------
>
> Key: AMQ-7009
> URL: https://issues.apache.org/jira/browse/AMQ-7009
> Project: ActiveMQ
> Issue Type: Bug
> Affects Versions: 5.15.4
> Reporter: Nezih BEN FREDJ
> Priority: Critical
> Attachments: MemoryMessageStore.java,
> MemoryMessageStoreQueueCursorTest.java, activemq.log
>
>
> We have a problem with ActiveMQ 5.15.4, it stop deliver messages to clients.
> This happens completely randomly and we are not able to give a test case that
> reproduce the problem
> Activemq is configured to use the « memoryPersistenceAdapter »
>
> When examining memory dumps, we identified incoherent situation in the class
> MemoryMessageStore that can lead to stop delivering messages. When :
> - MemoryMessageStore.recoverNextMessages(...) is called
> - « lastBatchId » is not null
> - « messageTable » does not contains any entry with « lastBatchId » as key
> no messages are recovered
>
> We added logs to try to understand how it is possible to have a non null «
> lastBatchId » and « messageTable » with no entry having « lastBatchId » as
> key.
>
> We noticed that the method setBatch is called with a non null « messageId »
> parameter, but no message with this id is inserted in « messageTable ». After
> that, when the method MemoryMessageStore.recoverNextMessages(...) is called,
> it does nothing and no messages are recoverd. And the system go in a what
> looks like an endless loop.
>
> We are testing a temporary solution by resetting « lastBatchId » to null when
> the incoherent situation is detected.
>
> Can you help us resolving the problem at the source and not just get around.
> I joined modified source code of the class MemoryMessageStore and an extract
> of the log file.
--
This message was sent by Atlassian JIRA
(v7.6.3#76005)