Xiaolin Ha created HBASE-27152:
----------------------------------
Summary: Under compaction mark may leak
Key: HBASE-27152
URL: https://issues.apache.org/jira/browse/HBASE-27152
Project: HBase
Issue Type: Bug
Components: Compaction
Affects Versions: 2.4.12, 3.0.0-alpha-2
Reporter: Xiaolin Ha
Assignee: Xiaolin Ha
Fix For: 2.6.0, 3.0.0-alpha-4, 2.4.14
HBASE-26249 introduced an under compaction mark to reduce repeatedly
compactions for the same stores for a short period of time after bulk loading
files.
Since the mark adding and removing are in difference threads,
{code:java}
pool.execute(
new CompactionRunner(store, region, compaction, tracker, completeTracker,
pool, user));
if (LOG.isDebugEnabled()) {
LOG.debug(
"Add compact mark for store {}, priority={}, current under compaction "
+ "store size is {}",
getStoreNameForUnderCompaction(store), priority,
underCompactionStores.size());
}
underCompactionStores.add(getStoreNameForUnderCompaction(store)); {code}
it happens that the concurrently of thread-1 using underCompactionStores.add()
and thread-2 which running a CompactionRunner that using
underCompactionStores.remove(). If the removing happens before adding, the mark
will leak.
--
This message was sent by Atlassian Jira
(v8.20.7#820007)