This is an automated email from the ASF dual-hosted git repository. dcapwell pushed a change to branch cep-15-accord in repository https://gitbox.apache.org/repos/asf/cassandra.git
discard 5ea9486d8f fixing post-rebase checkstyle problems discard 974896d433 Accord: test fixes and stability improvements * Fix short accord simulation test (seed 0x6bea128ae851724b), ConcurrentModificationException * Increase wait time during closing to avoid Unterminated threads * Increase timeouts, improve test stability * More descriptive output from CQL test * Shorten max CMS delay * Improve future handling in config service discard 9ba2ff50d2 Fix: - Accord Journal purging was disabled - remove unique_id from schema keyspace - avoid String.format in Compactor hot path - avoid string concatenation on hot path; improve segment compactor partition build efficiency - Partial compaction should update records in place to ensure truncation of discontiguous compactions do not lead to an incorrect field version being used - StoreParticipants.touches behaviour for RX was erroneously modified; should touch all no [...] discard 4070f2c43c Decouple Accord serializers from C* message version so accord can make changes without impacting C* messaging discard 87bf7ae62e Accord repin: turn pruning back on discard b686a929af Fix: - Decouple command serialization from TableMetadata version; introduce ColumnMetadata ids; gracefully handle missing TableId - DataInputPlus.readLeastSignificantBytes must truncate high bits - Fix RandomPartitioner accord serialization - Fast path stable commits must not override recovery propose/commit decisions regarding visibility of a transaction - RejectBefore must mergeMax, not merge, to ensure we maintain epoch and hlc increasing independently - Bad c [...] discard 044c772785 Topology mixup tests should do repairs for host replacement and other required topology changes discard 4cb30b8cde Implement Nemesis compactor, improve partial compaction discard 4313c923c8 Epoch/Topology Garbage Collection discard 1d9b5cf0ee When bootstrap fails the retry field is not populated which leads to a NPE discard 152bbdaa97 InterceptingExecutor.schedule returns a simulator-unsafe Future discard 5412810f95 Add initial Accord Overview Doc discard b134dc686f Integrate RX with Cassandra Repair, so that repair safely flushes pending topology and other durability requirements. Also improve: - Introduce DurabilityService - Retire SyncPoint, replace Barrier with Write and RX - MessageType -> enum, restore GetMaxConflict - Standardise backoff logic with WaitStrategy - improve TimeoutStrategy/RetryStrategy specification strings - Forbid KX, remove directKeyDeps - Introduce UniqueTimeService, permitting hlc reservations for [...] discard f20b72bb6d Accord fixes: - Bad ArrayBuffers recycling logic - RX must ensure dependencies TRANSITIVE_VISIBLE - Permit constructing "antiRange" that spans multiple prefixes - Not computing range CommandSummary IsDep correctly - Truncated commands that aren't shard durable could not repopulate CFK on replay, permitting recovery of another command to make an incorrect decision - NPE on async persist of RX (i.e. supplying no callback) - NPE in Builder.shouldCleanup when durabi [...] discard 4a2f909c55 Fix: - Only use persisted RedundantBefore for compaction - RouteIndex should index only touches, not Route - Flush RangesForEpoch updates to journal immediately, so we do not rely on the command we are processing succeeding - DurableBefore updates must wait for the epochs to be known locally - Shard.mustWitnessEpoch to support guaranteeing to witness relevant non-topology schema changes - We must propagate RedundantBefore RX shard bounds along with epoch syncs - [...] discard 3c160a5d84 Accord: Serialization Improvements discard 433b897bde Improve stability of tests with many epochs discard baca850fb8 Fix AccordMigrationTest, preclude possible races in topology propagation discard 8cc22c4ae5 (Accord) Fix recovery when one shard is committed/stable and another is preaccepted Also fix: - Topology slicing must declare whether we share/slice node ownership (to assist above) - CFK.visit removes transitive dependencies too eagerly across epoch change - apply cleanup to builder consistently, and construct the same value we would produce by purge (so that replay is idempotent) - Invoke ExecuteTxn.LocalExecute callbacks on originating CommandStore - misc other [...] discard cdacff5605 Fix flakey test org.apache.cassandra.simulator.test.ShortPaxosSimulationTest#casOnAccordSimulationTest discard a99f6a0c5b Expose epoch ready state as a vtable for operators to inspect things discard c45bf8596b Fix null field accounting discard da5c5dae7d Fix topology loading discard d4b69f3ee1 Accord: TableParamsTest is flakey due to bad generators and production validation logic missed the argument to String.format causing confusing errors discard 9b256958f1 Fixed an issue where table walk and token conflict mutations would use server timestamps which made multinode tests unstable discard 49c8d97ff3 Add @Ignore to failing tests while we triage discard c8f5e93834 Fix: - Even if we can decide autonomously that we took the fast path, we must still wait for earlier transactions to decide themselves - We must update a command that is in CFK.loadingPruned whether or not it is outOfRange - We must visit pruned commands that are transitive dependencies of RX to ensure dependencies are propagated - flagsWithoutDomainAndKind() -> flagsWithoutDomainOrKindOrCardinality() [to fix integration regression] - Don't invoke uniqueNow() twic [...] discard 746a042617 Avoid double loading in Cassandra side of journal; make sure to include records appended to journal. discard 183698587f Accord: jvm-dtest changed semantics of uncaughtExceptions handling which broke tests that depended on the prior semantics discard 26d88bf11e When generating AbstractTypeGenerators.safeTypeGen() for tests composite types limit depth but collections didnt discard 8b67709b33 Refactor RedundantStatus to encode vector of states that can be merged independently Also fix: - Truncate command on first access, without participants - Use Ballot.ZERO when invoking CFK.insertOutOfRange where appropriate - Don't supply a command's own route to ProgressLog.waiting to ensure new keys are incorporated - Ensure progress in CommandsForKey by setting vestigial commands to ERASED - Add any missing owned keys to StoreParticipants.route to ensure fetch c [...] discard f01e7d062e Improve topology fetching discard 3d594f3173 To improve accord interoperability test coverage, need to extend the harry model domain to handle more possible CQL states discard 47e3d45a5a Follow-up to CASSANDRA-20222: - Implement missing parts of protocol optimisations, refine some particulars and remove MEDIUM_PATH_WAIT_ON_RECOVERY Also fix: - Deps.txnIds -> Deps.txnIdsWithFlags to make clear unsafety, and validate Command isn't created with flags - Save a lossy low/high epoch we're waiting on in WaitingState so that we can reconstruct the same Route on callback - Load any potentially invalidated commands we had in ProgressLog to ensure they are ma [...] discard e556b0df85 Fix TxnNamedRead discarding paging state discard af37a6cc63 Fix paging with Accord range reads discard c8f6a49cf6 Fix ShortAccordSimulationTest discard 0ff790485f Live migration for non-serial reads discard e48580960b Fix empty LatestDepsSerializer discard b26bdabfd0 Follow-up to CASSANDRA-20228: - Fix waiting state callback computes different route to initiator - Invariants.checkX -> Invariants.requireX (to allow complementary Invariants.expectX as appropriate) discard ab0bc763b8 Fix testClearSnapshot_RemoveMultiple discard fc533a5856 Fix "modifiers" missing field exception on JDK17 discard a92f731d3e Agree a distributed uniqueHlc to use for Apply - detect and save whether RX can be used as a GC bound for HLCs - have RX durably record if they witnessed any superseding epoch and use this for HLC GC - rework GC to retain applyAt for writes discard 9f81a5e83f Fix race condition in AccordExecutor#cancelExclusive discard 4cd7478e25 Fix Simulator Tests discard 863fb3762e Fix deps serializers discard c89f226238 Remove Journal record ownership tags functionality discard 628f99a734 Migrate route index from commands table to journal, and drop the commands table discard 7896ac1e80 Protocol optimisations: - Privileged coordinator. If the coordinator is a replica we can reduce our quorum sizes by including the coordinator's vote. - with deps: if we include coordinator's preaccept deps we can reliably reduce quorum size by 1, at the expense of recovery sometimes requiring additional phases and waiting for future txns - with only vote: if we only include the vote we can avoid any additional recovery phases or waiting for future txns, but can [...] discard 4438baa89f Fix ForceSnapshotTest discard f72ba228f6 Fix CoordinatorReadLatencyMetricTest discard 85ac3f95f2 Fix serialization order for topology updates discard c3306db3db Fix problem with iteration order in AccordJournal discard 9e47441b85 FetchRequest should report as unavailable any slice that executes in a later epoch that is not owned by the replicas discard c5974fbd20 Fix topology replay during bootstrap and startup, decouple Accord from TCM discard 0144da04ac Refactor the ast package to enable harry model based testing discard 18d7922cbb Migrate in memory journal to CommandChange logic shared with AccordJournal discard b2e9187433 Remove TimestampsForKey discard b7fe32d1c7 Fixes - Fix notifying unmanaged after update redundant before/bootstrap - Do not infer invalid if we have a single round of replies with minKnown not decided and maxKnown erased - in this case store the knowledge for next request. - Fix SyncPoint topology selection - Fix CheckStatusOkFull.with(InvalidIf) - Fix NotifyWaitingOn - ExecuteTxn should only contact latest topology for follow-up requests - DurableBefore.min should not go [...] discard ef83984de2 Fix Accord SAI tests and Accord double apply discard 3b96ec03c5 Implement field saving/loading in AccordJournal discard 84437ccc3d TCM's Retry.Deadline#retryIndefinitely is dangerous if used with RemoteProcessor as the deadline does not impact message retries discard db5d2f652a Accord simulation test failing with "ClassNotFoundException: WARN [AccordExecutor[1,0]" discard c5014c0b6e Fix infinite loop, and notify progress log of sync point durability while waiting to apply discard 860f87724b Semi integrate burn test: discard 0553408304 Fix restartWithEpochChanges test; make CMS nodes first gossip with CMS nodes discard 25570f887a Make it easier to reuse generators, make Harry more extensible and accord-proof, refactor Harry's major subsystems discard 415971ebac Accord: Fix unit tests and improve burn test stability discard 939cb0467e Key transaction recovery should witness range transactions discard 00f0f556ae Fix AbstractKeys.without (and CoordinateEphemeralRead execution in future epoch) discard 87bbcba0e6 Set Accord debug tables partitioner to LocalPartitioner discard b7ec563f37 Non-serial reads and range reads without live migration support discard 5bcdd29112 Implement missing virtual tables for Accord debugging discard 01706f5b4f Split accord migration into two phases discard 69a6643b62 Accord's ConfigService lock is held over large areas which cause deadlocks and performance issues discard 885d01b9b1 Improvements to queueing, execution and performance discard c171c0eee1 Miscellaneous migration test fixes discard cc9e203fd4 Get Harry working on top of Accord and fix various issues found by TopologyMixupTestBase discard 60bf73ed16 Use ExclusiveSyncPoints to join a new topology discard 7f49d97994 Accord Deps tests have incorrect range semantics discard 9d51b8dffb Check for splittable ranges discard 00088963f9 TopologyMixupTestBase does not fix replication factor for Keyspaces after reaching rf=3 discard 0ae604892d Accord should block currently unsafe operations discard ff91ff3240 Accord metrics are isolated which cause existing coordination metrics to be empty, should also populate there as well discard fc0768589e Fix CASTest discard 3c393bfbf7 Shut down scheduler with "now" Fix NPE in MockJournal on null onFlush Fix SavedCommandTest. After the serialization change that serializes "changed" before "is null", null flag can no be written. discard 371eaeb4bf Accord should not block partition restricted index queries discard b8c0c5adac Add bounce to load test discard 3da0179880 load historical transactions when loading topology discard 65c6a2e19c AccordJournalPurger should use shouldCleanupPartial discard 43de8e02fe Store historical transactions per epoch update durability scheduling and majority deps fetching do not deserialize deps in CommandsForRangesLoader unless required discard 1a4a3f7f75 do not schedule additional durability attempts while some in flight; plus minor performance improvements discard 3d295e8166 disable TableId interning discard d6bdfbe283 increase timeout for CalculateDepsReq discard 9b96fbbcdc Ninja: fast path now updates after 3600s rather than 60s. discard 04f4545de3 Follow-up to: Do not contact faulty replicas, and support reporting slow replies for preaccept/read. Do not wait for stale or left nodes for durability. discard 17f8598493 Ninja: fast path now updates after 60s rather than 5s. Added toString to ReconfigureAccordFastPath so the TCM logs/table gives the debug info needed discard 44d7de6b6b Fix truncatedApply deserialization discard 959e18e41b Journal diff serialization: validateFlags and WaitingOn size discard 5f8233a0f6 Enable and test purging discard c0f66c2c00 Halve cache memory consumption by not retaining 'original' to diff; dedup RoutingKey tableId; avoid calculating rejectsFastPath in more cases; delay retry of fetchMajorityDeps; fix SetShardDurable marking shards durable discard 5d07a5d32a ExclusiveSyncPoints should always wait for a simple quorum discard e1cd306477 Fix condition on where we shut down accord; move scheduled executor shutdown until after MS. discard 1c8ae6cb6f visit journal backwards to save time parsing don't load range commands that are redundant, and load least possible use MISC verb handler for maintenance tasks discard 1bf176f667 ninja: increase durability scheduling delays ninja: fix NPE disable ephemeral reads discard d92590e3ed Accord: Share DurableBefore between CommandStores discard e0b518e4fe Follow-up to CASSANDRA-19967 and CASSANDRA-19869 discard c518864447 ninja: Fix AcceptSerializer discard ec2b78380a ninja: fix CFK serializer discard 17e3f2c2ac Support Restart node in Accord discard b3ef189916 Add purging to Accord Journal table discard f899c58d8c Ninja: Repin accord discard a436c7d6c0 improve AccordLoadTest to support more keys discard 660af9c2e4 CASSANDRA-19967: Refine epoch quorum intersections, sync points, conflict relations and outcome inference discard 5b8ea075e8 Implement Journal replay on startup: * reconstruct CFK, TFK, progressLog * migrate CommandStore collection state from Accord table to the log * make memtable writes non-durable; reconstruct memtable state from Writes discard 0357de024b ninja: handle serialization of truncated accept responses discard ae8d0c9bec Change MaxConflicts to use a BTree under the hood discard a711fd2fc7 This commits contains the following two patches in order to reduce the amount of conflicts resolution necessary for future rebasing: new 714691aead This commits contains the following two patches in order to reduce the amount of conflicts resolution necessary for future rebasing: new 78a9795ec0 Change MaxConflicts to use a BTree under the hood new db03dcef1c ninja: handle serialization of truncated accept responses new d15bf60318 Implement Journal replay on startup: * reconstruct CFK, TFK, progressLog * migrate CommandStore collection state from Accord table to the log * make memtable writes non-durable; reconstruct memtable state from Writes new 62baac7eeb CASSANDRA-19967: Refine epoch quorum intersections, sync points, conflict relations and outcome inference new cd5660aabd improve AccordLoadTest to support more keys new 382923dcf6 Ninja: Repin accord new 8c7c4475f3 Add purging to Accord Journal table new 6a815b8a52 Support Restart node in Accord new be58c71a2b ninja: fix CFK serializer new e569aa5017 ninja: Fix AcceptSerializer new 83a4e368ce Follow-up to CASSANDRA-19967 and CASSANDRA-19869 new a8403babd5 Accord: Share DurableBefore between CommandStores new 8914179021 ninja: increase durability scheduling delays ninja: fix NPE disable ephemeral reads new 7b63645474 visit journal backwards to save time parsing don't load range commands that are redundant, and load least possible use MISC verb handler for maintenance tasks new 6c2906c662 Fix condition on where we shut down accord; move scheduled executor shutdown until after MS. new 358eb2608e ExclusiveSyncPoints should always wait for a simple quorum new d4105e0e94 Halve cache memory consumption by not retaining 'original' to diff; dedup RoutingKey tableId; avoid calculating rejectsFastPath in more cases; delay retry of fetchMajorityDeps; fix SetShardDurable marking shards durable new 1fa6346bf1 Enable and test purging new 9c41fea90d Journal diff serialization: validateFlags and WaitingOn size new ed4916fa73 Fix truncatedApply deserialization new 4213f18708 Ninja: fast path now updates after 60s rather than 5s. Added toString to ReconfigureAccordFastPath so the TCM logs/table gives the debug info needed new f64a94b619 Follow-up to: Do not contact faulty replicas, and support reporting slow replies for preaccept/read. Do not wait for stale or left nodes for durability. new a30050cfb3 Ninja: fast path now updates after 3600s rather than 60s. new 2de4f35514 increase timeout for CalculateDepsReq new d327991eb7 disable TableId interning new 8a2a5fa264 do not schedule additional durability attempts while some in flight; plus minor performance improvements new 36409115eb Store historical transactions per epoch update durability scheduling and majority deps fetching do not deserialize deps in CommandsForRangesLoader unless required new fb624aee34 AccordJournalPurger should use shouldCleanupPartial new 7e727d49af load historical transactions when loading topology new 02410e34b4 Add bounce to load test new 579868e8ed Accord should not block partition restricted index queries new 67bc382108 Shut down scheduler with "now" Fix NPE in MockJournal on null onFlush Fix SavedCommandTest. After the serialization change that serializes "changed" before "is null", null flag can no be written. new e2032a6732 Fix CASTest new 79e840c9bb Accord metrics are isolated which cause existing coordination metrics to be empty, should also populate there as well new f7872eb0f4 Accord should block currently unsafe operations new 79fab17b22 TopologyMixupTestBase does not fix replication factor for Keyspaces after reaching rf=3 new c77cb60dae Check for splittable ranges new 7d6dec802d Accord Deps tests have incorrect range semantics new 0a2fd53d75 Use ExclusiveSyncPoints to join a new topology new 556aa1ec69 Get Harry working on top of Accord and fix various issues found by TopologyMixupTestBase new 77c3949126 Miscellaneous migration test fixes new baca2b5b2b Improvements to queueing, execution and performance new 0f4ca9e9bb Accord's ConfigService lock is held over large areas which cause deadlocks and performance issues new 2cd0531063 Split accord migration into two phases new 126b6cd44f Implement missing virtual tables for Accord debugging new a8546bf336 Non-serial reads and range reads without live migration support new 2094467562 Set Accord debug tables partitioner to LocalPartitioner new 36633e6438 Fix AbstractKeys.without (and CoordinateEphemeralRead execution in future epoch) new ece17277f1 Key transaction recovery should witness range transactions new 9d34730b0a Accord: Fix unit tests and improve burn test stability new 92585f890b Make it easier to reuse generators, make Harry more extensible and accord-proof, refactor Harry's major subsystems new c1a49a8e47 Fix restartWithEpochChanges test; make CMS nodes first gossip with CMS nodes new cea03592c8 Semi integrate burn test: new 38d4194d4a Fix infinite loop, and notify progress log of sync point durability while waiting to apply new 0c548bff39 Accord simulation test failing with "ClassNotFoundException: WARN [AccordExecutor[1,0]" new d4c12f4f90 TCM's Retry.Deadline#retryIndefinitely is dangerous if used with RemoteProcessor as the deadline does not impact message retries new eec04828a4 Implement field saving/loading in AccordJournal new 0c6096de0f Fix Accord SAI tests and Accord double apply new 2279f98a07 Fixes - Fix notifying unmanaged after update redundant before/bootstrap - Do not infer invalid if we have a single round of replies with minKnown not decided and maxKnown erased - in this case store the knowledge for next request. - Fix SyncPoint topology selection - Fix CheckStatusOkFull.with(InvalidIf) - Fix NotifyWaitingOn - ExecuteTxn should only contact latest topology for follow-up requests - DurableBefore.min should not go [...] new 60b77f815a Remove TimestampsForKey new bdfc574a35 Migrate in memory journal to CommandChange logic shared with AccordJournal new 88e26458b5 Refactor the ast package to enable harry model based testing new cd15538b96 Fix topology replay during bootstrap and startup, decouple Accord from TCM new 15b632863b FetchRequest should report as unavailable any slice that executes in a later epoch that is not owned by the replicas new 195eb0c458 Fix problem with iteration order in AccordJournal new 007ea7d1b4 Fix serialization order for topology updates new b97cde6abf Fix CoordinatorReadLatencyMetricTest new 875fdeb5bb Fix ForceSnapshotTest new b247f0d503 Protocol optimisations: - Privileged coordinator. If the coordinator is a replica we can reduce our quorum sizes by including the coordinator's vote. - with deps: if we include coordinator's preaccept deps we can reliably reduce quorum size by 1, at the expense of recovery sometimes requiring additional phases and waiting for future txns - with only vote: if we only include the vote we can avoid any additional recovery phases or waiting for future txns, but can [...] new db20551d79 Migrate route index from commands table to journal, and drop the commands table new d19b415c09 Remove Journal record ownership tags functionality new b2ff742959 Fix deps serializers new 034cf3d987 Fix Simulator Tests new 08e5e1c5b9 Fix race condition in AccordExecutor#cancelExclusive new 8e15d84095 Agree a distributed uniqueHlc to use for Apply - detect and save whether RX can be used as a GC bound for HLCs - have RX durably record if they witnessed any superseding epoch and use this for HLC GC - rework GC to retain applyAt for writes new 8c31349835 Fix "modifiers" missing field exception on JDK17 new 8f23e346cd Fix testClearSnapshot_RemoveMultiple new d89bd0ce31 Follow-up to CASSANDRA-20228: - Fix waiting state callback computes different route to initiator - Invariants.checkX -> Invariants.requireX (to allow complementary Invariants.expectX as appropriate) new 26ce4d1769 Fix empty LatestDepsSerializer new 45b2c0d4bb Live migration for non-serial reads new e86578b389 Fix ShortAccordSimulationTest new cff13fae6f Fix paging with Accord range reads new 8d8feb3432 Fix TxnNamedRead discarding paging state new c81395fdf9 Follow-up to CASSANDRA-20222: - Implement missing parts of protocol optimisations, refine some particulars and remove MEDIUM_PATH_WAIT_ON_RECOVERY Also fix: - Deps.txnIds -> Deps.txnIdsWithFlags to make clear unsafety, and validate Command isn't created with flags - Save a lossy low/high epoch we're waiting on in WaitingState so that we can reconstruct the same Route on callback - Load any potentially invalidated commands we had in ProgressLog to ensure they are ma [...] new 2508ec4b92 To improve accord interoperability test coverage, need to extend the harry model domain to handle more possible CQL states new 4d02c31321 Improve topology fetching new b0932fecb6 Refactor RedundantStatus to encode vector of states that can be merged independently Also fix: - Truncate command on first access, without participants - Use Ballot.ZERO when invoking CFK.insertOutOfRange where appropriate - Don't supply a command's own route to ProgressLog.waiting to ensure new keys are incorporated - Ensure progress in CommandsForKey by setting vestigial commands to ERASED - Add any missing owned keys to StoreParticipants.route to ensure fetch c [...] new 3575cb2816 When generating AbstractTypeGenerators.safeTypeGen() for tests composite types limit depth but collections didnt new bef5db6dc9 Accord: jvm-dtest changed semantics of uncaughtExceptions handling which broke tests that depended on the prior semantics new 258fbe3c04 Avoid double loading in Cassandra side of journal; make sure to include records appended to journal. new 41e1c617b8 Fix: - Even if we can decide autonomously that we took the fast path, we must still wait for earlier transactions to decide themselves - We must update a command that is in CFK.loadingPruned whether or not it is outOfRange - We must visit pruned commands that are transitive dependencies of RX to ensure dependencies are propagated - flagsWithoutDomainAndKind() -> flagsWithoutDomainOrKindOrCardinality() [to fix integration regression] - Don't invoke uniqueNow() twic [...] new f4bbdcee24 Add @Ignore to failing tests while we triage new 06d7ca4e00 Fixed an issue where table walk and token conflict mutations would use server timestamps which made multinode tests unstable new 6b619c549f Accord: TableParamsTest is flakey due to bad generators and production validation logic missed the argument to String.format causing confusing errors new 5dfb75e2b3 Fix topology loading new 9b526b0e62 Fix null field accounting new bc5d110b42 Expose epoch ready state as a vtable for operators to inspect things new 5018d2e9a5 Fix flakey test org.apache.cassandra.simulator.test.ShortPaxosSimulationTest#casOnAccordSimulationTest new 2fddaa4186 (Accord) Fix recovery when one shard is committed/stable and another is preaccepted Also fix: - Topology slicing must declare whether we share/slice node ownership (to assist above) - CFK.visit removes transitive dependencies too eagerly across epoch change - apply cleanup to builder consistently, and construct the same value we would produce by purge (so that replay is idempotent) - Invoke ExecuteTxn.LocalExecute callbacks on originating CommandStore - misc other [...] new 13760a2766 Fix AccordMigrationTest, preclude possible races in topology propagation new 662fffd476 Improve stability of tests with many epochs new 6a966bb020 Accord: Serialization Improvements new 41c474912c Fix: - Only use persisted RedundantBefore for compaction - RouteIndex should index only touches, not Route - Flush RangesForEpoch updates to journal immediately, so we do not rely on the command we are processing succeeding - DurableBefore updates must wait for the epochs to be known locally - Shard.mustWitnessEpoch to support guaranteeing to witness relevant non-topology schema changes - We must propagate RedundantBefore RX shard bounds along with epoch syncs - [...] new cc399c49e2 Accord fixes: - Bad ArrayBuffers recycling logic - RX must ensure dependencies TRANSITIVE_VISIBLE - Permit constructing "antiRange" that spans multiple prefixes - Not computing range CommandSummary IsDep correctly - Truncated commands that aren't shard durable could not repopulate CFK on replay, permitting recovery of another command to make an incorrect decision - NPE on async persist of RX (i.e. supplying no callback) - NPE in Builder.shouldCleanup when durabi [...] new eac6b7a9f8 Integrate RX with Cassandra Repair, so that repair safely flushes pending topology and other durability requirements. Also improve: - Introduce DurabilityService - Retire SyncPoint, replace Barrier with Write and RX - MessageType -> enum, restore GetMaxConflict - Standardise backoff logic with WaitStrategy - improve TimeoutStrategy/RetryStrategy specification strings - Forbid KX, remove directKeyDeps - Introduce UniqueTimeService, permitting hlc reservations for [...] new 0c2f5ae05d Add initial Accord Overview Doc new 48c2c92c45 InterceptingExecutor.schedule returns a simulator-unsafe Future new 7285a39070 When bootstrap fails the retry field is not populated which leads to a NPE new 35bd997b47 Epoch/Topology Garbage Collection new e9b0a8aa61 Implement Nemesis compactor, improve partial compaction new 06e9aaf9fd Topology mixup tests should do repairs for host replacement and other required topology changes new 60df5fd1a7 Fix: - Decouple command serialization from TableMetadata version; introduce ColumnMetadata ids; gracefully handle missing TableId - DataInputPlus.readLeastSignificantBytes must truncate high bits - Fix RandomPartitioner accord serialization - Fast path stable commits must not override recovery propose/commit decisions regarding visibility of a transaction - RejectBefore must mergeMax, not merge, to ensure we maintain epoch and hlc increasing independently - Bad c [...] new 98e2d8c47c Accord repin: turn pruning back on new fbaf72fb99 Decouple Accord serializers from C* message version so accord can make changes without impacting C* messaging new 44b8cd26a1 Fix: - Accord Journal purging was disabled - remove unique_id from schema keyspace - avoid String.format in Compactor hot path - avoid string concatenation on hot path; improve segment compactor partition build efficiency - Partial compaction should update records in place to ensure truncation of discontiguous compactions do not lead to an incorrect field version being used - StoreParticipants.touches behaviour for RX was erroneously modified; should touch all no [...] new 0acf29f6ae Accord: test fixes and stability improvements * Fix short accord simulation test (seed 0x6bea128ae851724b), ConcurrentModificationException * Increase wait time during closing to avoid Unterminated threads * Increase timeouts, improve test stability * More descriptive output from CQL test * Shorten max CMS delay * Improve future handling in config service new 7be53d514e fixing post-rebase checkstyle problems This update added new revisions after undoing existing revisions. That is to say, some revisions that were in the old version of the branch are not in the new version. This situation occurs when a user --force pushes a change and generates a repository containing something like this: * -- * -- B -- O -- O -- O (5ea9486d8f) \ N -- N -- N refs/heads/cep-15-accord (7be53d514e) You should already have received notification emails for all of the O revisions, and so the following emails describe only the N revisions from the common base, B. Any revisions marked "omit" are not gone; other references still refer to them. Any revisions marked "discard" are gone forever. The 118 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: .../cql3/statements/schema/DropTableStatement.java | 24 ++++++++++++++++++++++ .../tcm/sequences/InProgressSequences.java | 12 +++++------ 2 files changed, 30 insertions(+), 6 deletions(-) --------------------------------------------------------------------- To unsubscribe, e-mail: commits-unsubscr...@cassandra.apache.org For additional commands, e-mail: commits-h...@cassandra.apache.org