No qualms with that here; it'll be a bit before GA so this has time to soak.

On Thu, Aug 27, 2020 at 8:21 PM Blake Eggleston
<beggles...@apple.com.invalid> wrote:

> Caleb is currently working through his second round of review, and Marcus
> said he's about halfway through his review as of this morning. So I'd
> expect it to be committed within a week or so.
>
> > On Aug 27, 2020, at 5:09 PM, Joshua McKenzie <jmcken...@apache.org>
> wrote:
> >
> > Is there an ETA on them landing? The later, the more risk to stability of
> > GA due to lack of time soaking.
> >
> > On Thu, Aug 27, 2020 at 4:01 PM Blake Eggleston
> > <beggles...@apple.com.invalid> wrote:
> >
> >> Hi dev@,
> >>
> >> Mick asked that I check in w/ the dev list about CASSANDRA-15393.
> There's
> >> some concern regarding the patch and it's suitability for inclusion in
> >> 4.0-beta.
> >>
> >> CASSANDRA-15393 reduces garbage created by compaction and the read paths
> >> by about 25%. It's part of CASSANDRA-15387, which, including this patch,
> >> reduces garbage from the read and compaction paths by about 50%.
> >> CASSANDRA-15393 does this by supporting byte array backed cell and
> >> clustering types, which is acheived by abstracting the backing type
> >> (ByteBuffer/byte[]) from the serialization logic.
> >>
> >> To avoid paying the allocation cost of adding a container object,
> >> singleton "accessor" objects are used to operate on the actual data. See
> >> here for an example:
> >> https://gist.github.com/bdeggleston/52910225b817a8d54353125ca03f521d
> >>
> >> Mick and Robert Stupp have raised a few concerns, summarized below:
> >>
> >> 1. The patch is large (208 files / ~3.5k LOC)
> >> 2. Concerns about impact on stability
> >> 3. Parameterizing cell/clustering value types in this way makes
> >> ClassCastExceptions possible.
> >> 4. implications of feature freeze
> >>
> >> The patch is large, but the vast majority of it is adding type
> parameters
> >> to things. The changes here are wide, but not deep. The most complex
> parts
> >> are the collection serializers and other places where we're now having
> to
> >> do offset bookkeeping. These should be carefully reviewed, but they
> >> shouldn't be too difficult to verify and I've added some randomized
> tests
> >> to check them against a wide range of schemas. I'll also run some diff
> >> tests against clusters internally.
> >>
> >> Parameterizing cell and clustering values does make ClassCastExceptions
> >> possible, but java's type system guards against this for the most part.
> >> Regarding the feature freeze, I don't think it applies to performance
> >> improvements.
> >>
> >> Back to the point about stability though: in pracice, compaction gc is a
> >> major contributor to cluster instability. In my experience, about 30% of
> >> availability issues are gc related. Also, compaction gc tends to be the
> >> limiting factor for repair, host replacements, and other topology
> changes,
> >> which limits how quickly you can recover from other issues. So the patch
> >> does add some risk, but I think it's a net win for stability.
> >>
> >> Thoughts?
> >> ---------------------------------------------------------------------
> >> To unsubscribe, e-mail: dev-unsubscr...@cassandra.apache.org
> >> For additional commands, e-mail: dev-h...@cassandra.apache.org
> >>
> >>
>
>
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: dev-unsubscr...@cassandra.apache.org
> For additional commands, e-mail: dev-h...@cassandra.apache.org
>
>

Reply via email to