Feng Honghua created HBASE-10539: ------------------------------------ Summary: HRegion.addAndGetGlobalMemstoreSize() is expected to return the new memstore size after added, but actually the previous size before added is returned instead Key: HBASE-10539 URL: https://issues.apache.org/jira/browse/HBASE-10539 Project: HBase Issue Type: Bug Components: regionserver Reporter: Feng Honghua Assignee: Feng Honghua
HRegion.addAndGetGlobalMemstoreSize(addedSize) is called once some write succeeds and 'addedSize' is the size of the edits newly put to the memstore, the returned value of HRegion.addAndGetGlobalMemstoreSize(addedSize) is then checked against the flush threshold to determine if a flush for the region should be triggered. By design the returned value should be the updated memstore size after adding 'addedSize', but current implementation uses this.memstoreSize.getAndAdd which returns the previous size before adding, actually 'addAndGet' rather than 'getAndAdd' should be used here. -- This message was sent by Atlassian JIRA (v6.1.5#6160)