rukawakang created PHOENIX-4296:
-----------------------------------

             Summary: Dead loop in HBase reverse scan when amount of scan data 
is greater than SCAN_RESULT_CHUNK_SIZE
                 Key: PHOENIX-4296
                 URL: https://issues.apache.org/jira/browse/PHOENIX-4296
             Project: Phoenix
          Issue Type: Bug
    Affects Versions: 4.6.0
            Reporter: rukawakang


This problem seems to only occur with reverse scan not forward scan. When 
amount of scan data is greater than SCAN_RESULT_CHUNK_SIZE(default 2999), Class 
ChunkedResultIteratorFactory will multiple calls function getResultIterator. 
But in function getResultIterator it always readjusts startRow, in fact, if in 
reverse scan we should readjust stopRow. For example 
{code:java}
if (ScanUtil.isReversed(scan)) {
    scan.setStopRow(ByteUtil.copyKeyBytesIfNecessary(lastKey));
} else {
    scan.setStartRow(ByteUtil.copyKeyBytesIfNecessary(lastKey));
}
{code}




--
This message was sent by Atlassian JIRA
(v6.4.14#64029)

Reply via email to