busbey commented on a change in pull request #623: HBASE-22749: Distributed MOB
compactions
URL: https://github.com/apache/hbase/pull/623#discussion_r325858410
##########
File path:
hbase-server/src/main/java/org/apache/hadoop/hbase/mob/DefaultMobStoreCompactor.java
##########
@@ -58,16 +74,33 @@
@InterfaceAudience.Private
public class DefaultMobStoreCompactor extends DefaultCompactor {
- private static final Logger LOG =
LoggerFactory.getLogger(DefaultMobStoreCompactor.class);
- private long mobSizeThreshold;
- private HMobStore mobStore;
+ protected static final Logger LOG =
LoggerFactory.getLogger(DefaultMobStoreCompactor.class);
+ protected long mobSizeThreshold;
+ protected HMobStore mobStore;
+
+ // MOB file reference set
+ static ThreadLocal<Set<String>> mobRefSet = new ThreadLocal<Set<String>>() {
Review comment:
The use of `ThreadLocal`s here to bridge across the version of `compact`
that we don't override from our parent class down into the `performCompaction`
method that we do over write looks like a maintenance problem. I don't have a
better solution in mind yet, but at the very least we need a comment explaining
that that's what's going on here.
----------------------------------------------------------------
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
For queries about this service, please contact Infrastructure at:
[email protected]
With regards,
Apache Git Services