HBASE-19658 make the test testFlatteningToJumboCellChunkMap() stable, by eliminating the possibility of third cell to be added while in-memory-flush is still in progress
This commit is contained in:
parent
14420e1b41
commit
170ffbba68
|
@ -807,12 +807,17 @@ public class TestCompactingToCellFlatMapMemStore extends TestCompactingMemStore
|
||||||
|
|
||||||
memstore.clearSnapshot(snapshot.getId());
|
memstore.clearSnapshot(snapshot.getId());
|
||||||
|
|
||||||
String[] keys2 = { "C", "D", "E"};
|
// Allocating two big cells (too big for being copied into a regular chunk).
|
||||||
|
String[] keys2 = {"C", "D"};
|
||||||
addRowsByKeys(memstore, keys2, val);
|
addRowsByKeys(memstore, keys2, val);
|
||||||
while (((CompactingMemStore) memstore).isMemStoreFlushingInMemory()) {
|
while (((CompactingMemStore) memstore).isMemStoreFlushingInMemory()) {
|
||||||
Threads.sleep(10);
|
Threads.sleep(10);
|
||||||
}
|
}
|
||||||
totalHeapSize = 1 * oneCellOnCSLMHeapSize + MutableSegment.DEEP_OVERHEAD
|
|
||||||
|
// The in-memory flush size is bigger than the size of a single cell,
|
||||||
|
// but smaller than the size of two cells.
|
||||||
|
// Therefore, the two created cells are flattened together.
|
||||||
|
totalHeapSize = MutableSegment.DEEP_OVERHEAD
|
||||||
+ CellChunkImmutableSegment.DEEP_OVERHEAD_CCM
|
+ CellChunkImmutableSegment.DEEP_OVERHEAD_CCM
|
||||||
+ 2 * oneCellOnCCMHeapSize;
|
+ 2 * oneCellOnCCMHeapSize;
|
||||||
assertEquals(totalHeapSize, ((CompactingMemStore) memstore).heapSize());
|
assertEquals(totalHeapSize, ((CompactingMemStore) memstore).heapSize());
|
||||||
|
|
Loading…
Reference in New Issue