[
https://issues.apache.org/jira/browse/HBASE-15325?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15166818#comment-15166818
]
Anoop Sam John commented on HBASE-15325:
----------------------------------------
I see this in code but it do not consider the partial Results the user already
pulled out of the cache
{code}
} catch (DoNotRetryIOException e) {
// An exception was thrown which makes any partial results that we were
collecting
// invalid. The scanner will need to be reset to the beginning of a row.
clearPartialResults();
{code}
So said that, we will get again the same cells which would have already
fetched. Ya this is more work for server but seems a simple solution
To say to the server to start scan not at begin of a row looks to be more
complex change.
> ResultScanner allowing partial result will reset to the start of the row if
> the region is moved between two rpc requests
> ------------------------------------------------------------------------------------------------------------------------
>
> Key: HBASE-15325
> URL: https://issues.apache.org/jira/browse/HBASE-15325
> Project: HBase
> Issue Type: Bug
> Affects Versions: 1.1.3
> Reporter: Phil Yang
> Assignee: Phil Yang
> Priority: Critical
> Attachments: 15325-test.txt
>
>
> HBASE-11544 allow scan rpc return partial of a row to reduce memory usage for
> one rpc request. And client can setAllowPartial or setBatch to get several
> cells in a row instead of the whole row.
> However, the status of the scanner is saved on server and we need this to get
> the next part if there is a partial result before. If we move the region to
> another RS, client will get a NotServingRegionException and open a new
> scanner to the new RS which will be regarded as a new scan from the start of
> this row. So we will see the cells which have been seen before.
--
This message was sent by Atlassian JIRA
(v6.3.4#6332)