[ https://issues.apache.org/jira/browse/CASSANDRA-18784?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17769726#comment-17769726 ]
Blake Eggleston commented on CASSANDRA-18784: --------------------------------------------- After some discussion with Benedict, I've rewritten the previously posted patch here: https://github.com/belliottsmith/cassandra-accord/pull/7 This complements eviction by actively removing commands from CommandsForKeys so they don't have to be loaded, which should improve loading times and allocations significantly in workloads with high contention. Most of this patch is refactoring commands for keys into a small TimestampsForKey object and 2 sets of CommandsForKey. One that includes all unevicted commands, for use with recovery, and another containing only the commands needed to calculate deps for new operations. PreLoadContext has been updated to support specifying which command timeseries, if any, needs to be loaded for an operation. The command timeseries component is no longer directly updateable, but is updated via a CommandsForKey updater, which can target one or both subsets. On the Cassandra side, this will enable caching blind updates from the CFK listener and flushing to disk when appropriate, without having to first load them into memory. > CEP-15: Accord - reduce command deps > ------------------------------------ > > Key: CASSANDRA-18784 > URL: https://issues.apache.org/jira/browse/CASSANDRA-18784 > Project: Cassandra > Issue Type: Improvement > Components: Accord > Reporter: Blake Eggleston > Assignee: Blake Eggleston > Priority: Normal > > Commands do not need to list every known command as a dependency, by taking > deps on the most recently committed commands, and the chain of deps between > them and any uncommitted commands. -- This message was sent by Atlassian Jira (v8.20.10#820010) --------------------------------------------------------------------- To unsubscribe, e-mail: commits-unsubscr...@cassandra.apache.org For additional commands, e-mail: commits-h...@cassandra.apache.org