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

Ben Holloway commented on CASSANDRA-5504:
-----------------------------------------

actually the diff between 1.1.11 and 1.1.9 is very simple 

bq. git diff cassandra-1.1.9 cassandra-1.1.11 -- 
src/java/org/apache/cassandra/hadoop/ColumnFamilyRecordReader.java

{quote}
-            TTransport transport = 
ConfigHelper.getInputTransportFactory(conf).openTransport(socket);
-            TBinaryProtocol binaryProtocol = new TBinaryProtocol(transport);
+            TTransport transport = 
ConfigHelper.getInputTransportFactory(conf).openTransport(socket, conf);
+            TBinaryProtocol binaryProtocol = new TBinaryProtocol(transport, 
ConfigHelper.getThriftMaxMessageLength(conf));
{quote}

that might be the difference
                
> 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

Reply via email to