Description
In my performance cluster(0.90.3), The Hmaster memory from 100 M up to 4G when one region server crashed.
I added some print in function doneWriting and found the values of totalBuffered is negative.
10:29:52,119 WARN org.apache.hadoop.hbase.regionserver.wal.HLogSplitter: gjc:release Used -565832
hbase-root-master-157-5-111-21.log:2011-06-24 10:29:52,119 WARN org.apache.hadoop.hbase.regionserver.wal.HLogSplitter: gjc:release Used -565832release size25168
void doneWriting(RegionEntryBuffer buffer) {
synchronized (this)
long size = buffer.heapSize();
synchronized (dataAvailable)
{ totalBuffered -= size; LOG.warn("gjc:release Used " + totalBuffered ); // We may unblock writers dataAvailable.notifyAll(); } LOG.warn("gjc:release Used " + totalBuffered + "release size"+ size);
}