You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@cassandra.apache.org by "Jonathan Ellis (JIRA)" <ji...@apache.org> on 2011/03/14 17:46:29 UTC

[jira] Assigned: (CASSANDRA-2316) NoSuchElement exception on node which is streaming a repair

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

Jonathan Ellis reassigned CASSANDRA-2316:
-----------------------------------------

    Assignee: Stu Hood

The loop in validator.add apparently assumes that _some_ range will contain any given row. But

- ranges is supposed to be "invalid" ranges not all ranges
- comments in validator.add say it is called for each row in the CF
- so any rows that are not part of an "invalid" range will cause this exception

So either my superficial understanding of what "invalid" ranges are is broken, or the comments are wrong, or I'm surprised we're not hitting this a lot more frequently.

> NoSuchElement exception on node which is streaming a repair
> -----------------------------------------------------------
>
>                 Key: CASSANDRA-2316
>                 URL: https://issues.apache.org/jira/browse/CASSANDRA-2316
>             Project: Cassandra
>          Issue Type: Bug
>    Affects Versions: 0.7.3
>            Reporter: Jason Harvey
>            Assignee: Stu Hood
>            Priority: Minor
>              Labels: repair
>
> Running latest SVN snapshot of 0.7.
> When I ran a repair on a node, that node's neighbor threw the following exception. Let me know what other info could be helpful.
> {code}
>  INFO 23:43:44,358 Streaming to /10.251.166.15
> ERROR 23:50:21,321 Fatal exception in thread Thread[CompactionExecutor:1,1,main]
> java.util.NoSuchElementException
>         at com.google.common.collect.AbstractIterator.next(AbstractIterator.java:146)
>         at org.apache.cassandra.service.AntiEntropyService$Validator.add(AntiEntropyService.java:366)
>         at org.apache.cassandra.db.CompactionManager.doValidationCompaction(CompactionManager.java:825)
>         at org.apache.cassandra.db.CompactionManager.access$800(CompactionManager.java:56)
>         at org.apache.cassandra.db.CompactionManager$6.call(CompactionManager.java:358)
>         at java.util.concurrent.FutureTask$Sync.innerRun(FutureTask.java:334)
>         at java.util.concurrent.FutureTask.run(FutureTask.java:166)
>         at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1110)
>         at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:603)
>         at java.lang.Thread.run(Thread.java:636)
> {code}

--
This message is automatically generated by JIRA.
For more information on JIRA, see: http://www.atlassian.com/software/jira