This is an automated email from the ASF dual-hosted git repository. benedict pushed a change to branch trunk in repository https://gitbox.apache.org/repos/asf/cassandra-accord.git
from 8226b2d7 CEP-15: (C*) Accord message processing should avoid being passed on to a Stage and run directly in the messageing handler new c58d841f Separate durable and transient listeners new 06500978 Introduce ExclusiveSyncPoint transactions new f7fc6e18 Permit nodes to join a cluster without the full transaction history The 3 revisions listed above as "new" are entirely new to this repository and will be described in separate emails. The revisions listed as "add" were already present in the repository and have only been added to this reference. Summary of changes: .gitignore | 1 + accord-core/build.gradle | 4 +- accord-core/src/main/java/accord/api/Agent.java | 7 + .../main/java/accord/api/ConfigurationService.java | 69 ++- .../src/main/java/accord/api/DataStore.java | 94 +++- .../src/main/java/accord/api/ProgressLog.java | 9 +- accord-core/src/main/java/accord/api/Query.java | 3 +- .../src/main/java/accord/api/TopologySorter.java | 2 + accord-core/src/main/java/accord/api/Update.java | 3 +- .../src/main/java/accord/coordinate/CheckOn.java | 17 +- .../main/java/accord/coordinate/CollectDeps.java | 26 +- .../main/java/accord/coordinate/Coordinate.java | 198 ------- .../java/accord/coordinate/CoordinateNoOp.java | 100 ++++ .../accord/coordinate/CoordinatePreAccept.java | 261 ++++++++++ .../accord/coordinate/CoordinateSyncPoint.java | 124 +++++ .../accord/coordinate/CoordinateTransaction.java | 87 ++++ ...ordinateFailed.java => CoordinationFailed.java} | 10 +- .../src/main/java/accord/coordinate/Execute.java | 39 +- .../src/main/java/accord/coordinate/Exhausted.java | 7 +- .../java/accord/coordinate/FetchCoordinator.java | 334 ++++++++++++ .../main/java/accord/coordinate/Invalidated.java | 11 +- .../main/java/accord/coordinate/MaybeRecover.java | 1 + .../src/main/java/accord/coordinate/Persist.java | 22 +- .../src/main/java/accord/coordinate/Preempted.java | 2 +- .../src/main/java/accord/coordinate/Propose.java | 68 ++- .../java/accord/coordinate/ProposeAndExecute.java | 59 +++ .../java/accord/coordinate/ReadCoordinator.java | 32 +- .../src/main/java/accord/coordinate/Recover.java | 96 +++- .../java/accord/coordinate/RecoverWithRoute.java | 2 +- .../src/main/java/accord/coordinate/Timeout.java | 2 +- .../coordinate/tracking/AbstractTracker.java | 25 +- .../coordinate/tracking/FastPathTracker.java | 85 +-- .../coordinate/tracking/InvalidationTracker.java | 2 +- .../accord/coordinate/tracking/QuorumTracker.java | 2 +- .../accord/coordinate/tracking/ReadTracker.java | 49 +- .../coordinate/tracking/RecoveryTracker.java | 2 +- .../accord/coordinate/tracking/ShardOutcome.java | 2 +- .../java/accord/impl/AbstractSafeCommandStore.java | 37 +- .../src/main/java/accord/impl/CommandsForKey.java | 11 +- .../java/accord/impl/InMemoryCommandStore.java | 233 +++++++-- .../main/java/accord/impl/InMemorySafeCommand.java | 48 +- .../main/java/accord/impl/SafeCommandsForKey.java | 20 + .../main/java/accord/impl/SimpleProgressLog.java | 11 +- .../java/accord/impl/SizeOfIntersectionSorter.java | 1 + .../src/main/java/accord/local/Bootstrap.java | 481 +++++++++++++++++ .../src/main/java/accord/local/Command.java | 160 +++--- .../src/main/java/accord/local/CommandStore.java | 320 +++++++++++- .../src/main/java/accord/local/CommandStores.java | 196 +++++-- .../src/main/java/accord/local/Commands.java | 489 +++++++++++------ .../main/java/accord/local/CommonAttributes.java | 10 +- .../src/main/java/accord/local/Listeners.java | 18 +- .../src/main/java/accord/local/LocalBarrier.java | 120 +++++ accord-core/src/main/java/accord/local/Node.java | 102 ++-- .../src/main/java/accord/local/PreLoadContext.java | 100 +++- .../src/main/java/accord/local/SafeCommand.java | 9 +- .../main/java/accord/local/SafeCommandStore.java | 141 ++++- .../src/main/java/accord/local/SaveStatus.java | 16 +- accord-core/src/main/java/accord/local/Status.java | 12 + .../java/accord/messages/AbstractEpochRequest.java | 14 +- .../src/main/java/accord/messages/Accept.java | 10 +- .../src/main/java/accord/messages/Apply.java | 22 +- .../java/accord/messages/BeginInvalidation.java | 11 +- .../main/java/accord/messages/BeginRecovery.java | 58 ++- .../src/main/java/accord/messages/CheckStatus.java | 14 +- .../src/main/java/accord/messages/Commit.java | 23 +- .../src/main/java/accord/messages/Defer.java | 19 +- .../src/main/java/accord/messages/GetDeps.java | 20 +- .../main/java/accord/messages/InformDurable.java | 26 +- .../main/java/accord/messages/InformOfTxnId.java | 8 +- .../src/main/java/accord/messages/MessageType.java | 2 +- .../src/main/java/accord/messages/PreAccept.java | 120 ++++- .../src/main/java/accord/messages/ReadData.java | 271 ++-------- .../src/main/java/accord/messages/ReadTxnData.java | 257 +++++++++ .../src/main/java/accord/messages/Request.java | 1 + .../main/java/accord/messages/WaitAndReadData.java | 70 +++ .../main/java/accord/messages/WaitOnCommit.java | 26 +- .../java/accord/primitives/AbstractRanges.java | 62 +-- .../src/main/java/accord/primitives/Deps.java | 26 +- .../src/main/java/accord/primitives/KeyDeps.java | 74 ++- .../src/main/java/accord/primitives/Keys.java | 35 +- .../src/main/java/accord/primitives/Range.java | 9 +- .../src/main/java/accord/primitives/RangeDeps.java | 51 +- .../src/main/java/accord/primitives/Ranges.java | 95 ++-- .../src/main/java/accord/primitives/Routables.java | 122 ++++- .../main/java/accord/primitives/RoutingKeys.java | 11 +- .../src/main/java/accord/primitives/SyncPoint.java | 47 ++ .../src/main/java/accord/primitives/Timestamp.java | 129 ++++- .../src/main/java/accord/primitives/Txn.java | 102 +++- .../src/main/java/accord/primitives/TxnId.java | 10 +- .../src/main/java/accord/primitives/Writes.java | 9 +- .../src/main/java/accord/topology/Shard.java | 22 +- .../src/main/java/accord/topology/Topologies.java | 48 +- .../src/main/java/accord/topology/Topology.java | 8 +- .../main/java/accord/topology/TopologyManager.java | 46 +- .../src/main/java/accord/utils/ArrayBuffers.java | 10 +- .../src/main/java/accord/utils/Functions.java | 8 + ...dexedBiFunction.java => IndexedBiConsumer.java} | 4 +- ...SymmetricComparator.java => IndexedBiFold.java} | 6 +- ...ricComparator.java => IndexedQuadFunction.java} | 5 +- ...Consumer.java => IndexedRangeQuadConsumer.java} | 4 +- ...ymmetricComparator.java => IndexedTriFold.java} | 6 +- .../java/accord/utils/ReducingIntervalMap.java | 351 +++++++++++++ .../main/java/accord/utils/ReducingRangeMap.java | 195 +++++++ .../src/main/java/accord/utils/SortedArrays.java | 241 ++++++++- .../src/main/java/accord/utils/Timestamped.java | 9 + .../StaleTopology.java => utils/TriFunction.java} | 5 +- accord-core/src/test/java/accord/Utils.java | 6 +- .../accord/api/TestableConfigurationService.java | 3 +- .../src/test/java/accord/burn/BurnTest.java | 108 ++-- .../accord/burn/BurnTestConfigurationService.java | 27 +- .../src/test/java/accord/burn/TopologyUpdates.java | 282 ++-------- ...ateTest.java => CoordinateTransactionTest.java} | 57 +- .../java/accord/coordinate/TopologyChangeTest.java | 19 +- .../tracking/FastPathTrackerReconciler.java | 16 +- .../coordinate/tracking/TrackerReconciler.java | 6 +- .../coordinate/tracking/TrackerReconcilerTest.java | 4 +- .../src/test/java/accord/impl/IntHashKey.java | 10 +- .../src/test/java/accord/impl/TestAgent.java | 14 + .../src/test/java/accord/impl/basic/Cluster.java | 36 +- .../java/accord/impl/basic/RandomDelayQueue.java | 13 +- .../src/test/java/accord/impl/list/ListAgent.java | 24 +- .../src/test/java/accord/impl/list/ListData.java | 11 +- .../src/test/java/accord/impl/list/ListQuery.java | 13 +- .../src/test/java/accord/impl/list/ListRead.java | 17 +- .../test/java/accord/impl/list/ListRequest.java | 13 +- .../src/test/java/accord/impl/list/ListResult.java | 2 +- .../src/test/java/accord/impl/list/ListStore.java | 257 ++++++++- .../src/test/java/accord/impl/list/ListUpdate.java | 13 +- .../test/java/accord/impl/mock/MockCluster.java | 5 +- .../accord/impl/mock/MockConfigurationService.java | 22 +- .../src/test/java/accord/impl/mock/MockStore.java | 20 +- .../test/java/accord/local/CheckedCommands.java | 2 +- .../java/accord/local/ImmutableCommandTest.java | 9 +- .../test/java/accord/messages/PreAcceptTest.java | 11 +- .../test/java/accord/messages/ReadDataTest.java | 8 +- .../java/accord/topology/TopologyManagerTest.java | 57 +- .../java/accord/topology/TopologyRandomizer.java | 155 ++++-- .../src/test/java/accord/utils/MessageTask.java | 6 +- .../java/accord/utils/Pair.java} | 56 +- .../java/accord/utils/ReducingRangeMapTest.java | 578 +++++++++++++++++++++ .../src/main/java/accord/maelstrom/Cluster.java | 8 + .../src/main/java/accord/maelstrom/Json.java | 12 +- .../main/java/accord/maelstrom/MaelstromAgent.java | 13 + .../main/java/accord/maelstrom/MaelstromQuery.java | 3 +- .../main/java/accord/maelstrom/MaelstromStore.java | 17 + .../java/accord/maelstrom/MaelstromUpdate.java | 3 +- .../src/main/java/accord/maelstrom/Main.java | 3 + .../java/accord/maelstrom/SimpleConfigService.java | 2 +- build.gradle | 4 + 149 files changed, 7092 insertions(+), 1967 deletions(-) delete mode 100644 accord-core/src/main/java/accord/coordinate/Coordinate.java create mode 100644 accord-core/src/main/java/accord/coordinate/CoordinateNoOp.java create mode 100644 accord-core/src/main/java/accord/coordinate/CoordinatePreAccept.java create mode 100644 accord-core/src/main/java/accord/coordinate/CoordinateSyncPoint.java create mode 100644 accord-core/src/main/java/accord/coordinate/CoordinateTransaction.java rename accord-core/src/main/java/accord/coordinate/{CoordinateFailed.java => CoordinationFailed.java} (83%) create mode 100644 accord-core/src/main/java/accord/coordinate/FetchCoordinator.java create mode 100644 accord-core/src/main/java/accord/coordinate/ProposeAndExecute.java create mode 100644 accord-core/src/main/java/accord/local/Bootstrap.java create mode 100644 accord-core/src/main/java/accord/local/LocalBarrier.java create mode 100644 accord-core/src/main/java/accord/messages/ReadTxnData.java create mode 100644 accord-core/src/main/java/accord/messages/WaitAndReadData.java create mode 100644 accord-core/src/main/java/accord/primitives/SyncPoint.java copy accord-core/src/main/java/accord/utils/{IndexedBiFunction.java => IndexedBiConsumer.java} (91%) copy accord-core/src/main/java/accord/utils/{SymmetricComparator.java => IndexedBiFold.java} (87%) copy accord-core/src/main/java/accord/utils/{SymmetricComparator.java => IndexedQuadFunction.java} (87%) copy accord-core/src/main/java/accord/utils/{IndexedRangeTriConsumer.java => IndexedRangeQuadConsumer.java} (89%) copy accord-core/src/main/java/accord/utils/{SymmetricComparator.java => IndexedTriFold.java} (87%) create mode 100644 accord-core/src/main/java/accord/utils/ReducingIntervalMap.java create mode 100644 accord-core/src/main/java/accord/utils/ReducingRangeMap.java copy accord-core/src/main/java/accord/{coordinate/StaleTopology.java => utils/TriFunction.java} (89%) rename accord-core/src/test/java/accord/coordinate/{CoordinateTest.java => CoordinateTransactionTest.java} (72%) copy accord-core/src/{main/java/accord/primitives/FullRangeRoute.java => test/java/accord/utils/Pair.java} (50%) create mode 100644 accord-core/src/test/java/accord/utils/ReducingRangeMapTest.java --------------------------------------------------------------------- To unsubscribe, e-mail: commits-unsubscr...@cassandra.apache.org For additional commands, e-mail: commits-h...@cassandra.apache.org