Currently sharding DDL coordinators attempt to acquire dist-locks in their construction phase. This is blocking work that depends on other coordinators to complete. Since all the coordinators use the same shared threadpool we can end-up with the following deadlock on thread acquisition:
- coordinator 1 waits on the dist-locks acquisition without yelding his threads (T1)
- coordinator 2 waits on (T1) to be available in other to release the distlock.