This is an automated email from the ASF dual-hosted git repository. ifesdjeen pushed a commit to branch CASSANDRA-19944-persistent-fields in repository https://gitbox.apache.org/repos/asf/cassandra-accord.git
commit 11c49113f1bb599a90e1d9be48e351f4c2a06051 Author: Alex Petrov <oleksandr.pet...@gmail.com> AuthorDate: Thu Sep 26 20:47:36 2024 +0200 Make it compile --- .../src/main/java/accord/local/CommandStore.java | 13 +++++++++++++ .../src/main/java/accord/local/CommandStores.java | 17 +++++++++++++++++ 2 files changed, 30 insertions(+) diff --git a/accord-core/src/main/java/accord/local/CommandStore.java b/accord-core/src/main/java/accord/local/CommandStore.java index 65d7cd5a..f107eac3 100644 --- a/accord-core/src/main/java/accord/local/CommandStore.java +++ b/accord-core/src/main/java/accord/local/CommandStore.java @@ -33,6 +33,7 @@ import java.util.function.Function; import java.util.function.Supplier; import javax.annotation.Nullable; +import com.google.common.annotations.VisibleForTesting; import com.google.common.collect.ImmutableSortedMap; import org.slf4j.Logger; import org.slf4j.LoggerFactory; @@ -208,6 +209,12 @@ public abstract class CommandStore implements AgentExecutor return agent; } + @VisibleForTesting // TODO: check if this is right + public void updateRangesForEpoch() + { + execute(empty(), this::updateRangesForEpoch).beginAsResult(); + } + public void updateRangesForEpoch(SafeCommandStore safeStore) { EpochUpdate update = epochUpdateHolder.get(); @@ -634,6 +641,12 @@ public abstract class CommandStore implements AgentExecutor return durableBefore; } + @VisibleForTesting + public final NavigableMap<TxnId, Ranges> bootstrapBeganAt() { return bootstrapBeganAt; } + + @VisibleForTesting + public NavigableMap<Timestamp, Ranges> safeToRead() { return safeToRead; } + public final boolean isRejectedIfNotPreAccepted(TxnId txnId, Unseekables<?> participants) { if (rejectBefore == null) diff --git a/accord-core/src/main/java/accord/local/CommandStores.java b/accord-core/src/main/java/accord/local/CommandStores.java index a6b7b030..34178574 100644 --- a/accord-core/src/main/java/accord/local/CommandStores.java +++ b/accord-core/src/main/java/accord/local/CommandStores.java @@ -141,6 +141,18 @@ public abstract class CommandStores // TODO (expected): merge with RedundantBefore, and standardise executeRanges() to treat removing stale ranges the same as adding new epoch ranges public static class RangesForEpoch { + public static class Snapshot + { + public final long[] epochs; + public final Ranges[] ranges; + + public Snapshot(long[] epochs, Ranges[] ranges) + { + this.epochs = epochs; + this.ranges = ranges; + } + } + final long[] epochs; final Ranges[] ranges; final CommandStore store; @@ -159,6 +171,11 @@ public abstract class CommandStores this.store = store; } + public Snapshot snapshot() + { + return new Snapshot(epochs, ranges); + } + public RangesForEpoch withRanges(long epoch, Ranges latestRanges) { Invariants.checkArgument(epochs.length == 0 || epochs[epochs.length - 1] <= epoch); --------------------------------------------------------------------- To unsubscribe, e-mail: commits-unsubscr...@cassandra.apache.org For additional commands, e-mail: commits-h...@cassandra.apache.org