[
https://issues.apache.org/jira/browse/CASSANDRA-15393?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17192414#comment-17192414
]
Blake Eggleston commented on CASSANDRA-15393:
---------------------------------------------
Pushed up a new branch
[here|https://github.com/bdeggleston/cassandra/tree/15393-rebase-09-02], this
was recently rebased onto trunk and I think I've addressed all review feedback,
including reverting several buffer to accessor conversions, with the exceptions
below:
* I didn't convert ConterContext.clearAllLocal to byte[] only because all the
tests are written with byte buffers.
* For ModificationStatement and *CBuilder, I started attempting to unwind this
and remembered why I'd done it in the first place. Basically, the places where
you can be explicit (ie: ModificationStatement) are tangentially linked to the
places where we can't be (ie: Cell) through classes used in the coordinator and
replica read paths. Things like slices and filters and stuff. Using <?> across
the board avoids having to deal with places where you need to figure out how to
use Comparator<Clustering<ByteBuffer>> from ModificaionStatement with
Clustering<?> from a Row.
* The lack of a native accessor is no worse than the current state of things,
and would be straightforward to add in the future.
* I didn't remove version from the collection serializers
* I also didn't convert the randomized tests to QT. I'm not opposed to the
idea, but I don't have the time to devote to the conversion right now.
> Add byte array backed cells
> ---------------------------
>
> Key: CASSANDRA-15393
> URL: https://issues.apache.org/jira/browse/CASSANDRA-15393
> Project: Cassandra
> Issue Type: Sub-task
> Components: Local/Compaction
> Reporter: Blake Eggleston
> Assignee: Blake Eggleston
> Priority: Normal
> Fix For: 4.0-beta
>
> Time Spent: 20m
> Remaining Estimate: 0h
>
> We currently materialize all values as on heap byte buffers. Byte buffers
> have a fairly high overhead given how frequently they’re used, and on the
> compaction and local read path we don’t do anything that needs them. Use of
> byte buffer methods only happens on the coordinator. Using cells that are
> backed by byte arrays instead in these situations reduces compaction and read
> garbage up to 22% in many cases.
--
This message was sent by Atlassian Jira
(v8.3.4#803005)
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]