[
https://issues.apache.org/jira/browse/HBASE-14919?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15074978#comment-15074978
]
Eshcar Hillel commented on HBASE-14919:
---------------------------------------
Went over your comments:
1. volatile - I see what you mean, but since not all the effects of volatile
are clear (e.g., it is not cached) I prefered to keep the same behaviour as in
master where cellset and snapshot are volatile in DefaultMemStore.
2. snapshotId - this is how snapshotId is used, the pattern is the same before
and after the patch:
{code}
public void clearSnapshot(long id) throws UnexpectedStateException {
...
if (this.snapshotId != id) {
throw new UnexpectedStateException("Current snapshot id is " +
this.snapshotId + ",passed " + id);
}
// OK. Passed in snapshot is same as current snapshot. If not-empty,
// create a new snapshot and let the old one go.
...
if (!this.snapshot.isEmpty()) {
...
}
...
this.snapshotId = -1;
...
}
{code}
seems nothing else to be done.
Are we good to commit?
> Infrastructure refactoring
> --------------------------
>
> Key: HBASE-14919
> URL: https://issues.apache.org/jira/browse/HBASE-14919
> Project: HBase
> Issue Type: Sub-task
> Affects Versions: 2.0.0
> Reporter: Eshcar Hillel
> Assignee: Eshcar Hillel
> Attachments: HBASE-14919-V01.patch, HBASE-14919-V01.patch,
> HBASE-14919-V02.patch, HBASE-14919-V03.patch, HBASE-14919-V04.patch,
> HBASE-14919-V04.patch
>
>
> Refactoring the MemStore hierarchy, introducing segment (StoreSegment) as
> first-class citizen and decoupling memstore scanner from the memstore
> implementation.
--
This message was sent by Atlassian JIRA
(v6.3.4#6332)