HBASE-19732 Replica regions does not return back the MSLAB chunks to pool
(Ram)
This commit is contained in:
parent
3a66f15557
commit
d155a4e33d
|
@ -2283,6 +2283,7 @@ public class HStore implements Store, HeapSize, StoreConfigInformation, Propagat
|
|||
long snapshotId = -1; // -1 means do not drop
|
||||
if (dropMemstoreSnapshot && snapshot != null) {
|
||||
snapshotId = snapshot.getId();
|
||||
snapshot.close();
|
||||
}
|
||||
HStore.this.updateStorefiles(storeFiles, snapshotId);
|
||||
}
|
||||
|
|
|
@ -19,6 +19,7 @@ package org.apache.hadoop.hbase.regionserver;
|
|||
|
||||
import org.apache.yetus.audience.InterfaceAudience;
|
||||
|
||||
import java.io.Closeable;
|
||||
import java.util.List;
|
||||
/**
|
||||
* Holds details of the snapshot taken on a MemStore. Details include the snapshot's identifier,
|
||||
|
@ -26,7 +27,7 @@ import java.util.List;
|
|||
* all the cells and a scanner to read all cells in it.
|
||||
*/
|
||||
@InterfaceAudience.Private
|
||||
public class MemStoreSnapshot {
|
||||
public class MemStoreSnapshot implements Closeable {
|
||||
private final long id;
|
||||
private final int cellsCount;
|
||||
private final long dataSize;
|
||||
|
@ -90,4 +91,13 @@ public class MemStoreSnapshot {
|
|||
public boolean isTagsPresent() {
|
||||
return this.tagsPresent;
|
||||
}
|
||||
|
||||
@Override
|
||||
public void close() {
|
||||
if (this.scanners != null) {
|
||||
for (KeyValueScanner scanner : scanners) {
|
||||
scanner.close();
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
Loading…
Reference in New Issue