[ 
https://issues.apache.org/jira/browse/CASSANDRA-3385?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Nicholas Telford updated CASSANDRA-3385:
----------------------------------------

    Attachment: 0001-Changed-assertions-in-delivery-of-hints-to-a-check-t.patch

As Jonathan said, it looks like either old hints that haven't been cleaned or 
some corruption to the hints that are stored.

While it's probably important to find the source of this problem, I think it's 
really bad that we use assertions to check for it. Hinted Handoff is an 
optimization, so for invalid hints shouldn't break things.

The attached patch removes the assertions and replaces them with a check to 
ensure the hint is valid. If it's not, a warning will be emitted (so you know 
something's not quite right) and everything will continue as normal.
                
> NPE in hinted handoff
> ---------------------
>
>                 Key: CASSANDRA-3385
>                 URL: https://issues.apache.org/jira/browse/CASSANDRA-3385
>             Project: Cassandra
>          Issue Type: Bug
>            Reporter: Yang Yang
>            Priority: Critical
>         Attachments: 
> 0001-Changed-assertions-in-delivery-of-hints-to-a-check-t.patch
>
>
> I'm using the current HEAD of 1.0.0 github branch, and I'm still seeing this 
> error, not sure if it's  this bug or another one.
>  INFO [HintedHandoff:1] 2011-10-19 12:43:17,674 HintedHandOffManager.java 
> (line 263) Started hinted handoff for token: 11342745564
> 0312821154458202477256070484 with IP: /10.39.85.140
> ERROR [HintedHandoff:1] 2011-10-19 12:43:17,885 AbstractCassandraDaemon.java 
> (line 133) Fatal exception in thread Thread[HintedHan
> doff:1,1,main]
> java.lang.RuntimeException: java.lang.NullPointerException
>         at 
> org.apache.cassandra.utils.WrappedRunnable.run(WrappedRunnable.java:34)
>         at 
> java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:886)
>         at 
> java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:908)
>         at java.lang.Thread.run(Thread.java:662)
> Caused by: java.lang.NullPointerException
>         at 
> org.apache.cassandra.db.HintedHandOffManager.deliverHintsToEndpoint(HintedHandOffManager.java:289)
>         at 
> org.apache.cassandra.db.HintedHandOffManager.access$100(HintedHandOffManager.java:81)
>         at 
> org.apache.cassandra.db.HintedHandOffManager$2.runMayThrow(HintedHandOffManager.java:337)
>         at 
> org.apache.cassandra.utils.WrappedRunnable.run(WrappedRunnable.java:30)
>         ... 3 more
> ERROR [HintedHandoff:1] 2011-10-19 12:43:17,886 AbstractCassandraDaemon.java 
> (line 133) Fatal exception in thread Thread[HintedHandoff:1,1,main]
> java.lang.RuntimeException: java.lang.NullPointerException
>         at 
> org.apache.cassandra.utils.WrappedRunnable.run(WrappedRunnable.java:34)
>         at 
> java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:886)
>         at 
> java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:908)
>         at java.lang.Thread.run(Thread.java:662)
> Caused by: java.lang.NullPointerException
>         at 
> org.apache.cassandra.db.HintedHandOffManager.deliverHintsToEndpoint(HintedHandOffManager.java:289)
>         at 
> org.apache.cassandra.db.HintedHandOffManager.access$100(HintedHandOffManager.java:81)
>         at 
> org.apache.cassandra.db.HintedHandOffManager$2.runMayThrow(HintedHandOffManager.java:337)
>         at 
> org.apache.cassandra.utils.WrappedRunnable.run(WrappedRunnable.java:30)
>         ... 3 more
> this could possibly be related to #3291

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators: 
https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira

        

Reply via email to