[
https://issues.apache.org/jira/browse/CASSANDRA-18216?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=18090733#comment-18090733
]
Caleb Rackliffe commented on CASSANDRA-18216:
---------------------------------------------
[~naseryyash] Started to take a look at test coverage, as I think focusing on
that first will flush out other problems (if they exist) early. One of the big
things I notice right away is that I'm not sure if we have coverage for the
changes to {{RowMapping#merge()}}. In other words, I don't think there are
tests that actually query an index both before and after flushing with a
sharded index. There are multiple ways to do this:
1.) Add support for sharding to the tests based onĀ {{AbstractQueryTester}}.
2.) Add support for sharding to {{SAITester}}, which itself is already
randomized along other configuration dimensions (like memtable type, etc.)
3.) Add support for sharding to the AST fuzz tests. Take a look at
{{SingleNodeTableWalkTest}}.
4.) Add support for sharding to the tests based on {{IndexingTypeSupport}}.
We can do any combination of the above, but the most critical is probably #3.
For the other approaches, we would just need to think about the trade-offs of
coverage vs. additional test runtime. Either way, we can also chat about it a
bit offline too.
> Allow sharding of the SAI in-memory index
> ------------------------------------------
>
> Key: CASSANDRA-18216
> URL: https://issues.apache.org/jira/browse/CASSANDRA-18216
> Project: Apache Cassandra
> Issue Type: Improvement
> Components: Feature/SAI
> Reporter: Mike Adamson
> Assignee: Yash Sunil Nasery
> Priority: Normal
> Labels: SAI
> Fix For: 6.x
>
>
> The Memtable implementation allows it to be split into a number of shards.
> This reduces contention during writes.
> The MemtableIndex in SAI should follow this practice. It currently does not
> support sharding so all writes hit the same synchronized write block. The
> in-memory index search can also use the sharding to reduce the number of
> indexes that it searches based on the key range passed to the search.
> This exists already in the DS fork:
> https://github.com/datastax/cassandra/pull/298
--
This message was sent by Atlassian Jira
(v8.20.10#820010)
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]