Hernan Gelaf-Romer created HBASE-29386: ------------------------------------------
Summary: SnapshotProcedure and EnableTableProcedure can cause a deadlock Key: HBASE-29386 URL: https://issues.apache.org/jira/browse/HBASE-29386 Project: HBase Issue Type: Bug Reporter: Hernan Gelaf-Romer Assignee: Hernan Gelaf-Romer At my job, we've discovered that enable table procedures can be executed at the same time as a snapshot procedure and can cause a deadlock which prevents both procedures from finishing. The enable table procedure will be kicked off first, and will run and kick off children subprocedures which will enable the region. At this point, the parent process releases it's lock, and the snapshot procedure starts to execute. The snapshot procedure gets to the state SNAPSHOT_WRITE_SNAPSHOT_INFO, and then continues to repeat this step as it waits for the table to be enabled. The table enable procedure will never re-acquire the lock and run, which means both procedures are stuck indefinitely. A solution here is to allow the snapshot procedure to be suspended in the case that the table is neither disabled or enabled, which will allow other table related procedures to run -- This message was sent by Atlassian Jira (v8.20.10#820010)