You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@hbase.apache.org by "Matteo Bertozzi (JIRA)" <ji...@apache.org> on 2016/10/20 17:32:58 UTC

[jira] [Commented] (HBASE-16889) Proc-V2: verifyTables in the IntegrationTestDDLMasterFailover test after each table DDL is incorrect

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

Matteo Bertozzi commented on HBASE-16889:
-----------------------------------------

maybe the idea was to verify the state after each operation. but the current way does not really work for the reason you described. We can follow the approach you proposed and verify the operations only once everything is complete. or maybe we can add extra logic to block temporarily operations to be executed while we are doing some verification. something like a periodic verification. but that will be extra logic, so +1 to get in this fix and in another jira we may improve and add extra checks

> Proc-V2: verifyTables in the IntegrationTestDDLMasterFailover test after each table DDL is incorrect 
> -----------------------------------------------------------------------------------------------------
>
>                 Key: HBASE-16889
>                 URL: https://issues.apache.org/jira/browse/HBASE-16889
>             Project: HBase
>          Issue Type: Bug
>          Components: proc-v2
>    Affects Versions: 2.0.0, 1.1.7
>            Reporter: Stephen Yuan Jiang
>            Assignee: Stephen Yuan Jiang
>         Attachments: HBASE-16889.v1-master.patch
>
>
> In the IntegrationTestDDLMasterFailover test, verifyTables is called after each table DDL.  It iterates 3 lists of tables in ConcurrentHashMap (enabledTables, disabledTables, deletedTables) and tries to do some verification.  This is incorrect, eg. a table in enabledTables map could be picked up by DeleteTableAction and is disabled, while the verification tries to check whether table is enabled.  This leads to false assertion.  
> The same for verifyNamespaces().  
> The proposed fix is to verify maps only at the end of tests (while no active DDL operation is going on).  During test run, we only verify the target table before putting into map.



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