You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@cassandra.apache.org by "Benedict (JIRA)" <ji...@apache.org> on 2018/09/21 21:56:00 UTC

[jira] [Commented] (CASSANDRA-14782) Large mutations can wreak havoc before being rejected by the commit log

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

Benedict commented on CASSANDRA-14782:
--------------------------------------

They don't even need to be large mutations, they can be corrupted or deliberately crafted DoS messages.  See the related ticket CASSANDRA-14433.  I agree that a server-side limit makes sense, and at the same time we should probably be verifying that we are deserializing a valid quantity of data from the stream before allocating the buffer as well.

> Large mutations can wreak havoc before being rejected by the commit log
> -----------------------------------------------------------------------
>
>                 Key: CASSANDRA-14782
>                 URL: https://issues.apache.org/jira/browse/CASSANDRA-14782
>             Project: Cassandra
>          Issue Type: Bug
>            Reporter: Jordan West
>            Priority: Major
>
> Large mutations are rejected by the commit log (https://github.com/apache/cassandra/blob/cassandra-3.0/src/java/org/apache/cassandra/db/commitlog/CommitLog.java#L254) but when {{totalSize}} is significantly greater than the {{MAX_MUTATION_SIZE}} the damage to the node may already done. Large mutations cause large buffers to be allocated and can lead to GC trashing and generally bad node health. 
> It should be possible to set a size above which the native protocol rejects messages without materializing them into objects and passing them downstream. 
>  



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

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