hbase-issues mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Hudson (JIRA)" <j...@apache.org>
Subject [jira] [Commented] (HBASE-15433) SnapshotManager#restoreSnapshot not update table and region count quota correctly when encountering exception
Date Mon, 21 Mar 2016 16:40:25 GMT

    [ https://issues.apache.org/jira/browse/HBASE-15433?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15204561#comment-15204561
] 

Hudson commented on HBASE-15433:
--------------------------------

SUCCESS: Integrated in HBase-1.1-JDK7 #1686 (See [https://builds.apache.org/job/HBase-1.1-JDK7/1686/])
HBASE-15433 SnapshotManager#restoreSnapshot not update table and region (tedyu: rev 40e19e80b2363c899f9b8cba98f3c2326d6329d1)
* hbase-server/src/main/java/org/apache/hadoop/hbase/master/snapshot/SnapshotManager.java
* hbase-server/src/main/java/org/apache/hadoop/hbase/namespace/NamespaceAuditor.java
* hbase-server/src/main/java/org/apache/hadoop/hbase/quotas/MasterQuotaManager.java
* hbase-server/src/main/java/org/apache/hadoop/hbase/namespace/NamespaceStateManager.java
* hbase-server/src/test/java/org/apache/hadoop/hbase/namespace/TestNamespaceAuditor.java


> SnapshotManager#restoreSnapshot not update table and region count quota correctly when
encountering exception
> -------------------------------------------------------------------------------------------------------------
>
>                 Key: HBASE-15433
>                 URL: https://issues.apache.org/jira/browse/HBASE-15433
>             Project: HBase
>          Issue Type: Bug
>          Components: snapshots
>    Affects Versions: 2.0.0
>            Reporter: Jianwei Cui
>            Assignee: Jianwei Cui
>             Fix For: 2.0.0, 1.3.0, 1.4.0, 1.1.5, 1.2.2
>
>         Attachments: HBASE-15433-branch-1-v1.patch, HBASE-15433-trunk-v1.patch, HBASE-15433-trunk-v2.patch,
HBASE-15433-trunk.patch, HBASE-15433-v3.patch, HBASE-15433-v4.patch
>
>
> In SnapshotManager#restoreSnapshot, the table and region quota will be checked and updated
as:
> {code}
>       try {
>         // Table already exist. Check and update the region quota for this table namespace
>         checkAndUpdateNamespaceRegionQuota(manifest, tableName);
>         restoreSnapshot(snapshot, snapshotTableDesc);
>       } catch (IOException e) {
>         this.master.getMasterQuotaManager().removeTableFromNamespaceQuota(tableName);
>         LOG.error("Exception occurred while restoring the snapshot " + snapshot.getName()
>             + " as table " + tableName.getNameAsString(), e);
>         throw e;
>       }
> {code}
> The 'checkAndUpdateNamespaceRegionQuota' will fail if regions in the snapshot make the
region count quota exceeded, then, the table will be removed in the 'catch' block. This will
make the current table count and region count decrease, following table creation or region
split will succeed even if the actual quota is exceeded.



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)

Mime
View raw message