frankliee commented on issue #1488: URL: https://github.com/apache/iceberg-python/issues/1488#issuecomment-2579879173
> One thing we can test is to force create a new FileIO in the worker. Something like this > > ``` > from multiprocessing import Process > from pyiceberg.io.pyarrow import PyArrowFileIO > > worker_num = 2 > def worker(tbl): > tbl.io = PyArrowFileIO(tbl.properties) > arr = tbl.scan().to_arrow() > print(arr) > > from pyiceberg.catalog import load_catalog > catalog = load_catalog("mycatalog") > tbl = catalog.load_table("db.table") > workers = [Process(target=worker, args=(tbl, )) for worker_id in range(worker_num)] > [p.start() for p in workers] > [p.join() for p in workers] > ``` > > Can you try this out? I have tried to renew PyArrowFileIO in the worker subprocess, but it is still blocked on `input_file = self._filesystem.open_input_file(self._path)` -- This is an automated message from the Apache Git Service. To respond to the message, please log on to GitHub and use the URL above to go to the specific comment. To unsubscribe, e-mail: issues-unsubscr...@iceberg.apache.org For queries about this service, please contact Infrastructure at: us...@infra.apache.org --------------------------------------------------------------------- To unsubscribe, e-mail: issues-unsubscr...@iceberg.apache.org For additional commands, e-mail: issues-h...@iceberg.apache.org