Skip to content

Conversation

shyla226
Copy link
Contributor

Code changes proposed here will

  • enable loading jar file in the classpath using service loader for compression
  • Introduces a factory for service providers to create a compressor instance
  • Will validate name of the service provider against name specified in cassandra.yaml file
  • Creates a decorated compressor, with fallback to base compressor option in the case of an exception

@yifan-c yifan-c self-requested a review October 10, 2025 22:40
@smiklosovic smiklosovic self-requested a review October 13, 2025 10:07
@smiklosovic
Copy link
Contributor

smiklosovic commented Oct 13, 2025

While I see how this patch might be useful I would really like us to solve / finish this first (1). This can have some consequences which might be tricky to integrate with 12937, I can see that. So I would postpone delivery of this until that one is resolved. I do not want to block this one, I just strongly feel like we should focus on 12937 first.

I would also prefer to integrate 12937 together with or very closely following changes introduced by CEP-54 so we are all aligned on that front as well.

While these things seem to be rather innocent changes, once it is introduced into cassandra.yaml we have to live with it literally forever and I would really triple check that this is indeed what we want.

(1) https://issues.apache.org/jira/browse/CASSANDRA-12937

@shyla226
Copy link
Contributor Author

@smiklosovic Thank you for the feedback. Currently, I have the configuration in cassandra.yaml file, to give users better control over what service they want to use.
I will try to see if adding it as a compression option would work better.
Another alternative, is to query the service to identify which compressor it supports and select based on some heuristics, if there are multiple services available.

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.

2 participants