diff --git a/python/pyarrow/pandas_compat.py b/python/pyarrow/pandas_compat.py index 935f495d7c8..91b38b8426c 100644 --- a/python/pyarrow/pandas_compat.py +++ b/python/pyarrow/pandas_compat.py @@ -18,6 +18,10 @@ import ast from collections.abc import Sequence +from concurrent import futures +# import threading submodule upfront to avoid partially initialized +# module bug (ARROW-11983) +import concurrent.futures.thread # noqa from copy import deepcopy from itertools import zip_longest import json @@ -590,8 +594,6 @@ def _can_definitely_zero_copy(arr): arrays = [convert_column(c, f) for c, f in zip(columns_to_convert, convert_fields)] else: - from concurrent import futures - arrays = [] with futures.ThreadPoolExecutor(nthreads) as executor: for c, f in zip(columns_to_convert, convert_fields):