hbase-issues mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Anoop Sam John (JIRA)" <j...@apache.org>
Subject [jira] [Commented] (HBASE-14921) Memory optimizations
Date Fri, 01 Apr 2016 10:05:25 GMT

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

Anoop Sam John commented on HBASE-14921:
----------------------------------------

On CellBlock we have
CellBlock createCellBlocks(Comparator<? super Cell> comparator, int min,
	      int max, boolean descending);
This is for making a sub set of original block.  Can we have a better name pls?

getCellFromIndex(int i) -> getCell (int index) Is this enough?

getValidIndex -> Name looks diff to understand what it does.  Pls add some comments.. Other
places wherever necessary

HeapMemStoreLAB memStoreLAB -> WHy need the impl type here?  We have MSLAB interface now.

HeapMemStoreLAB.Chunk[] chunks  -> Do we need to keep Chunk refs?  byte[] refs is enough?
Or is this for return back to MSLAB pool after the DISK flush?

{code}
if(chunkPool != null) {
199	        c = chunkPool.getChunk();
200	      } else {
201	        c = new Chunk(chunkSize, 5);
202	        c.init();
203	      }
{code}
Why this move of init to here immediately after the new Chunk is made? When multiple threads
are at this point, there is a chance that more than one will do this init call make make byte[].
If it is after compareAndSet, it is sure abt the concurrency solution.

{code}
Chunk translateIdToChunk(int id) {
225	    return chunkPool.translateIdToChunk(id);
226	  }
{code}
What if chunk pool is null?

allocateChunk - Why is it needed when we have getOrMakeChunk? Who will guarantee thread safety
here?

//org.junit.Assert.assertTrue("\n\n inside chunk initialization 3", false);
pls remove commented code.. Some other cases also.

-reclaimedChunks.add(chunk);	
I can not see where we will be adding it as per the patch?  The initial created chunks were
added here.  


> Memory optimizations
> --------------------
>
>                 Key: HBASE-14921
>                 URL: https://issues.apache.org/jira/browse/HBASE-14921
>             Project: HBase
>          Issue Type: Sub-task
>    Affects Versions: 2.0.0
>            Reporter: Eshcar Hillel
>            Assignee: Anastasia Braginsky
>         Attachments: CellBlocksSegmentInMemStore.pdf, CellBlocksSegmentinthecontextofMemStore(1).pdf,
HBASE-14921-V01.patch, HBASE-14921-V02.patch
>
>
> Memory optimizations including compressed format representation and offheap allocations



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)

Mime
View raw message