[
https://issues.apache.org/jira/browse/CASSANDRA-9985?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=14659837#comment-14659837
]
Benedict commented on CASSANDRA-9985:
-------------------------------------
So, I've pushed a version with Guava's test case included, but with two failing
tests removed because IMO they aren't things we should worry about:
1) Reentrancy in {{hasNext()}}, i.e. if you create a {{computeNext()}} method
that recursively calls {{hasNext()}} then it will throw ISE
2) Continuing to use an iterator that threw an exception during
{{computeNext()}}, which will also throw ISE
My view is that neither check buys us much, and I prefer the code clarity of
the current implementation. However support is easily added at the expense of a
bit of ugliness.
> Introduce our own AbstractIterator
> ----------------------------------
>
> Key: CASSANDRA-9985
> URL: https://issues.apache.org/jira/browse/CASSANDRA-9985
> Project: Cassandra
> Issue Type: Sub-task
> Components: Core
> Reporter: Benedict
> Assignee: Benedict
> Priority: Trivial
> Fix For: 3.0.0 rc1
>
>
> The Guava AbstractIterator not only has unnecessary method call depth, it is
> difficult to debug without attaching source. Since it's absolutely trivial to
> write our own, and it's used widely within the codebase, I think we should do
> so.
--
This message was sent by Atlassian JIRA
(v6.3.4#6332)