Details

Description

I got this while testing 0.98RC. But am not sure if it is specific to this version. Doesn't seem so to me.
Also it is something similar to HBASE-5312 and HBASE-5568.

Using 10 threads i do writes to 4 RS using YCSB. The table created has 200 regions. In one of the run with 0.98 server and 0.98 client I faced this problem like the hlogs became more and the system requested flushes for those many regions.
One by one everything was flushed except one and that one thing remained unflushed. The ripple effect of this on the client side

I restarted another RS and there were region movements with other regions but this region stays with the RS that has this issue. One important observation is that in HRegion.internalflushCache() we need to add a debug log here

Because we can see that the region is requsted for a flush but it does not happen and no logs related to flush are printed in the logs. so due to some reason this memstore.size() has become 0( I assume this). The earlier bugs were also due to similar reason.