[ https://issues.apache.org/jira/browse/CASSANDRA-4384?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13403994#comment-13403994 ]
Eric Evans commented on CASSANDRA-4384: --------------------------------------- bq. ...so I would prefer this be in LocationInfo with the tokens... Tokens are now in the {{peers}} columnfamily, keyed by the token with one column for the peer (inet address). With vnodes, that will become many-to-one (the endpoints will not be unique). Host IDs are one-to-one. The most straightforward approach seemed to be to create another columnfamily (peer_ids?), similar to {{peers}}, but keyed by host ID. > HintedHandoff can begin before SS knows the hostID > -------------------------------------------------- > > Key: CASSANDRA-4384 > URL: https://issues.apache.org/jira/browse/CASSANDRA-4384 > Project: Cassandra > Issue Type: Bug > Components: Core > Affects Versions: 1.2 > Reporter: Brandon Williams > Assignee: Eric Evans > Fix For: 1.2 > > > Since HH fires from the FD, SS won't quite have the hostId yet: > {noformat} > INFO 18:58:04,196 Started hinted handoff for host: null with IP: > /10.179.65.102 > INFO 18:58:04,197 Node /10.179.65.102 state jump to normal > ERROR 18:58:04,197 Exception in thread Thread[HintedHandoff:1,1,main] > java.lang.NullPointerException > at org.apache.cassandra.utils.UUIDGen.decompose(UUIDGen.java:120) > at > org.apache.cassandra.db.HintedHandOffManager.deliverHintsToEndpointInternal(HintedHandOffManager.java:304) > at > org.apache.cassandra.db.HintedHandOffManager.deliverHintsToEndpoint(HintedHandOffManager.java:250) > at > org.apache.cassandra.db.HintedHandOffManager.access$400(HintedHandOffManager.java:87) > at > org.apache.cassandra.db.HintedHandOffManager$4.runMayThrow(HintedHandOffManager.java:433) > at > org.apache.cassandra.utils.WrappedRunnable.run(WrappedRunnable.java:26) > 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) > {noformat} > Simple solution seems to be getting the hostId from gossip instead. -- 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