Details
-
Improvement
-
Status: Resolved
-
Normal
-
Resolution: Fixed
-
None
-
None
Description
I found ArrayBackedRow a little hard to follow, especially around building, so I've converted it to BTreeBackedRow, along with ComplexColumnData. Both now rely on BTree.Builder, which introduces a little extra functionality to permit these classes to be implemented more declaratively. Transformations of these classes are also now uniform and more declarative, also depending on some new functionality in BTree that permits applying a transformation/filtration to an existing btree (this could be optimised at a later date, but should suffice for now).
The result is IMO both clearer and should scale more gracefully to larger numbers of columns and complex cells.
This hasn't taken all of the possible improvements of the back of this change to their natural conclusion, as we are somewhat time pressed and I would prefer to get the ball rolling with this first round.
Attachments
Issue Links
- is part of
-
CASSANDRA-8099 Refactor and modernize the storage engine
- Resolved