Alexei Colin <a...@alexeicolin.com> added the comment:
Can confirm that this BlockingIOError happens on GPFS (alpine) on Summit supercomputer, tested with Python 3.8 and 3.10a7. I found that it happens only for file sizes above 65536. Minimal example: This filesize works: $ rm -f srcfile dstfile && truncate --size 65535 srcfile && python3.10 -c "import shutil; shutil.copyfile(b'srcfile', b'dstfile')" This file size (and larger) does not work: $ rm -f srcfile dstfile && truncate --size 65536 srcfile && python3.10 -c "import shutil; shutil.copyfile(b'srcfile', b'dstfile')" Traceback (most recent call last): File "<string>", line 1, in <module> File "/.../usr/lib/python3.10/shutil.py", line 265, in copyfile _fastcopy_sendfile(fsrc, fdst) File "/.../usr/lib/python3.10/shutil.py", line 162, in _fastcopy_sendfile raise err File "/.../usr/lib/python3.10/shutil.py", line 142, in _fastcopy_sendfile sent = os.sendfile(outfd, infd, offset, blocksize) BlockingIOError: [Errno 11] Resource temporarily unavailable: b'srcfile' -> b'dstfile' I tried patching shutil.py to retry the the call on this EAGAIN, but subsequent attempts fail with EAGAIN again indefinitely. I also use OP's workaround: set _USE_CP_SENDFILE = False in shutil.py ---------- nosy: +alexeicolin _______________________________________ Python tracker <rep...@bugs.python.org> <https://bugs.python.org/issue43743> _______________________________________ _______________________________________________ Python-bugs-list mailing list Unsubscribe: https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com