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

Dinesh Joshi commented on CASSANDRA-15470:
------------------------------------------

Hi [~jrwest], I have made changes per your feedback. 
{{testIndexedReaderRowDeletion}}, {{testIndexedReaderTombstone}} and 
{{testIndexedReaderRT}} get the {{column_index_size_in_kb}}. Unfortunately get 
getter, {{getColumnIndexSize}}, returns this in bytes while the setter 
{{setColumnIndexSize}} accepts it in KB. This leads to a situation that we 
cannot pass in the value returned from the getter into the setter. This issue 
surfaced when we added the overflow checks. I think in the longer term we need 
to fix this throughout the codebase but that is an exercise for another ticket.

> Potential Overflow in DatabaseDescriptor Functions That Convert Between KB/MB 
> & Bytes
> -------------------------------------------------------------------------------------
>
>                 Key: CASSANDRA-15470
>                 URL: https://issues.apache.org/jira/browse/CASSANDRA-15470
>             Project: Cassandra
>          Issue Type: Bug
>          Components: Local/Config
>            Reporter: Jordan West
>            Assignee: Mallika Kulkarni
>            Priority: Normal
>              Labels: pull-request-available
>             Fix For: 4.0-rc
>
>          Time Spent: 10m
>  Remaining Estimate: 0h
>
> {{DatabaseDescriptor}} has several functions that convert between user 
> supplied sizes in KB/MB and bytes. These are implemented without much 
> consistency and, while unlikely, several have the potential to overflow since 
> validation on the input is missing. Meanwhile, some widen the number to a 
> long correctly. Options include: widening in all places or simply doing 
> better validation on start up — currently only the lower bound of the valid 
> range is checked for many of these fields.
> List of Affected {{DatabaseDescriptor}} Methods:
>  * {{getColumnIndexSize}}
>  * {{getColumnIndexCacheSize}}
>  * {{getBatchSizeWarnThreshold}}
>  * {{getNativeTransportFrameBlockSize}}
>  * {{getRepairSessionSpaceInMegabytes}}
>  * {{getNativeTransportMaxFrameSize}}



--
This message was sent by Atlassian Jira
(v8.3.4#803005)

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

Reply via email to