hbase-issues mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Stephen Yuan Jiang (JIRA)" <j...@apache.org>
Subject [jira] [Commented] (HBASE-16103) Procedure v2 - TestCloneSnaphotProcedure relies on execution order
Date Fri, 24 Jun 2016 14:17:16 GMT

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

Stephen Yuan Jiang commented on HBASE-16103:


> Procedure v2 - TestCloneSnaphotProcedure relies on execution order
> ------------------------------------------------------------------
>                 Key: HBASE-16103
>                 URL: https://issues.apache.org/jira/browse/HBASE-16103
>             Project: HBase
>          Issue Type: Bug
>          Components: proc-v2, test
>    Affects Versions: 2.0.0
>            Reporter: Matteo Bertozzi
>            Assignee: Matteo Bertozzi
>            Priority: Minor
>             Fix For: 2.0.0
>         Attachments: HBASE-16103-v0.patch
> https://builds.apache.org/view/All/job/HBase-Trunk_matrix/jdk=latest1.8,label=yahoo-not-h2/1100/

> the TestCloneSnapshotProcedure is written in a way that relies on the execution order
and does not tolerate failure of a previous test.
> getSnapshot() has a cached snapshot. if we haven't created yet we will create it.
> (from how the code is written is a bit unclear that where we are taking the snapshot,
so in the patch I moved out the call to make it more readable)
> In this case we started with testCloneSnapshotToSameTable and it failed because the table
was waiting for flushes and compaction and it took a long time.
> {noformat}
> org.apache.hadoop.hbase.snapshot.SnapshotTestingUtils.waitForTableToBeOnline(SnapshotTestingUtils.java:737)
>   at org.apache.hadoop.hbase.snapshot.SnapshotTestingUtils.loadData(SnapshotTestingUtils.java:799)
>   at org.apache.hadoop.hbase.snapshot.SnapshotTestingUtils.loadData(SnapshotTestingUtils.java:770)
>   at org.apache.hadoop.hbase.master.procedure.TestCloneSnapshotProcedure.getSnapshot(TestCloneSnapshotProcedure.java:114)
>   at org.apache.hadoop.hbase.master.procedure.TestCloneSnapshotProcedure.testCloneSnapshotToSameTable(TestCloneSnapshotProcedure.java:176)
> {noformat}
> when we got to testRollbackAndDoubleExecution which stop and start the executor to simulate
crashes the snapshot. we ask the executor to stop and then we asked to take a snapshot, but
of course the executor is not running so we are stuck there. 
> Similarly if we run TestCloneSnapshotProcedure#testRollbackAndDoubleExecution alone,
this will always fail because of the above. the snapshot cannot be taken because we stopped
the executor. the test here was written relying on the execution order. easy fix is to take
the snapshot before stopping the executor for the clone failure simulation as it is supposed
to be.

This message was sent by Atlassian JIRA

View raw message