Bad values in fds_to_keep

Viewed 600

I am running tensorflow within a microservice built using Klein/Twisted. I recently upgraded to a new version of scikit-learn (20.0), and am getting an error ValueError: bad value(s) in fds_to_keep. When I revert the version of scikit-learn to 19.2 the error is eliminated. I looked at the changelog for scikit-learn, and in version 20.0 they started using joblib for parallel computation. Below I am including a stack trace for the error. I am using Twisted version 19.7.

Any insights or advice on how to debug further is much appreciated.

I have tried newer versions of scikit-learn e.g.21.3, but the error remains.

  File "/home/ppiela/anaconda3/envs/visual_extraction_validation/lib/python3.6/site-packages/calamari_ocr/ocr/predictor.py", line 106, in __init__
    backend = create_backend_from_proto(self.network_params, restore=self.checkpoint, processes=processes)
  File "/home/ppiela/anaconda3/envs/visual_extraction_validation/lib/python3.6/site-packages/calamari_ocr/ocr/backends/factory.py", line 28, in create_backend_from_proto
    from calamari_ocr.ocr.backends.tensorflow_backend.tensorflow_backend import TensorflowBackend
  File "/home/ppiela/anaconda3/envs/visual_extraction_validation/lib/python3.6/site-packages/calamari_ocr/ocr/backends/tensorflow_backend/tensorflow_backend.py", line 4, in <module>
    from calamari_ocr.ocr.backends.tensorflow_backend.tensorflow_model import TensorflowModel
  File "/home/ppiela/anaconda3/envs/visual_extraction_validation/lib/python3.6/site-packages/calamari_ocr/ocr/backends/tensorflow_backend/tensorflow_model.py", line 3, in <module>
    import tensorflow.contrib.cudnn_rnn as cudnn_rnn
  File "/home/ppiela/anaconda3/envs/visual_extraction_validation/lib/python3.6/site-packages/tensorflow/contrib/__init__.py", line 37, in <module>
    from tensorflow.contrib import cudnn_rnn
  File "/home/ppiela/anaconda3/envs/visual_extraction_validation/lib/python3.6/site-packages/tensorflow/contrib/cudnn_rnn/__init__.py", line 38, in <module>
    from tensorflow.contrib.cudnn_rnn.python.layers import *
  File "/home/ppiela/anaconda3/envs/visual_extraction_validation/lib/python3.6/site-packages/tensorflow/contrib/cudnn_rnn/python/layers/__init__.py", line 23, in <module>
    from tensorflow.contrib.cudnn_rnn.python.layers.cudnn_rnn import *
  File "/home/ppiela/anaconda3/envs/visual_extraction_validation/lib/python3.6/site-packages/tensorflow/contrib/cudnn_rnn/python/layers/cudnn_rnn.py", line 20, in <module>
    from tensorflow.contrib.cudnn_rnn.python.ops import cudnn_rnn_ops
  File "/home/ppiela/anaconda3/envs/visual_extraction_validation/lib/python3.6/site-packages/tensorflow/contrib/cudnn_rnn/python/ops/cudnn_rnn_ops.py", line 22, in <module>
    from tensorflow.contrib.rnn.python.ops import lstm_ops
  File "/home/ppiela/anaconda3/envs/visual_extraction_validation/lib/python3.6/site-packages/tensorflow/contrib/rnn/__init__.py", line 93, in <module>
    from tensorflow.contrib.rnn.python.ops.rnn_cell import *
  File "/home/ppiela/anaconda3/envs/visual_extraction_validation/lib/python3.6/site-packages/tensorflow/contrib/rnn/python/ops/rnn_cell.py", line 24, in <module>
    from tensorflow.contrib.layers.python.layers import layers
  File "/home/ppiela/anaconda3/envs/visual_extraction_validation/lib/python3.6/site-packages/tensorflow/contrib/layers/__init__.py", line 116, in <module>
    from tensorflow.contrib.layers.python.layers import *
  File "/home/ppiela/anaconda3/envs/visual_extraction_validation/lib/python3.6/site-packages/tensorflow/contrib/layers/python/layers/__init__.py", line 33, in <module>
    from tensorflow.contrib.layers.python.layers.target_column import *
  File "/home/ppiela/anaconda3/envs/visual_extraction_validation/lib/python3.6/site-packages/tensorflow/contrib/layers/python/layers/target_column.py", line 24, in <module>
    from tensorflow.contrib.losses.python.losses import loss_ops
  File "/home/ppiela/anaconda3/envs/visual_extraction_validation/lib/python3.6/site-packages/tensorflow/contrib/losses/__init__.py", line 25, in <module>
    from tensorflow.contrib.losses.python import metric_learning
  File "/home/ppiela/anaconda3/envs/visual_extraction_validation/lib/python3.6/site-packages/tensorflow/contrib/losses/python/metric_learning/__init__.py", line 25, in <module>
    from tensorflow.contrib.losses.python.metric_learning.metric_loss_ops import *
  File "/home/ppiela/anaconda3/envs/visual_extraction_validation/lib/python3.6/site-packages/tensorflow/contrib/losses/python/metric_learning/metric_loss_ops.py", line 34, in <module>
    from sklearn import metrics
  File "/home/ppiela/anaconda3/envs/visual_extraction_validation/lib/python3.6/site-packages/sklearn/__init__.py", line 76, in <module>
    from .base import clone
  File "/home/ppiela/anaconda3/envs/visual_extraction_validation/lib/python3.6/site-packages/sklearn/base.py", line 16, in <module>
    from .utils import _IS_32BIT
  File "/home/ppiela/anaconda3/envs/visual_extraction_validation/lib/python3.6/site-packages/sklearn/utils/__init__.py", line 17, in <module>
    from . import _joblib
  File "/home/ppiela/anaconda3/envs/visual_extraction_validation/lib/python3.6/site-packages/sklearn/utils/_joblib.py", line 8, in <module>
    import joblib
  File "/home/ppiela/anaconda3/envs/visual_extraction_validation/lib/python3.6/site-packages/joblib/__init__.py", line 119, in <module>
    from .parallel import Parallel
  File "/home/ppiela/anaconda3/envs/visual_extraction_validation/lib/python3.6/site-packages/joblib/parallel.py", line 22, in <module>
    from ._multiprocessing_helpers import mp
  File "/home/ppiela/anaconda3/envs/visual_extraction_validation/lib/python3.6/site-packages/joblib/_multiprocessing_helpers.py", line 34, in <module>
    _sem = Semaphore()
  File "/home/ppiela/anaconda3/envs/visual_extraction_validation/lib/python3.6/multiprocessing/context.py", line 82, in Semaphore
    return Semaphore(value, ctx=self.get_context())
  File "/home/ppiela/anaconda3/envs/visual_extraction_validation/lib/python3.6/multiprocessing/synchronize.py", line 127, in __init__
    SemLock.__init__(self, SEMAPHORE, value, SEM_VALUE_MAX, ctx=ctx)
  File "/home/ppiela/anaconda3/envs/visual_extraction_validation/lib/python3.6/multiprocessing/synchronize.py", line 81, in __init__
    register(self._semlock.name)
  File "/home/ppiela/anaconda3/envs/visual_extraction_validation/lib/python3.6/multiprocessing/semaphore_tracker.py", line 83, in register
    self._send('REGISTER', name)
  File "/home/ppiela/anaconda3/envs/visual_extraction_validation/lib/python3.6/multiprocessing/semaphore_tracker.py", line 90, in _send
    self.ensure_running()
  File "/home/ppiela/anaconda3/envs/visual_extraction_validation/lib/python3.6/multiprocessing/semaphore_tracker.py", line 71, in ensure_running
    pid = util.spawnv_passfds(exe, args, fds_to_pass)
  File "/home/ppiela/anaconda3/envs/visual_extraction_validation/lib/python3.6/multiprocessing/util.py", line 403, in spawnv_passfds
    False, False, None)
ValueError: bad value(s) in fds_to_keep
0 Answers
Related