[backport] fix deadlock by offloading distributed mapreduce result collection to as...

...ync executor. Fixes #4238 , #3889