[ 
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

Reply via email to