Hello,
I’m having the same problems listed in this thread and this thread while trying to use the feature-classifier fit-classifier-naive-bayes command after training SILVA132 on my primers. Despite setting my TMPDIR to a path that has plenty of space (over 700GB; it also spits out the correct directory after running the “env” command), and running the code on a machine with 125GB of memory (although it doesn’t seem to be a memory issue), I still get an error. I’m running qiime2-2019.1 in a conda environment on linux.
Command is as follows:
export TMPDIR=/mnt/e5514ac8-93d5-4c49-a344-0a016f364cf1/Bianca
echo $TMPDIR
/mnt/e5514ac8-93d5-4c49-a344-0a016f364cf1/Bianca
qiime feature-classifier fit-classifier-naive-bayes \
--i-reference-reads ref-seqs-silva-132_16S.qza \
--i-reference-taxonomy 7_level_taxonomy.qza \
--p-classify--chunk-size 1000 \
--o-classifier 16S_silva-132_classifier.qza \
--verbose
I’ve also tried without the chunk-size line, and with chunk-size of 10; same error.
Behold the error:
/mnt/e5514ac8-93d5-4c49-a344-0a016f364cf1/Bianca/qiime2/lib/python3.6/site-packages/q2_feature_classifier/classifier.py:101: UserWarning: The TaxonomicClassifier artifact that results from this method was trained using scikit-learn version 0.20.2. It cannot be used with other versions of scikit-learn. (While the classifier may complete successfully, the results will be unreliable.)
warnings.warn(warning, UserWarning)
Traceback (most recent call last):
File "/mnt/e5514ac8-93d5-4c49-a344-0a016f364cf1/Bianca/qiime2/lib/python3.6/site-packages/q2cli/commands.py", line 274, in __call__
results = action(**arguments)
File "</mnt/e5514ac8-93d5-4c49-a344-0a016f364cf1/Bianca/qiime2/lib/python3.6/site-packages/decorator.py:decorator-gen-340>", line 2, in fit_classifier_naive_bayes
File "/mnt/e5514ac8-93d5-4c49-a344-0a016f364cf1/Bianca/qiime2/lib/python3.6/site-packages/qiime2/sdk/action.py", line 231, in bound_callable
output_types, provenance)
File "/mnt/e5514ac8-93d5-4c49-a344-0a016f364cf1/Bianca/qiime2/lib/python3.6/site-packages/qiime2/sdk/action.py", line 393, in _callable_executor_
spec.qiime_type, output_view, spec.view_type, prov)
File "/mnt/e5514ac8-93d5-4c49-a344-0a016f364cf1/Bianca/qiime2/lib/python3.6/site-packages/qiime2/sdk/result.py", line 265, in _from_view
result = transformation(view)
File "/mnt/e5514ac8-93d5-4c49-a344-0a016f364cf1/Bianca/qiime2/lib/python3.6/site-packages/qiime2/core/transform.py", line 70, in transformation
new_view = transformer(view)
File "/mnt/e5514ac8-93d5-4c49-a344-0a016f364cf1/Bianca/qiime2/lib/python3.6/site-packages/q2_feature_classifier/_taxonomic_classifier.py", line 85, in _2
for fn in joblib.dump(data, pf):
File "/mnt/e5514ac8-93d5-4c49-a344-0a016f364cf1/Bianca/qiime2/lib/python3.6/site-packages/sklearn/externals/joblib/numpy_pickle.py", line 502, in dump
NumpyPickler(f, protocol=protocol).dump(value)
File "/mnt/e5514ac8-93d5-4c49-a344-0a016f364cf1/Bianca/qiime2/lib/python3.6/pickle.py", line 409, in dump
self.save(obj)
File "/mnt/e5514ac8-93d5-4c49-a344-0a016f364cf1/Bianca/qiime2/lib/python3.6/site-packages/sklearn/externals/joblib/numpy_pickle.py", line 292, in save
return Pickler.save(self, obj)
File "/mnt/e5514ac8-93d5-4c49-a344-0a016f364cf1/Bianca/qiime2/lib/python3.6/pickle.py", line 521, in save
self.save_reduce(obj=obj, *rv)
File "/mnt/e5514ac8-93d5-4c49-a344-0a016f364cf1/Bianca/qiime2/lib/python3.6/pickle.py", line 634, in save_reduce
save(state)
File "/mnt/e5514ac8-93d5-4c49-a344-0a016f364cf1/Bianca/qiime2/lib/python3.6/site-packages/sklearn/externals/joblib/numpy_pickle.py", line 292, in save
return Pickler.save(self, obj)
File "/mnt/e5514ac8-93d5-4c49-a344-0a016f364cf1/Bianca/qiime2/lib/python3.6/pickle.py", line 476, in save
f(self, obj) # Call unbound method with explicit self
File "/mnt/e5514ac8-93d5-4c49-a344-0a016f364cf1/Bianca/qiime2/lib/python3.6/pickle.py", line 821, in save_dict
self._batch_setitems(obj.items())
File "/mnt/e5514ac8-93d5-4c49-a344-0a016f364cf1/Bianca/qiime2/lib/python3.6/pickle.py", line 847, in _batch_setitems
save(v)
File "/mnt/e5514ac8-93d5-4c49-a344-0a016f364cf1/Bianca/qiime2/lib/python3.6/site-packages/sklearn/externals/joblib/numpy_pickle.py", line 292, in save
return Pickler.save(self, obj)
File "/mnt/e5514ac8-93d5-4c49-a344-0a016f364cf1/Bianca/qiime2/lib/python3.6/pickle.py", line 476, in save
f(self, obj) # Call unbound method with explicit self
File "/mnt/e5514ac8-93d5-4c49-a344-0a016f364cf1/Bianca/qiime2/lib/python3.6/pickle.py", line 781, in save_list
self._batch_appends(obj)
File "/mnt/e5514ac8-93d5-4c49-a344-0a016f364cf1/Bianca/qiime2/lib/python3.6/pickle.py", line 805, in _batch_appends
save(x)
File "/mnt/e5514ac8-93d5-4c49-a344-0a016f364cf1/Bianca/qiime2/lib/python3.6/site-packages/sklearn/externals/joblib/numpy_pickle.py", line 292, in save
return Pickler.save(self, obj)
File "/mnt/e5514ac8-93d5-4c49-a344-0a016f364cf1/Bianca/qiime2/lib/python3.6/pickle.py", line 476, in save
f(self, obj) # Call unbound method with explicit self
File "/mnt/e5514ac8-93d5-4c49-a344-0a016f364cf1/Bianca/qiime2/lib/python3.6/pickle.py", line 781, in save_list
self._batch_appends(obj)
File "/mnt/e5514ac8-93d5-4c49-a344-0a016f364cf1/Bianca/qiime2/lib/python3.6/pickle.py", line 805, in _batch_appends
save(x)
File "/mnt/e5514ac8-93d5-4c49-a344-0a016f364cf1/Bianca/qiime2/lib/python3.6/site-packages/sklearn/externals/joblib/numpy_pickle.py", line 292, in save
return Pickler.save(self, obj)
File "/mnt/e5514ac8-93d5-4c49-a344-0a016f364cf1/Bianca/qiime2/lib/python3.6/pickle.py", line 521, in save
self.save_reduce(obj=obj, *rv)
File "/mnt/e5514ac8-93d5-4c49-a344-0a016f364cf1/Bianca/qiime2/lib/python3.6/pickle.py", line 634, in save_reduce
save(state)
File "/mnt/e5514ac8-93d5-4c49-a344-0a016f364cf1/Bianca/qiime2/lib/python3.6/site-packages/sklearn/externals/joblib/numpy_pickle.py", line 292, in save
return Pickler.save(self, obj)
File "/mnt/e5514ac8-93d5-4c49-a344-0a016f364cf1/Bianca/qiime2/lib/python3.6/pickle.py", line 476, in save
f(self, obj) # Call unbound method with explicit self
File "/mnt/e5514ac8-93d5-4c49-a344-0a016f364cf1/Bianca/qiime2/lib/python3.6/pickle.py", line 821, in save_dict
self._batch_setitems(obj.items())
File "/mnt/e5514ac8-93d5-4c49-a344-0a016f364cf1/Bianca/qiime2/lib/python3.6/pickle.py", line 847, in _batch_setitems
save(v)
File "/mnt/e5514ac8-93d5-4c49-a344-0a016f364cf1/Bianca/qiime2/lib/python3.6/site-packages/sklearn/externals/joblib/numpy_pickle.py", line 289, in save
wrapper.write_array(obj, self)
File "/mnt/e5514ac8-93d5-4c49-a344-0a016f364cf1/Bianca/qiime2/lib/python3.6/site-packages/sklearn/externals/joblib/numpy_pickle.py", line 104, in write_array
pickler.file_handle.write(chunk.tostring('C'))
OSError: [Errno 28] No space left on device
Plugin error from feature-classifier:
[Errno 28] No space left on device
See above for debug info
Let me know of anything else I can provide to make the issue more clear, if need be. Thank you!