[
https://issues.apache.org/jira/browse/HBASE-14895?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15052489#comment-15052489
]
ramkrishna.s.vasudevan commented on HBASE-14895:
------------------------------------------------
Without maintaining two sepreate lists it would not be possible to reset
theheap with a StorefileScanner that just got removed from the heap and that is
the 'current' scanner and then when a reset happens we cannot add it back to
the heap since it is already removed from the current heap so iterating that
would not give you the 'current' scanner.
So maintaining two DS will help to avoid this problem and hence went with 2 DS.
{code}
public void close() {
cur = null;
this.hfs.close();
if (this.reader != null) {
this.reader.decrementRefCount();
}
}
{code}
This problem of close() can happen in cases when the same completed scanner is
doing a close() once again. I can update the patch with that change. Good point
and nice catch.
> Seek only to the newly flushed file on scanner reset on flush
> -------------------------------------------------------------
>
> Key: HBASE-14895
> URL: https://issues.apache.org/jira/browse/HBASE-14895
> Project: HBase
> Issue Type: Sub-task
> Reporter: ramkrishna.s.vasudevan
> Assignee: ramkrishna.s.vasudevan
> Fix For: 2.0.0
>
> Attachments: HBASE-14895.patch, HBASE-14895_1.patch,
> HBASE-14895_1.patch, HBASE-14895_2.patch
>
>
--
This message was sent by Atlassian JIRA
(v6.3.4#6332)