Skip to content

CASSANDRA-21237 Fix clustering keys order in KeyLookupBench#4683

Open
k-rus wants to merge 1 commit intoapache:trunkfrom
k-rus:rf-fix-keylookupbench
Open

CASSANDRA-21237 Fix clustering keys order in KeyLookupBench#4683
k-rus wants to merge 1 commit intoapache:trunkfrom
k-rus:rf-fix-keylookupbench

Conversation

@k-rus
Copy link
Contributor

@k-rus k-rus commented Mar 18, 2026

Generating clustering keys per partition in lexicographical order, since sorting primary keys afterwords is not enough. Also fixes the condition for starting new partition. Both fixes were needed to solve the "IllegalArgumentException: Clustering keys must be in ascending lexographical order".

Ordering clustering key is implemented through a helper inner class, so the generated strings can be sorted before making keys.

Also:

  • Fixes to use decomposeUntyped
  • Fixes formatting with missing spaces

Hopefully this changes are not disturbing.

patch by Ruslan Fomkin; reviewed by for CASSANDRA-21237

Generating clustering keys per partition in lexicographical order,
since sorting primary keys afterwords is not enough. Also fixes the
condition for starting new partition. Both fixes were needed to solve
the "IllegalArgumentException: Clustering keys must be in ascending
lexographical order".

Ordering clustering key is implemented through a helper inner class,
so the generated strings can be sorted before making keys.

Also:
- Fixes to use decomposeUntyped
- Fixes formatting with missing spaces
@k-rus
Copy link
Contributor Author

k-rus commented Mar 18, 2026

Java 11 CI build: http://ci-cassandra.infra.datastax.com/job/cassandra/90/
Java 17 CI build: http://ci-cassandra.infra.datastax.com/job/cassandra/91/

Builds succeeded except few unrelated test failures. The benchmark is not port CI build, so the CI builds confirm that there is no compilation errors only. I don't know how KeyLookupBench can be tested, except running locally.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant