Add support for topology reconfigurations
authorBlake Eggleston <bdeggleston@gmail.com>
Thu, 14 Oct 2021 18:18:19 +0000 (11:18 -0700)
committerBlake Eggleston <blake@ultrablake.com>
Mon, 11 Apr 2022 16:17:26 +0000 (09:17 -0700)
commitb71481c74479303e66589f1d61662eae0f4df247
treefca64bda377f8b72cd00c74b3b5f5101dbdb6bdb
parentaec91ad7e2ca439d857d928658346d93c342f51f
Add support for topology reconfigurations

Patch by Blake Eggleston; Reviewed by Benedict Elliott Smith for CASSANDRA-17095
90 files changed:
.gitignore
accord-core/build.gradle
accord-core/src/main/java/accord/api/ConfigurationService.java [new file with mode: 0644]
accord-core/src/main/java/accord/api/KeyRange.java
accord-core/src/main/java/accord/coordinate/AcceptPhase.java
accord-core/src/main/java/accord/coordinate/Agree.java
accord-core/src/main/java/accord/coordinate/Agreed.java
accord-core/src/main/java/accord/coordinate/Coordinate.java
accord-core/src/main/java/accord/coordinate/Execute.java
accord-core/src/main/java/accord/coordinate/Recover.java
accord-core/src/main/java/accord/coordinate/tracking/AbstractQuorumTracker.java
accord-core/src/main/java/accord/coordinate/tracking/AbstractResponseTracker.java
accord-core/src/main/java/accord/coordinate/tracking/FastPathTracker.java
accord-core/src/main/java/accord/coordinate/tracking/QuorumTracker.java
accord-core/src/main/java/accord/coordinate/tracking/ReadTracker.java
accord-core/src/main/java/accord/local/Command.java
accord-core/src/main/java/accord/local/CommandStore.java
accord-core/src/main/java/accord/local/CommandStores.java
accord-core/src/main/java/accord/local/CommandsForKey.java
accord-core/src/main/java/accord/local/Node.java
accord-core/src/main/java/accord/messages/Accept.java
accord-core/src/main/java/accord/messages/Apply.java
accord-core/src/main/java/accord/messages/BeginRecovery.java
accord-core/src/main/java/accord/messages/Commit.java
accord-core/src/main/java/accord/messages/PreAccept.java
accord-core/src/main/java/accord/messages/ReadData.java
accord-core/src/main/java/accord/messages/TxnRequest.java [new file with mode: 0644]
accord-core/src/main/java/accord/messages/WaitOnCommit.java
accord-core/src/main/java/accord/topology/KeyRanges.java
accord-core/src/main/java/accord/topology/Shard.java
accord-core/src/main/java/accord/topology/Shards.java [deleted file]
accord-core/src/main/java/accord/topology/Topologies.java [new file with mode: 0644]
accord-core/src/main/java/accord/topology/Topology.java
accord-core/src/main/java/accord/topology/TopologyManager.java [new file with mode: 0644]
accord-core/src/main/java/accord/txn/Ballot.java
accord-core/src/main/java/accord/txn/Keys.java
accord-core/src/main/java/accord/txn/Timestamp.java
accord-core/src/main/java/accord/txn/Txn.java
accord-core/src/main/java/accord/txn/TxnId.java
accord-core/src/main/java/accord/utils/IndexedBiFunction.java [new file with mode: 0644]
accord-core/src/test/java/accord/KeysTest.java [new file with mode: 0644]
accord-core/src/test/java/accord/Utils.java
accord-core/src/test/java/accord/api/TestableConfigurationService.java [new file with mode: 0644]
accord-core/src/test/java/accord/burn/BurnTest.java
accord-core/src/test/java/accord/burn/BurnTestConfigurationService.java [new file with mode: 0644]
accord-core/src/test/java/accord/burn/ReconcilingLogger.java [new file with mode: 0644]
accord-core/src/test/java/accord/burn/ReconcilingLoggerTest.java [new file with mode: 0644]
accord-core/src/test/java/accord/burn/ReconcilingOutputStreams.java [deleted file]
accord-core/src/test/java/accord/burn/TopologyUpdate.java [new file with mode: 0644]
accord-core/src/test/java/accord/coordinate/CoordinateTest.java
accord-core/src/test/java/accord/coordinate/PreacceptTrackerTest.java
accord-core/src/test/java/accord/coordinate/RecoverTest.java
accord-core/src/test/java/accord/coordinate/TopologyChangeTest.java [new file with mode: 0644]
accord-core/src/test/java/accord/coordinate/tracking/QuorumTrackerTest.java
accord-core/src/test/java/accord/coordinate/tracking/ReadTrackerTest.java
accord-core/src/test/java/accord/impl/IntHashKey.java
accord-core/src/test/java/accord/impl/IntKey.java
accord-core/src/test/java/accord/impl/TopologyFactory.java
accord-core/src/test/java/accord/impl/TopologyUtils.java
accord-core/src/test/java/accord/impl/basic/Cluster.java
accord-core/src/test/java/accord/impl/basic/PropagatingPendingQueue.java [new file with mode: 0644]
accord-core/src/test/java/accord/impl/list/ListAgent.java
accord-core/src/test/java/accord/impl/list/ListRequest.java
accord-core/src/test/java/accord/impl/list/ListResult.java
accord-core/src/test/java/accord/impl/mock/EpochSync.java [new file with mode: 0644]
accord-core/src/test/java/accord/impl/mock/MockCluster.java
accord-core/src/test/java/accord/impl/mock/MockConfigurationService.java [new file with mode: 0644]
accord-core/src/test/java/accord/local/CommandStoreTest.java [deleted file]
accord-core/src/test/java/accord/local/CommandTest.java [new file with mode: 0644]
accord-core/src/test/java/accord/local/NodeTest.java [new file with mode: 0644]
accord-core/src/test/java/accord/messages/PreAcceptTest.java
accord-core/src/test/java/accord/messages/TxnRequestScopeTest.java [new file with mode: 0644]
accord-core/src/test/java/accord/topology/ShardTest.java
accord-core/src/test/java/accord/topology/TopologyManagerTest.java [new file with mode: 0644]
accord-core/src/test/java/accord/topology/TopologyRandomizer.java [new file with mode: 0644]
accord-core/src/test/java/accord/topology/TopologyTest.java
accord-core/src/test/java/accord/utils/EpochFunction.java [new file with mode: 0644]
accord-core/src/test/java/accord/utils/KeyRangesTest.java
accord-core/src/test/java/accord/utils/MessageTask.java [new file with mode: 0644]
accord-core/src/test/java/accord/verify/SerializabilityVerifier.java
accord-core/src/test/java/accord/verify/StrictSerializabilityVerifier.java [new file with mode: 0644]
accord-core/src/test/java/accord/verify/StrictSerializabilityVerifierTest.java [new file with mode: 0644]
accord-core/src/test/resources/burn-logback.xml [new file with mode: 0644]
accord-maelstrom/src/main/java/accord/maelstrom/Cluster.java
accord-maelstrom/src/main/java/accord/maelstrom/Datum.java
accord-maelstrom/src/main/java/accord/maelstrom/Json.java
accord-maelstrom/src/main/java/accord/maelstrom/MaelstromRequest.java
accord-maelstrom/src/main/java/accord/maelstrom/Main.java
accord-maelstrom/src/main/java/accord/maelstrom/SimpleConfigService.java [new file with mode: 0644]
accord-maelstrom/src/main/java/accord/maelstrom/TopologyFactory.java