[ 
https://issues.apache.org/jira/browse/CASSANDRA-9985?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=14658273#comment-14658273
 ] 

Benedict commented on CASSANDRA-9985:
-------------------------------------

I wouldn't care if it weren't for the sheer number of these calls that we chain 
together now, so that 75% of your code stepping is through a linked jar. With 
multiple versions it is hard to link the source, and so the majority of your 
debug stepping is through a morass of unknown. This patch also removes one 
method call from that chain, which shrinks the height of the call tree 
significantly when they're added together.

But, as I say, I figured this little patch might split opinion so I only 
propose it for inclusion at the consensus of the community.

It;s worth noting that CASSANDRA-9975 also mitigates the problem, however it 
leaves a lot of these iterators in the call tree.

> 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)

Reply via email to