Nick Dimiduk created HBASE-28403:
------------------------------------

             Summary: Improve debugging for failures in procedure tests
                 Key: HBASE-28403
                 URL: https://issues.apache.org/jira/browse/HBASE-28403
             Project: HBase
          Issue Type: Task
          Components: proc-v2, test
            Reporter: Nick Dimiduk


We see unit test failures in Jenkins that look like this:

{noformat}
java.lang.IllegalArgumentException: run queue not empty
        at 
org.apache.hbase.thirdparty.com.google.common.base.Preconditions.checkArgument(Preconditions.java:143)
        at 
org.apache.hadoop.hbase.procedure2.ProcedureExecutor.load(ProcedureExecutor.java:332)
        at 
org.apache.hadoop.hbase.procedure2.ProcedureExecutor.init(ProcedureExecutor.java:665)
        at 
org.apache.hadoop.hbase.procedure2.ProcedureTestingUtility.restart(ProcedureTestingUtility.java:132)
        at 
org.apache.hadoop.hbase.procedure2.ProcedureTestingUtility.restart(ProcedureTestingUtility.java:100)
        at 
org.apache.hadoop.hbase.master.procedure.MasterProcedureTestingUtility.restartMasterProcedureExecutor(MasterProcedureTestingUtility.java:85)
        at 
org.apache.hadoop.hbase.master.assignment.TestRollbackSCP.testFailAndRollback(TestRollbackSCP.java:180)
{noformat}

This isn't enough information to debug the situation. The test code in question 
looks reasonable enough -- it clears the object for re-use between tests. 
However, somewhere between stop/clear/start we miss something. Add some 
toString implementations and dump the objects in the preconditions.



--
This message was sent by Atlassian Jira
(v8.20.10#820010)

Reply via email to