Efficient Dependencies (CASSANDRA-17111) trunk
authorBenedict Elliott Smith <benedict@apache.org>
Wed, 17 Aug 2022 08:50:36 +0000 (09:50 +0100)
committerBenedict Elliott Smith <benedict@apache.org>
Wed, 17 Aug 2022 08:57:32 +0000 (09:57 +0100)
commitbb52de784b3a3de5ec473d3e935d4f76c6258c13
tree5eabeb58905eb6bbcfe28f610725b2b14b1d7359
parent119ed545c2532c830d8dcb682741f0f8819a6c30
Efficient Dependencies (CASSANDRA-17111)

Transaction dependencies must include only the TxnId of the dependent transactions, and the key they conflict on

patch by Benedict; reviewed by David Capwell for CASSANDRA-17111
131 files changed:
accord-core/build.gradle
accord-core/src/main/java/accord/api/Agent.java
accord-core/src/main/java/accord/api/Key.java
accord-core/src/main/java/accord/api/ProgressLog.java
accord-core/src/main/java/accord/api/Query.java
accord-core/src/main/java/accord/api/Read.java
accord-core/src/main/java/accord/api/Update.java
accord-core/src/main/java/accord/api/Write.java
accord-core/src/main/java/accord/coordinate/CheckOnCommitted.java
accord-core/src/main/java/accord/coordinate/CheckOnUncommitted.java
accord-core/src/main/java/accord/coordinate/CheckShardStatus.java
accord-core/src/main/java/accord/coordinate/Coordinate.java
accord-core/src/main/java/accord/coordinate/CoordinateFailed.java
accord-core/src/main/java/accord/coordinate/Execute.java
accord-core/src/main/java/accord/coordinate/InformHomeOfTxn.java
accord-core/src/main/java/accord/coordinate/Invalidate.java
accord-core/src/main/java/accord/coordinate/MaybeRecover.java
accord-core/src/main/java/accord/coordinate/Persist.java
accord-core/src/main/java/accord/coordinate/Preempted.java
accord-core/src/main/java/accord/coordinate/Propose.java
accord-core/src/main/java/accord/coordinate/Recover.java
accord-core/src/main/java/accord/coordinate/Timeout.java
accord-core/src/main/java/accord/coordinate/tracking/ReadTracker.java
accord-core/src/main/java/accord/impl/SimpleProgressLog.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/BeginInvalidate.java
accord-core/src/main/java/accord/messages/BeginRecovery.java
accord-core/src/main/java/accord/messages/Callback.java
accord-core/src/main/java/accord/messages/CheckStatus.java
accord-core/src/main/java/accord/messages/Commit.java
accord-core/src/main/java/accord/messages/InformOfPersistence.java
accord-core/src/main/java/accord/messages/InformOfTxn.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
accord-core/src/main/java/accord/messages/WaitOnCommit.java
accord-core/src/main/java/accord/primitives/Ballot.java [moved from accord-core/src/main/java/accord/txn/Ballot.java with 92% similarity]
accord-core/src/main/java/accord/primitives/Deps.java [new file with mode: 0644]
accord-core/src/main/java/accord/primitives/KeyRange.java [moved from accord-core/src/main/java/accord/topology/KeyRange.java with 51% similarity]
accord-core/src/main/java/accord/primitives/KeyRanges.java [new file with mode: 0644]
accord-core/src/main/java/accord/primitives/Keys.java [new file with mode: 0644]
accord-core/src/main/java/accord/primitives/Timestamp.java [moved from accord-core/src/main/java/accord/txn/Timestamp.java with 98% similarity]
accord-core/src/main/java/accord/primitives/TxnId.java [moved from accord-core/src/main/java/accord/txn/TxnId.java with 93% similarity]
accord-core/src/main/java/accord/topology/KeyRanges.java [deleted file]
accord-core/src/main/java/accord/topology/Shard.java
accord-core/src/main/java/accord/topology/Topology.java
accord-core/src/main/java/accord/topology/TopologyManager.java
accord-core/src/main/java/accord/txn/Dependencies.java [deleted file]
accord-core/src/main/java/accord/txn/Keys.java [deleted file]
accord-core/src/main/java/accord/txn/Txn.java
accord-core/src/main/java/accord/txn/Writes.java
accord-core/src/main/java/accord/utils/ArrayBuffers.java [new file with mode: 0644]
accord-core/src/main/java/accord/utils/AsymmetricComparator.java [new file with mode: 0644]
accord-core/src/main/java/accord/utils/IndexedFold.java [new file with mode: 0644]
accord-core/src/main/java/accord/utils/IndexedFoldIntersectToLong.java [new file with mode: 0644]
accord-core/src/main/java/accord/utils/IndexedFoldToLong.java [new file with mode: 0644]
accord-core/src/main/java/accord/utils/IndexedRangeFoldToLong.java [new file with mode: 0644]
accord-core/src/main/java/accord/utils/IntrusiveLinkedList.java [deleted file]
accord-core/src/main/java/accord/utils/IntrusiveLinkedListNode.java [deleted file]
accord-core/src/main/java/accord/utils/MergeIterator.java [new file with mode: 0644]
accord-core/src/main/java/accord/utils/SortedArrays.java [new file with mode: 0644]
accord-core/src/main/java/accord/utils/Timestamped.java
accord-core/src/main/java/org/apache/cassandra/concurrent/ImmediateExecutor.java
accord-core/src/test/java/accord/KeysTest.java
accord-core/src/test/java/accord/Utils.java
accord-core/src/test/java/accord/burn/BurnTest.java
accord-core/src/test/java/accord/burn/BurnTestConfigurationService.java
accord-core/src/test/java/accord/burn/TopologyUpdate.java
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
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/TestAgent.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/NodeSink.java
accord-core/src/test/java/accord/impl/basic/RandomDelayQueue.java
accord-core/src/test/java/accord/impl/basic/RecurringPendingRunnable.java
accord-core/src/test/java/accord/impl/list/ListAgent.java
accord-core/src/test/java/accord/impl/list/ListQuery.java
accord-core/src/test/java/accord/impl/list/ListRead.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/list/ListUpdate.java
accord-core/src/test/java/accord/impl/list/ListWrite.java
accord-core/src/test/java/accord/impl/mock/EpochSync.java
accord-core/src/test/java/accord/impl/mock/MockCluster.java
accord-core/src/test/java/accord/impl/mock/MockStore.java
accord-core/src/test/java/accord/local/CommandTest.java
accord-core/src/test/java/accord/local/NodeTest.java
accord-core/src/test/java/accord/messages/PreAcceptTest.java
accord-core/src/test/java/accord/messages/TxnRequestScopeTest.java
accord-core/src/test/java/accord/topology/TopologyManagerTest.java
accord-core/src/test/java/accord/topology/TopologyRandomizer.java
accord-core/src/test/java/accord/topology/TopologyTest.java
accord-core/src/test/java/accord/txn/DepsTest.java [new file with mode: 0644]
accord-core/src/test/java/accord/utils/Gen.java [new file with mode: 0644]
accord-core/src/test/java/accord/utils/GenTest.java [new file with mode: 0644]
accord-core/src/test/java/accord/utils/Gens.java [new file with mode: 0644]
accord-core/src/test/java/accord/utils/KeyRangeTest.java
accord-core/src/test/java/accord/utils/KeyRangesTest.java
accord-core/src/test/java/accord/utils/MessageTask.java
accord-core/src/test/java/accord/utils/Property.java [new file with mode: 0644]
accord-core/src/test/java/accord/utils/SortedArraysTest.java [new file with mode: 0644]
accord-core/src/test/resources/burn-logback-trace-rolling.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/MaelstromAgent.java
accord-maelstrom/src/main/java/accord/maelstrom/MaelstromKey.java
accord-maelstrom/src/main/java/accord/maelstrom/MaelstromQuery.java
accord-maelstrom/src/main/java/accord/maelstrom/MaelstromRead.java
accord-maelstrom/src/main/java/accord/maelstrom/MaelstromReply.java
accord-maelstrom/src/main/java/accord/maelstrom/MaelstromRequest.java
accord-maelstrom/src/main/java/accord/maelstrom/MaelstromResult.java
accord-maelstrom/src/main/java/accord/maelstrom/MaelstromUpdate.java
accord-maelstrom/src/main/java/accord/maelstrom/MaelstromWrite.java
accord-maelstrom/src/main/java/accord/maelstrom/Main.java
accord-maelstrom/src/main/java/accord/maelstrom/Packet.java
accord-maelstrom/src/main/java/accord/maelstrom/TopologyFactory.java