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

Kurt Greaves commented on CASSANDRA-13622:
------------------------------------------

Not sure how keen I am on bounding commitlog_segment_size to 2GB. Obviously 
that's a ridiculous size for a segment, but I have had to increase it to 1.2GB 
in the past to allow a write through. Granted it was a side effect from MV's (I 
think it was streaming related), however the ability to do so helped. Obviously 
that's not great justification but I think it would be better to give it a much 
higher limit (store it as a long) and simply advise users (in docs+yaml) that 
they really shouldn't need to set it above the default. 

Same goes for max_value_size. I don't see any compelling reason we should stop 
people experimenting with that if they want to, as it's really just a safety 
net that the user configures. 

> Better config validation/documentation
> --------------------------------------
>
>                 Key: CASSANDRA-13622
>                 URL: https://issues.apache.org/jira/browse/CASSANDRA-13622
>             Project: Cassandra
>          Issue Type: Bug
>            Reporter: Kurt Greaves
>            Assignee: ZhaoYang
>            Priority: Minor
>              Labels: lhf
>
> There are a number of properties in the yaml that are "in_mb", however 
> resolve to bytes when calculated in {{DatabaseDescriptor.java}}, but are 
> stored in int's. This means that their maximum values are 2047, as any higher 
> when converted to bytes overflows the int.
> Where possible/reasonable we should convert these to be long's, and stored as 
> long's. If there is no reason for the value to ever be >2047 we should at 
> least document that as the max value, or better yet make it error if set 
> higher than that. Noting that although it's bad practice to increase a lot of 
> them to such high values, there may be cases where it is necessary and in 
> which case we should handle it appropriately rather than overflowing and 
> surprising the user. That is, causing it to break but not in the way the user 
> expected it to :)
> Following are functions that currently could be at risk of the above:
> {code:java|title=DatabaseDescriptor.java}
> getThriftFramedTransportSize()
> getMaxValueSize()
> getCompactionLargePartitionWarningThreshold()
> getCommitLogSegmentSize()
> getNativeTransportMaxFrameSize()
> # These are in KB so max value of 2096128
> getBatchSizeWarnThreshold()
> getColumnIndexSize()
> getColumnIndexCacheSize()
> getMaxMutationSize()
> {code}
> Note we may not actually need to fix all of these, and there may be more. 
> This was just from a rough scan over the code.



--
This message was sent by Atlassian JIRA
(v6.4.14#64029)

---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]

Reply via email to