Closed bitcometz closed 3 years ago
Hey there,
I believe this error is related to there being read-only files in the temporary directory that PICRUSt2 makes to work in. Similar problems are reported here: https://stackoverflow.com/questions/1557351/python-delete-non-empty-dir
What operating system are you using and were the final outputs created successfully?
hi, thanks for your reply.
I first set the tmpdir
in my shell:
export TMPDIR="path/tmp" # which is 'drwxrwxrwx' (777)
my operating system is 3.10.0-693.5.2.el7.x86_64 #1 SMP Fri Oct 20 20:32:50 UTC 2017 x86_64 x86_64 x86_64 GNU/Linux
And the outputs were not created successfully.
Thanks for your suggestions, I try to change os.rmdir(path)
to os.system('rm -rf {}'.format(path))
to see if it works.
Best
it works now !
Exactly same problem as written here was there for me in my HPC cluster.
hi, thanks for your reply.
I first set the
tmpdir
in my shell:export TMPDIR="path/tmp" # which is 'drwxrwxrwx' (777)
my operating system is
3.10.0-693.5.2.el7.x86_64 #1 SMP Fri Oct 20 20:32:50 UTC 2017 x86_64 x86_64 x86_64 GNU/Linux
And the outputs were not created successfully.
Thanks for your suggestions, I try to change
os.rmdir(path)
toos.system('rm -rf {}'.format(path))
to see if it works.Best
The solution suggested by @bitcometz worked, by substituting Line 722 in shutil.py
. I think it has to do with the NFS server setting (/tmp
synchronized among compute nodes), as I'm encountering the following error messages.
rm: cannot remove '/tmp/tmp_7dnte1b/.nfs0000000003d400b700000e4a': Device or resource busy
rm: cannot remove '/tmp/tmp_7dnte1b/.nfs0000000003d400b800000e4b': Device or resource busy
The results are there, despite the error above prompting three times.
hello,
I run qiime picrust2 full-pipeline successfully yesterday. But I run into the the
Directory not empty errors
:Traceback (most recent call last): File "path/00.conda/envs/qiime2-2019.10/lib/python3.6/site-packages/q2cli/commands.py", line 328, in call results = action(arguments) File "<path/00.conda/envs/qiime2-2019.10/lib/python3.6/site-packages/decorator.py:decorator-gen-211>", line 2, in full_pipeline File "path/00.conda/envs/qiime2-2019.10/lib/python3.6/site-packages/qiime2/sdk/action.py", line 240, in bound_callable output_types, provenance) File "path/00.conda/envs/qiime2-2019.10/lib/python3.6/site-packages/qiime2/sdk/action.py", line 383, in _callableexecutor output_views = self._callable(view_args) File "path/00.conda/envs/qiime2-2019.10/lib/python3.6/site-packages/q2_picrust2/_full_pipeline.py", line 70, in full_pipeline verbose=highly_verbose) File "path/00.conda/envs/qiime2-2019.10/lib/python3.6/site-packages/picrust2/pipeline.py", line 203, in full_pipeline print_stdout=verbose, print_stderr=True) File "path/00.conda/envs/qiime2-2019.10/lib/python3.6/site-packages/picrust2/util.py", line 265, in system_call_check print(stderr_log, file=sys.stderr) File "path/00.conda/envs/qiime2-2019.10/lib/python3.6/site-packages/picrust2/util.py", line 789, in exit self.cleanup() File "path/00.conda/envs/qiime2-2019.10/lib/python3.6/site-packages/picrust2/util.py", line 798, in cleanup _shutil.rmtree(self.name) File "path/00.conda/envs/qiime2-2019.10/lib/python3.6/shutil.py", line 484, in rmtree onerror(os.rmdir, path, sys.exc_info()) File "path/00.conda/envs/qiime2-2019.10/lib/python3.6/shutil.py", line 482, in rmtree os.rmdir(path) OSError: [Errno 39] Directory not empty: 'path/tmp/tmpr2r8zwcx'
Plugin error from picrust2:
[Errno 39] Directory not empty: 'path/tmp/tmpr2r8zwcx'
Best