[
https://issues.apache.org/jira/browse/ARTEMIS-975?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17063509#comment-17063509
]
Benjamin Graf commented on ARTEMIS-975:
---------------------------------------
The Latest findings through trace logging and heap dump analysis:
Between paging, depaging recordinfo entries are handled by several txids
causing some of them to stuck as transactionholder events not being completely
handled and removed from database backend.
Since a "lot" of transactionholder events are still addressed after consuming
all events it seems there is an issue how the whole thing is designed.
> Reading messages from page causes lost entries in db backend
> ------------------------------------------------------------
>
> Key: ARTEMIS-975
> URL: https://issues.apache.org/jira/browse/ARTEMIS-975
> Project: ActiveMQ Artemis
> Issue Type: Bug
> Components: Broker
> Affects Versions: 2.0.0
> Reporter: Benjamin Graf
> Priority: Major
> Attachments: screenshot-1.png
>
>
> Consuming messages from pages with a db as persistence backend leaves commit
> records in message_table which doesn't get cleaned up. Seems that depaging
> does not add txids to internal map.
> SQL script for cleanup (no known side effect):
> {code}
> DELETE
> FROM MESSAGE_TABLE
> WHERE txid IN
> (SELECT txid
> FROM
> (SELECT count(*) AS cnt,
> txid
> FROM MESSAGE_TABLE
> WHERE txid IN
> (SELECT txid
> FROM MESSAGE_TABLE
> WHERE recordtype = 18)
> GROUP BY txid)AS m
> WHERE m.cnt=1)
> {code}
--
This message was sent by Atlassian Jira
(v8.3.4#803005)