cassandra-commits mailing list archives

[jira] [Commented] (CASSANDRA-5504) Eternal iteration when using newer hadoop version due to next() call and empty key value

Date

Mon, 22 Apr 2013 18:57:16 GMT

[ https://issues.apache.org/jira/browse/CASSANDRA-5504?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13638317#comment-13638317
]
Oleksandr Petrov commented on CASSANDRA-5504:
---------------------------------------------
However, unfortunately, when using it with Cascading, I still get eternal iterations :/ so
it'd still be good if someone could take a look at the patch :/
> Eternal iteration when using newer hadoop version due to next() call and empty key value
> ----------------------------------------------------------------------------------------
>
> Key: CASSANDRA-5504
> URL: https://issues.apache.org/jira/browse/CASSANDRA-5504
> Project: Cassandra
> Issue Type: Bug
> Components: Hadoop
> Affects Versions: 1.2.3
> Reporter: Oleksandr Petrov
> Priority: Critical
> Attachments: patch2.diff, patch.diff
>
>
> Currently, when using newer hadoop versions, due to the call to
> next(ByteBuffer key, SortedMap<ByteBuffer, IColumn> value)
> within ColumnFamilyRecordReader, because `key.clear();` is called, key is emptied. That
causes the StaticRowIterator and WideRowIterator to glitch, namely, when Iterables.getLast(rows).key
is called, key is already empty. This will cause Hadoop to request the same range again and
again all the time.
> Please see the attached patch/diff, it simply adds lastRowKey (ByteBuffer) and saves
it for the next iteration along with all the rows, this allows query for the next range to
be fully correct.
> This patch is branched from 1.2.3 version.
> Tested against Cassandra 1.2.3, with Hadoop 1.0.3, 1.0.4 and 0.20.2
--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira