[ 
https://issues.apache.org/jira/browse/CASSANDRA-15066?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16807254#comment-16807254
 ] 

Jason Brown commented on CASSANDRA-15066:
-----------------------------------------

I believe many of these changes indeed improve the quality of the code and 
long-term strengthen the system, but seem best targetted at 4.NEXT. I and 
others would like to collaborate on this effort going forward.

The introduction of a slew of new features (checksumming, reimplementing parts 
of netty (AsyncPromise, LZ4 compression, replacing netty’s ByteBufAllocator 
with c*’s)) and major reimplementations (droppable verbs/verb priority, 
semantic changes to connection types) seven months after the community declared 
a feature freeze for 4.0 seems ill-advised, at best. The size, scope, and depth 
of this patch, which touches many vital components, invalidates most 4.0 
testing hitherto.

In my estimation, a fair and thorough review of the current patch alone, by 
myself and others, would be at least 2 solid months, as there is a lot of new 
complexity introduced. Significant additional time would be required for 
integration testing. At the barest minimum, this patch should be broken up into 
separate tickets, review them indivdidually, and merge them incrementally. 
Additionaly, I think having a discussion on dev@, as you proposed, would be 
highly beneficial.

Further, CASSANDRA-14503 was posted for REVIEW, in the hopes that we could have 
a discussion around the current state of trunk and the patch I submitted. I 
appreciate the reporting of the bugs you found and work you invested. Beyond 
that, however, there has not been any meaningful discussion or engagement. I 
would have appreciated the opportunity to collaborate on this effort, 
especially as I have personally invested much time and effort into this work.

To sum up, I am -1 on this work in it's current form *for 4.0* as the new 
features violate the freeze, and many of the new implementations violate 
principle of reducing risk and increase stability as we run up to 4.0.

> Improvements to Internode Messaging
> -----------------------------------
>
>                 Key: CASSANDRA-15066
>                 URL: https://issues.apache.org/jira/browse/CASSANDRA-15066
>             Project: Cassandra
>          Issue Type: Improvement
>          Components: Messaging/Internode
>            Reporter: Benedict
>            Assignee: Benedict
>            Priority: Normal
>             Fix For: 4.0
>
>
> CASSANDRA-8457 introduced asynchronous networking to internode messaging, but 
> there have been several follow-up endeavours to improve some semantic issues. 
>  CASSANDRA-14503 and CASSANDRA-13630 are the latest such efforts, and were 
> combined some months ago into a single overarching refactor of the original 
> work, to address some of the issues that have been discovered.  Given the 
> criticality of this work to the project, we wanted to bring some more eyes to 
> bear to ensure the release goes ahead smoothly.  In doing so, we uncovered a 
> number of issues with messaging, some of which long standing, that we felt 
> needed to be addressed.  This patch widens the scope of CASSANDRA-14503 and 
> CASSANDRA-13630 in an effort to close the book on the messaging service, at 
> least for the foreseeable future.
> The patch includes a number of clarifying refactors that touch outside of the 
> {{net.async}} package, and a number of semantic changes to the {{net.async}} 
> packages itself.  We believe it clarifies the intent and behaviour of the 
> code while improving system stability, which we will outline in comments 
> below.
> https://github.com/belliottsmith/cassandra/tree/messaging-improvements



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)

---------------------------------------------------------------------
To unsubscribe, e-mail: commits-unsubscr...@cassandra.apache.org
For additional commands, e-mail: commits-h...@cassandra.apache.org

Reply via email to