If multiprocessing tasks are not completed within the timeout specified, we need to reset the pool to avoid state being carried over between assignments.
also please add a counter metric when the pool is being recreated, i imagine that with this change, we will have to fine-tune join timeout again to improve consumer performance.
If multiprocessing tasks are not completed within the timeout specified, we need to reset the pool to avoid state being carried over between assignments.