You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@hbase.apache.org by "Andrew Purtell (JIRA)" <ji...@apache.org> on 2014/11/10 21:40:33 UTC
[jira] [Commented] (HBASE-12454) Setting didPerformCompaction early
in HRegion#compact
[ https://issues.apache.org/jira/browse/HBASE-12454?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=14205296#comment-14205296 ]
Andrew Purtell commented on HBASE-12454:
----------------------------------------
Is this right or am I missing something?
> Setting didPerformCompaction early in HRegion#compact
> -----------------------------------------------------
>
> Key: HBASE-12454
> URL: https://issues.apache.org/jira/browse/HBASE-12454
> Project: HBase
> Issue Type: Bug
> Affects Versions: 0.98.8
> Reporter: Andrew Purtell
>
> It appears we are setting 'didPerformCompaction' to "true" before attempting the compaction in HRegion#compact. If Store#compact throws an exception or is interrupted, we won't call Store#cancelRequestedCompaction in the last finally block of the method as it looks like we should.
> {code}
> --- a/hbase-server/src/main/java/org/apache/hadoop/hbase/regionserver/HRegion.java
> +++ b/hbase-server/src/main/java/org/apache/hadoop/hbase/regionserver/HRegion.java
> @@ -1565,8 +1565,8 @@ public class HRegion implements HeapSize, PropagatingConfigurationObserver { //
> doRegionCompactionPrep();
> try {
> status.setStatus("Compacting store " + store);
> - didPerformCompaction = true;
> store.compact(compaction);
> + didPerformCompaction = true;
> } catch (InterruptedIOException iioe) {
> String msg = "compaction interrupted";
> LOG.info(msg, iioe);
> {code}
--
This message was sent by Atlassian JIRA
(v6.3.4#6332)