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)