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

Brandon Williams updated CASSANDRA-5815:
----------------------------------------

    Attachment: 5185.txt

Mostly this problem is cosmetic, but the crux of it is that in a couple of 
places we assume that since we're in a call regarding an endpoint, the gossiper 
will always know about the endpoint while we're in the call.  This isn't the 
case with fat clients though, which the gossiper could expire at any time.  
Patch to check that the gossiper actually still knows about the endpoint to 
avoid the NPE.

> NPE from migration manager
> --------------------------
>
>                 Key: CASSANDRA-5815
>                 URL: https://issues.apache.org/jira/browse/CASSANDRA-5815
>             Project: Cassandra
>          Issue Type: Bug
>          Components: Core
>    Affects Versions: 1.1.12
>            Reporter: Vishy Kasar
>            Assignee: Brandon Williams
>            Priority: Minor
>             Fix For: 1.2.12
>
>         Attachments: 5185.txt
>
>
> In one of our production clusters we see this error often. Looking through 
> the source, Gossiper.instance.getEndpointStateForEndpoint(endpoint) is 
> returning null for some end point. De we need any config change on our end to 
> resolve this? In any case, cassandra should be updated to protect against 
> this NPE.
> ERROR [OptionalTasks:1] 2013-07-24 13:40:38,972 AbstractCassandraDaemon.java 
> (line 132) Exception in thread Thread[OptionalTasks:1,5,main] 
> java.lang.NullPointerException 
> at 
> org.apache.cassandra.service.MigrationManager$1.run(MigrationManager.java:134)
>  
> at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:441) 
> at java.util.concurrent.FutureTask$Sync.innerRun(FutureTask.java:303) 
> at java.util.concurrent.FutureTask.run(FutureTask.java:138) 
> at 
> java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.access$301(ScheduledThreadPoolExecutor.java:98)
>  
> at 
> java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.run(ScheduledThreadPoolExecutor.java:206)
>  
> 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)
> It turned out that the reason for NPE was we bootstrapped a node with the 
> same token as another node. Cassandra should not throw an NPE here but log a 
> meaningful error message. 



--
This message was sent by Atlassian JIRA
(v6.1#6144)

Reply via email to