Skip to content

CASSANALYTICS-190 Add overridable extension points for version-varying Cassandra calls - #231

Open
skoppu22 wants to merge 3 commits into
apache:trunkfrom
skoppu22:distribution-override-seams
Open

CASSANALYTICS-190 Add overridable extension points for version-varying Cassandra calls#231
skoppu22 wants to merge 3 commits into
apache:trunkfrom
skoppu22:distribution-override-seams

Conversation

@skoppu22

@skoppu22 skoppu22 commented Aug 10, 2026

Copy link
Copy Markdown
Contributor

Introduce small extension points (override hooks) around the handful of cassandra-all calls whose shape or behavior varies between Cassandra distributions, so a distribution can supply its own implementations without copying or shadowing the large shared classes.

Circle CI pipeline : https://app.circleci.com/pipelines/gh/skoppu22/cassandra-analytics/193/details?useNewPipelines=true&workflowId=25876893-de40-485f-a0f9-0056213472d3

Add minimal, distribution-agnostic extension points so a Cassandra distribution whose engine API differs from stock Apache 5.0 can plug in without duplicating the shared analytics classes: overridable SchemaVersionApi/SchemaUpdater strategy facades; a concrete, subclassable BridgeClientInitializer discovered via ServiceLoader; a prefix-tolerant on-disk SSTable data-file-name assertion in the integration base; sealed tombstone/JSON SSTable writers; and BtiReaderUtils moved into the shared reader module. All defaults reproduce stock Apache Cassandra 5.0 behavior.
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