Hi all As one would expect, I've been involved in several discussions lately on what is going to make it into 4.1, versus what patches unfortunately won't.
In particular debating this with Patrick McFaddin we realized that a big theme in 4.1 appears to be a huge number of pluggability improvements. So the intent of this email is to take an inventory of all new plugin APIs I'm aware of, and invite the community to add to the list where I'm not aware of some work. CEP-9 <https://cwiki.apache.org/confluence/display/CASSANDRA/CEP-9%3A+Make+SSLContext+creation+pluggable> Pluggable SSLContext. Allows to store SSL certs and secrets elsewhere than in files. Supplies an example implementation for storing as Kubernetes Secret. *CEP-10* <https://cwiki.apache.org/confluence/display/CASSANDRA/CEP-10%3A+Cluster+and+Code+Simulations> SimpleCondition, Semaphore, CountDownLatch, BlockingQueue, etc Executors, futures, starting threads, etc - including important improvements to consistency of approach in the codebase The use of currentTimeMillis and nanoTime The replacement of java.io.File with a wrapper on java.nio.files.Path providing an ergonomic API, and some improvements to consistency of file handling Support for alternative streaming implementations Improvements to the dtest API to support necessary functionality Commentary: Of the above at least the Path and alternative streaming implementations seem like significant APIs that can be used for much more than just fault injection. In fact, I believe java.nio.files.Path is what we use in Astra Serverless to send files to S3 instead of local filesystem. *CEP-11* <https://cwiki.apache.org/confluence/display/CASSANDRA/CEP-11%3A+Pluggable+memtable+implementations> Pluggable memtable Commentary: While we won't have any new memtable implementations in 4.1, it is a goal to merge the memtable API this week. Notably, since this is designed to support also persistent memtables (ie memtable on persistent memory), this new API could essentially be seen as a full blown storage engine API. *CASSANDRA-17044* <https://issues.apache.org/jira/browse/CASSANDRA-17044> Pluggable schema management I hear rumors someone may be working on a new schema management implementation? (Just for completeness, CASSANDRA-17058 <https://issues.apache.org/jira/browse/CASSANDRA-17058> pluggable cluster membership is not merged.) CEP-16 <https://cwiki.apache.org/confluence/display/CASSANDRA/CEP-16%3A+Auth+Plugin+Support+for+CQLSH> While client side, worth mentioning: Pluggable auth for CQLSH If there are more that I don't know about, please reply and add to the list. henrik -- Henrik Ingo +358 40 569 7354 <358405697354> [image: Visit us online.] <https://www.datastax.com/> [image: Visit us on Twitter.] <https://twitter.com/DataStaxEng> [image: Visit us on YouTube.] <https://urldefense.proofpoint.com/v2/url?u=https-3A__www.youtube.com_channel_UCqA6zOSMpQ55vvguq4Y0jAg&d=DwMFaQ&c=adz96Xi0w1RHqtPMowiL2g&r=IFj3MdIKYLLXIUhYdUGB0cTzTlxyCb7_VUmICBaYilU&m=bmIfaie9O3fWJAu6lESvWj3HajV4VFwgwgVuKmxKZmE&s=16sY48_kvIb7sRQORknZrr3V8iLTfemFKbMVNZhdwgw&e=> [image: Visit my LinkedIn profile.] <https://www.linkedin.com/in/heingo/>