[ https://issues.apache.org/jira/browse/HBASE-20566?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16473413#comment-16473413 ]
Nihal Jain commented on HBASE-20566: ------------------------------------ {quote}I think the enabling of quota can be done in setUp() method so that we don't need to restart the cluster twice. {quote} I had written the test case in a way that it does not hinder the result of any other test cases in the given class. Enabling quota in the set up can be done, but say we run the test class without the fix (i.e. if quota table creation gets stuck), then none of the test cases would pass as the bug for some reasons fails dropping of tables and rolls back. Hence will cause all test cases to fail. {code:java} 2018-05-13 14:16:02,171 INFO [RpcServer.default.FPBQ.Fifo.handler=29,queue=2,port=16000] master.HMaster: Client=root1//127.0.0.1 delete test 2018-05-13 14:16:02,287 INFO [RpcServer.default.FPBQ.Fifo.handler=29,queue=2,port=16000] rsgroup.RSGroupAdminServer: Moving table test to RSGroup null 2018-05-13 14:16:02,292 INFO [PEWorker-16] hbase.MetaTableAccessor: Deleted 1 regions from META 2018-05-13 14:16:02,307 INFO [PEWorker-16] hbase.MetaTableAccessor: Deleted 1 regions from META 2018-05-13 14:16:02,309 INFO [PEWorker-16] hbase.MetaTableAccessor: Deleted table test state from META 2018-05-13 14:16:02,313 INFO [PEWorker-16] procedure2.ProcedureExecutor: Finished pid=20, state=SUCCESS; DeleteTableProcedure table=test in 140msec 2018-05-13 14:16:07,045 WARN [ProcExecTimeout] assignment.AssignmentManager: STUCK Region-In-Transition rit=OFFLINE, location=localhost,1,1, table=hbase:quota, region=2b9f9ceca3cb8a77ae2220b053c1c4e7 2018-05-13 14:16:12,045 WARN [ProcExecTimeout] assignment.AssignmentManager: STUCK Region-In-Transition rit=OFFLINE, location=localhost,1,1, table=hbase:quota, region=2b9f9ceca3cb8a77ae2220b053c1c4e7 2018-05-13 14:16:17,046 WARN [ProcExecTimeout] assignment.AssignmentManager: STUCK Region-In-Transition rit=OFFLINE, location=localhost,1,1, table=hbase:quota, region=2b9f9ceca3cb8a77ae2220b053c1c4e7 2018-05-13 14:16:22,046 WARN [ProcExecTimeout] assignment.AssignmentManager: STUCK Region-In-Transition rit=OFFLINE, location=localhost,1,1, table=hbase:quota, region=2b9f9ceca3cb8a77ae2220b053c1c4e7 2018-05-13 14:16:27,046 WARN [ProcExecTimeout] assignment.AssignmentManager: STUCK Region-In-Transition rit=OFFLINE, location=localhost,1,1, table=hbase:quota, region=2b9f9ceca3cb8a77ae2220b053c1c4e7 2018-05-13 14:16:32,046 WARN [ProcExecTimeout] assignment.AssignmentManager: STUCK Region-In-Transition rit=OFFLINE, location=localhost,1,1, table=hbase:quota, region=2b9f9ceca3cb8a77ae2220b053c1c4e7 2018-05-13 14:16:37,047 WARN [ProcExecTimeout] assignment.AssignmentManager: STUCK Region-In-Transition rit=OFFLINE, location=localhost,1,1, table=hbase:quota, region=2b9f9ceca3cb8a77ae2220b053c1c4e7 2018-05-13 14:16:42,047 WARN [ProcExecTimeout] assignment.AssignmentManager: STUCK Region-In-Transition rit=OFFLINE, location=localhost,1,1, table=hbase:quota, region=2b9f9ceca3cb8a77ae2220b053c1c4e7 2018-05-13 14:16:47,048 WARN [ProcExecTimeout] assignment.AssignmentManager: STUCK Region-In-Transition rit=OFFLINE, location=localhost,1,1, table=hbase:quota, region=2b9f9ceca3cb8a77ae2220b053c1c4e7 2018-05-13 14:16:52,049 WARN [ProcExecTimeout] assignment.AssignmentManager: STUCK Region-In-Transition rit=OFFLINE, location=localhost,1,1, table=hbase:quota, region=2b9f9ceca3cb8a77ae2220b053c1c4e7 2018-05-13 14:16:57,049 WARN [ProcExecTimeout] assignment.AssignmentManager: STUCK Region-In-Transition rit=OFFLINE, location=localhost,1,1, table=hbase:quota, region=2b9f9ceca3cb8a77ae2220b053c1c4e7 2018-05-13 14:17:02,050 WARN [ProcExecTimeout] assignment.AssignmentManager: STUCK Region-In-Transition rit=OFFLINE, location=localhost,1,1, table=hbase:quota, region=2b9f9ceca3cb8a77ae2220b053c1c4e7 2018-05-13 14:17:02,282 INFO [RpcServer.default.FPBQ.Fifo.handler=28,queue=1,port=16000] master.HMaster: Client=root1//127.0.0.1 delete test 2018-05-13 14:17:02,411 INFO [PEWorker-3] procedure2.ProcedureExecutor: Rolled back pid=21, state=ROLLEDBACK, exception=org.apache.hadoop.hbase.TableNotFoundException via master-delete-table:org.apache.hadoop.hbase.TableNotFoundException: test; DeleteTableProcedure table=test exec-time=128msec {code} Since with the fix the test case will pass, we can surely move enabling of quota to setUp(), but am not sure about negative scenarios. What do you suggest? > Creating a system table after enabling rsgroup feature puts in region into RIT > ------------------------------------------------------------------------------ > > Key: HBASE-20566 > URL: https://issues.apache.org/jira/browse/HBASE-20566 > Project: HBase > Issue Type: Bug > Components: master > Reporter: Biju Nair > Assignee: Nihal Jain > Priority: Major > Fix For: 3.0.0 > > Attachments: HBASE-20566.master.001.patch > > > *Steps to reproduce* > - Enable {{rsgroup}} feature > - Enable {{quota}} feature which created {{hbase::quota}} table > - quota table region will be marked as RIT since the {{rsgroup}} for the > table is not known > {noformat} > 2018-05-10 14:33:32,392 INFO [ProcedureExecutorThread-0] > zookeeper.ZKTableStateManager: Moving table hbase:quota state from null to > ENABLING > 2018-05-10 14:33:32,397 WARN [ProcedureExecutorThread-0] > rsgroup.RSGroupBasedLoadBalancer: Group for table hbase:quota is null > 2018-05-10 14:33:32,398 WARN [ProcedureExecutorThread-0] > master.RegionStates: Failed to open/close 89490cd5e00ea8948af413a1df65091a on > null, set to FAILED_OPEN > 2018-05-10 14:33:32,398 INFO [ProcedureExecutorThread-0] > master.RegionStates: Transition {89490cd5e00ea8948af413a1df65091a > state=OFFLINE, ts=1525977212397, server=null} to > {89490cd5e00ea8948af413a1df65091a state=FAILED_OPEN, ts=1525977212398, > server=null} > 2018-05-10 14:33:32,398 INFO [ProcedureExecutorThread-0] > zookeeper.ZKTableStateManager: Moving table hbase:quota state from ENABLING > to ENABLED > {noformat} > - Reason for this issue: Issue > - [system table > creation|https://github.com/apache/hbase/blob/061a31fad1654d9ded96d118e04c14860413fa25/hbase-server/src/main/java/org/apache/hadoop/hbase/master/HMaster.java#L1793] > doesn't move the table to the appropriate rs group to which system namespace > is assigned to. Need to execute logic similar to what is done in the > RSGroupAdminEndpoint for [post table creation|#L377] for user table creation. > *Work Around* > - Assigning the system table to ``default`` rsgroup (or to the rsgroup to > which the system namespace has been assigned). > - Manually assigning the region in RIT from the system table > -- This message was sent by Atlassian JIRA (v7.6.3#76005)