You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@accumulo.apache.org by "Billie Rinaldi (Resolved) (JIRA)" <ji...@apache.org> on 2012/01/04 15:00:41 UTC
[jira] [Resolved] (ACCUMULO-226) BatchScanner iterator
implementation erroneously returns true for hasNext upon subsequent hasNext
calls
[ https://issues.apache.org/jira/browse/ACCUMULO-226?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Billie Rinaldi resolved ACCUMULO-226.
-------------------------------------
Resolution: Fixed
> BatchScanner iterator implementation erroneously returns true for hasNext upon subsequent hasNext calls
> -------------------------------------------------------------------------------------------------------
>
> Key: ACCUMULO-226
> URL: https://issues.apache.org/jira/browse/ACCUMULO-226
> Project: Accumulo
> Issue Type: Bug
> Components: client
> Affects Versions: 1.3.5
> Environment: Platform independent
> Reporter: Matthew Kirkley
> Assignee: Keith Turner
> Labels: accumulo, batchscanner
> Fix For: 1.4.0, 1.5.0
>
> Attachments: accumulo_TabletServerBatchReaderIterator.patch
>
>
> If you open a batch scanner and iterate through its contents, after hasNext has returned false, subsequent calls to hasNext will return true. Below is a testcase which shows the issue.
> Connector conn = new Connector(new ZooKeeperInstance("accumulo","localhost"),"root","password".getBytes());
> BatchScanner scanner = conn.createBatchScanner("test", Constants.NO_AUTHS, 1);
> scanner.setRanges(Collections.singletonList(new Range()));
>
> //exhaust the iterator
> Iterator it = scanner.iterator();
> while (it.hasNext()){
> it.next();
> }
> assertFalse("hasNext should be false", it.hasNext());
> I found this issue when wrapping a BatchScanner in a IteratorChain which subsequently seems to call hasNext twice in it's hasNext method. I will attach a patch which resolves the issue.
--
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