This is an automated email from the ASF dual-hosted git repository. ifesdjeen pushed a commit to branch trunk in repository https://gitbox.apache.org/repos/asf/cassandra-accord.git
The following commit(s) were added to refs/heads/trunk by this push: new f9827e73 Mark min epoch - 1 as truncated, i.e. restore previous truncated state f9827e73 is described below commit f9827e7343365847010bd25b21da69b1f76bdba4 Author: Alex Petrov <oleksandr.pet...@gmail.com> AuthorDate: Tue May 27 16:35:35 2025 +0200 Mark min epoch - 1 as truncated, i.e. restore previous truncated state Patch by Alex Petrov; reviewed by Benedict Elliott Smith for CASSANDRA-20675. --- .../main/java/accord/impl/AbstractConfigurationService.java | 12 ++++++++++++ accord-core/src/main/java/accord/local/CommandStores.java | 8 ++++++++ 2 files changed, 20 insertions(+) diff --git a/accord-core/src/main/java/accord/impl/AbstractConfigurationService.java b/accord-core/src/main/java/accord/impl/AbstractConfigurationService.java index 4fc927f0..0b5e45b2 100644 --- a/accord-core/src/main/java/accord/impl/AbstractConfigurationService.java +++ b/accord-core/src/main/java/accord/impl/AbstractConfigurationService.java @@ -258,6 +258,13 @@ public abstract class AbstractConfigurationService<EpochState extends AbstractCo return getOrCreate(epoch).acknowledged; } + public synchronized void unsafeMarkTruncated() + { + long minEpoch = minEpoch(); + if (minEpoch > 0) + lastTruncated = minEpoch - 1; + } + public synchronized void truncateUntil(long epoch) { Invariants.requireArgument(epoch <= maxEpoch(), "epoch %d > %d", epoch, maxEpoch()); @@ -376,6 +383,11 @@ public abstract class AbstractConfigurationService<EpochState extends AbstractCo topologyUpdatePostListenerNotify(topology); } + public void unsafeMarkTruncated() + { + epochs.unsafeMarkTruncated(); + } + public void reportTopology(Topology topology) { reportTopology(topology, false, true); diff --git a/accord-core/src/main/java/accord/local/CommandStores.java b/accord-core/src/main/java/accord/local/CommandStores.java index 8fc0a93b..8e12ca1f 100644 --- a/accord-core/src/main/java/accord/local/CommandStores.java +++ b/accord-core/src/main/java/accord/local/CommandStores.java @@ -484,6 +484,14 @@ public abstract class CommandStores return current.local; } + public void forEach(BiConsumer<CommandStore, RangesForEpoch> forEach) + { + for (ShardHolder shard : current.shards) + { + forEach.accept(shard.store, shard.ranges); + } + } + public DataStore dataStore() { return supplier.store; --------------------------------------------------------------------- To unsubscribe, e-mail: commits-unsubscr...@cassandra.apache.org For additional commands, e-mail: commits-h...@cassandra.apache.org