hbase-issues mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Raymond Liu (JIRA)" <j...@apache.org>
Subject [jira] [Commented] (HBASE-8012) Reseek should position to the beginning of file for the first time it is invoked with a KV smaller than the first KV in file
Date Wed, 06 Mar 2013 06:42:15 GMT

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

Raymond Liu commented on HBASE-8012:
------------------------------------

[~lhofhansl]: I think it won't. a lazy seek could have the chance to skip the entire file.
If it already come down to reseek, the reseek result had to be sucessful and correct. This
could be achieved either by: reseek will be correct by itself, or like the original solution
it should be changed into a seek op instead of reseek, since reseek won't work correctly under
this condition. Otherwise, if it is called without position to the first kv, Yes, the file
will be skipped and scanner closed. But it is wrong behavior since the file actually not finished.
                
> Reseek should position to the beginning of file for the first time it is invoked with
a KV smaller than the first KV in file
> ----------------------------------------------------------------------------------------------------------------------------
>
>                 Key: HBASE-8012
>                 URL: https://issues.apache.org/jira/browse/HBASE-8012
>             Project: HBase
>          Issue Type: Bug
>          Components: regionserver
>    Affects Versions: 0.94.5
>            Reporter: Raymond Liu
>            Assignee: Raymond Liu
>            Priority: Minor
>             Fix For: 0.98.0
>
>         Attachments: HBASE-8012.patch
>
>
> The storeFileScanner's seekAtOrAfter method will position at the beginning of the file
when the passed KV is smaller than first KV in file. While for reseekAtOrAfter, I think it
should also do the same thing when it is the first time it been seeked. originally, this is
workaround by adding a isReseekable property in StoreFileScanner, and is checked upon each
enforceSeek(), if it is not seeked before, it will go with seek approaching instead of reseek
approaching. While why not make reseekAtOrAfter working correctly for the first time it been
reseek (also never been seek before), since the file is never seeked before, so position it
at the beginning of the file don't break the idea of "reseek", say never rewind.
> It will save the effort for HBASE-8001, with this fixed, it won't need to check isReseekable
any more.

--
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

Mime
View raw message