Repository: activemq Updated Branches: refs/heads/activemq-5.14.x b8a7aa80e -> 0a46ffdb5
[AMQ-6644] - ensure journal files past last update are not included in the logged gc set in error Project: http://git-wip-us.apache.org/repos/asf/activemq/repo Commit: http://git-wip-us.apache.org/repos/asf/activemq/commit/0bbb82e7 Tree: http://git-wip-us.apache.org/repos/asf/activemq/tree/0bbb82e7 Diff: http://git-wip-us.apache.org/repos/asf/activemq/diff/0bbb82e7 Branch: refs/heads/activemq-5.14.x Commit: 0bbb82e7e50754ca8d710677996b1af06c569887 Parents: b8a7aa8 Author: gtully <[email protected]> Authored: Tue Apr 4 12:21:31 2017 +0100 Committer: Christopher L. Shannon (cshannon) <[email protected]> Committed: Tue Apr 11 10:31:25 2017 -0400 ---------------------------------------------------------------------- .../java/org/apache/activemq/store/kahadb/MessageDatabase.java | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) ---------------------------------------------------------------------- http://git-wip-us.apache.org/repos/asf/activemq/blob/0bbb82e7/activemq-kahadb-store/src/main/java/org/apache/activemq/store/kahadb/MessageDatabase.java ---------------------------------------------------------------------- diff --git a/activemq-kahadb-store/src/main/java/org/apache/activemq/store/kahadb/MessageDatabase.java b/activemq-kahadb-store/src/main/java/org/apache/activemq/store/kahadb/MessageDatabase.java index d10c064..8d19104 100644 --- a/activemq-kahadb-store/src/main/java/org/apache/activemq/store/kahadb/MessageDatabase.java +++ b/activemq-kahadb-store/src/main/java/org/apache/activemq/store/kahadb/MessageDatabase.java @@ -1733,7 +1733,8 @@ public abstract class MessageDatabase extends ServiceSupport implements BrokerSe } if (lastUpdate != null) { - gcCandidateSet.remove(lastUpdate.getDataFileId()); + // we won't delete past the last update, ackCompaction journal can be a candidate in error + gcCandidateSet.removeAll(new TreeSet<Integer>(gcCandidateSet.tailSet(lastUpdate.getDataFileId()))); } // Don't GC files under replication
