[
https://issues.apache.org/jira/browse/HBASE-18375?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16119625#comment-16119625
]
Anastasia Braginsky commented on HBASE-18375:
---------------------------------------------
[~ram_krish], when I wrote about ByteBuffers being freed we had slightly
different scenario, with more bugs (the one with version in pipeline not
increased upon in-memory flush), there everything was released including
ByteBuffers. After this was fixed, I continued to see the problem of chunks
being released unexpectedly. And now I see that the chunks are released, while
the ButeBuffers are not released.
My plan is as following:
1. To have *only* StrongMap in ChunkCreator
2. If CellChunkMap is requested in hbase-site.xml
("hbase.hregion.compacting.memstore.index"), then StrongMap is going to cover
every chunk.
Otherwise, StrongMap is going to cover only chunks in pool.
3. No change in MSLAB (chunkID list remains there).
I believe this change is applicable also to Release 2.0, just let me know what
branch to update. So I do not plan to do 2 JIRAs.
> The pool chunks from ChunkCreator are deallocated while in pool because there
> is no reference to them
> -----------------------------------------------------------------------------------------------------
>
> Key: HBASE-18375
> URL: https://issues.apache.org/jira/browse/HBASE-18375
> Project: HBase
> Issue Type: Sub-task
> Affects Versions: 2.0.0-alpha-1
> Reporter: Anastasia Braginsky
> Assignee: Anastasia Braginsky
> Priority: Critical
> Fix For: 2.0.0, 3.0.0, 2.0.0-alpha-2
>
> Attachments: HBASE-18375-V01.patch, HBASE-18375-V02.patch,
> HBASE-18375-V03.patch, HBASE-18375-V04.patch
>
>
> Because MSLAB list of chunks was changed to list of chunk IDs, the chunks
> returned back to pool can be deallocated by JVM because there is no reference
> to them. The solution is to protect pool chunks from GC by the strong map of
> ChunkCreator introduced by HBASE-18010. Will prepare the patch today.
--
This message was sent by Atlassian JIRA
(v6.4.14#64029)