Details
-
New Feature
-
Status: Resolved
-
Normal
-
Resolution: Won't Fix
-
None
-
None
-
None
Description
CASSANDRA-2995 proposes full storage engine pluggability, which is probably unavoidable in the long run. For now though, I'd like to propose an incremental alternative that preserves the sstable model, but allows it to evolve non-linearly.
The sstable "version" field could allow for simple switching between writable sstable types, without moving all the way to differentiating between engines as CASSANDRA-2995 requires. This can be accomplished by moving towards a "feature flags" model (with a mapping between versions and feature sets), rather than a linear versions model (where versions can be strictly ordered and all versions above X have a feature).
There are restrictions on this approach:
- It's sufficient for an alternate SSTable(Writer|Reader|*) set to require a patch to enable (rather than a JAR)
- Filenames/descriptors/components must conform to the existing conventions
Attachments
Attachments
Issue Links
- blocks
-
CASSANDRA-674 New SSTable Format
- Resolved
- is blocked by
-
CASSANDRA-2629 Move key reads into SSTableIterators
- Resolved
- relates to
-
CASSANDRA-2995 Making Storage Engine Pluggable
- Resolved