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

Blake Eggleston commented on CASSANDRA-17596:
---------------------------------------------

Having said that, I'd still lean towards not fixing this, and I don't think 
expecting every method to gracefully handle a null value is practical, or the 
right thing to do. NPEs are a sign something has gone wrong, but not 
necessarily the code that's throwing it. For instance the api for 
{{java.util.Map#put}} states that the programmer should expect an NPE to be 
thrown if they supply a null key. In this case, supplying null instead of an 
empty array is not supported by {{ClusteringBound#create}} and an NPE is thrown.

> Fix NPE in SimpleBuilders.ParititionUpdateBulder.RTBuilder.build
> ----------------------------------------------------------------
>
>                 Key: CASSANDRA-17596
>                 URL: https://issues.apache.org/jira/browse/CASSANDRA-17596
>             Project: Cassandra
>          Issue Type: Bug
>          Components: Legacy/Core
>            Reporter: Stefan Miklosovic
>            Assignee: Stefan Miklosovic
>            Priority: Normal
>             Fix For: 4.0.5, 4.1-rc, 4.x
>
>
> These two arrays are not initialised (1) which means that if I do not set 
> start nor end, when ClusteringBound.create is called, it will be null, but it 
> will fail here (2) as values will be null.
> The fix consists of check if values are null and if they are, we build that 
> bound immediately.
> (1) 
> https://github.com/apache/cassandra/blob/trunk/src/java/org/apache/cassandra/db/SimpleBuilders.java#L257-L258
> (2) 
> https://github.com/apache/cassandra/blob/trunk/src/java/org/apache/cassandra/db/ClusteringBound.java#L128



--
This message was sent by Atlassian Jira
(v8.20.7#820007)

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

Reply via email to