Details
-
Bug
-
Status: Open
-
Major
-
Resolution: Unresolved
-
None
-
None
-
None
-
None
Description
The PartitionDecorator uses the DrillbitContext.getExecutor() threadpool for threads that send batches to downstream partitions. This threadpool is the same threadpool that is used for DataTunnel connections. This shared threadpool could cause a deadlock in the event where the number of partitions is greater than or equal to the max number of threads in the shared threadpool.
A fix for this would be to have a separate thread pool for partition senders. A similar strategy is used for avoiding deadlocks in the scanners (there is a dedicated scanner thread pool).