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

Anastasia Braginsky commented on HBASE-18010:
---------------------------------------------

May be the previous scenario was not detailed enough, here is the more detailed 
one:

1. Chunk C was allocated and got ID 5
1.1 After a while, C and all its cells are not in any use any longer
2. C was reclaimed and removed from mapping, but was returned to pool and is 
still holding ID 5
3. C was reused from pool and returned to the user once again
3.1 Cell A was allocated on C (new cell)
4. Cell residing on C is asked what is its chunk id and 5 is the answer
5. ChunkCreator is asked to translate chunk ID 5, but returns null, because C's 
mapping was removed at Step 2

bq. when the cell is in use for any reason then we should not be returning that 
back to pool right?
In time when chunk was reclaimed all its cells were not in use. Chunk was 
returned to ChunkCreator legitimately. The problem is that chunk was reused and 
its mapping was deleted.

> Connect CellChunkMap to be used for flattening in CompactingMemStore
> --------------------------------------------------------------------
>
>                 Key: HBASE-18010
>                 URL: https://issues.apache.org/jira/browse/HBASE-18010
>             Project: HBase
>          Issue Type: Sub-task
>            Reporter: Anastasia Braginsky
>
> The CellChunkMap helps to create a new type of ImmutableSegment, where the 
> index (CellSet's delegatee) is going to be CellChunkMap. No big cells or 
> upserted cells are going to be supported here.



--
This message was sent by Atlassian JIRA
(v6.3.15#6346)

Reply via email to