ilastik/lazyflow

requests cannot determine greenlet context if assertions are disabled

burcin opened this issue · 0 comments

I have a pixel classification project with the knott dataset from the web
site, which is already labeled but without predictions. With Python's optimization mode (-OO), loading the project and clicking live preview leads to this:

ERROR 2014-04-16 16:40:38,707 excepthooks 23919 139917057312512 Traceback (most recent call last):
  File "/home/burcin/hci/vanilla/volumina/volumina/tiling.py", line 581, in _dirtyLayersWorker
    img = image_req.wait()
  File "/home/burcin/hci/vanilla/volumina/volumina/pixelpipeline/imagesources.py", line 247, in wait
    return self.toImage()
  File "/home/burcin/hci/vanilla/volumina/volumina/pixelpipeline/imagesources.py", line 253, in toImage
    self._arrayreq.wait()
  File "/home/burcin/hci/vanilla/volumina/volumina/pixelpipeline/slicesources.py", line 38, in wait
    return self._sp(self._ar.wait())
  File "/home/burcin/hci/vanilla/volumina/volumina/pixelpipeline/datasources.py", line 439, in wait
    rawData = self._rawRequest.wait()
  File "/home/burcin/hci/vanilla/volumina/volumina/pixelpipeline/datasources.py", line 202, in wait
    a = self._req.wait()
  File "/home/burcin/hci/vanilla/lazyflow/lazyflow/request/request.py", line 327, in wait
    return self._wait(timeout)
  File "/home/burcin/hci/vanilla/lazyflow/lazyflow/request/request.py", line 350, in _wait
    self._wait_within_foreign_thread( timeout )
  File "/home/burcin/hci/vanilla/lazyflow/lazyflow/request/request.py", line 235, in _execute
    self._result = self.fn()
  File "/home/burcin/hci/vanilla/lazyflow/lazyflow/slot.py", line 780, in __call__
    result_op = self.operator.execute(self.slot, (), self.roi, destination)
  File "/home/burcin/hci/vanilla/lazyflow/lazyflow/operators/opReorderAxes.py", line 109, in execute
    self.Input( *in_roi ).writeInto( result_input_view ).wait()
  File "/home/burcin/hci/vanilla/lazyflow/lazyflow/request/request.py", line 327, in wait
    return self._wait(timeout)
  File "/home/burcin/hci/vanilla/lazyflow/lazyflow/request/request.py", line 350, in _wait
    self._wait_within_foreign_thread( timeout )
  File "/home/burcin/hci/vanilla/lazyflow/lazyflow/request/request.py", line 235, in _execute
    self._result = self.fn()
  File "/home/burcin/hci/vanilla/lazyflow/lazyflow/request/request.py", line 613, in __call__
    return self.func( *totalargs, **self.kwargs)
  File "/home/burcin/hci/vanilla/lazyflow/lazyflow/slot.py", line 780, in __call__
    result_op = self.operator.execute(self.slot, (), self.roi, destination)
  File "/home/burcin/hci/vanilla/lazyflow/lazyflow/slot.py", line 1411, in execute
    return self.operator.execute(self, totalIndex, roi, result)
  File "/home/burcin/hci/vanilla/lazyflow/lazyflow/operators/generic.py", line 255, in execute
    self.inputs["Input"][newKey].writeInto(result).wait()
  File "/home/burcin/hci/vanilla/lazyflow/lazyflow/request/request.py", line 327, in wait
    return self._wait(timeout)
  File "/home/burcin/hci/vanilla/lazyflow/lazyflow/request/request.py", line 350, in _wait
    self._wait_within_foreign_thread( timeout )
  File "/home/burcin/hci/vanilla/lazyflow/lazyflow/request/request.py", line 235, in _execute
    self._result = self.fn()
  File "/home/burcin/hci/vanilla/lazyflow/lazyflow/request/request.py", line 613, in __call__
    return self.func( *totalargs, **self.kwargs)
  File "/home/burcin/hci/vanilla/lazyflow/lazyflow/slot.py", line 780, in __call__
    result_op = self.operator.execute(self.slot, (), self.roi, destination)
  File "/home/burcin/hci/vanilla/lazyflow/lazyflow/operators/opSlicedBlockedArrayCache.py", line 136, in execute
    op.outputs["Output"][key].writeInto(result).wait()
  File "/home/burcin/hci/vanilla/lazyflow/lazyflow/request/request.py", line 327, in wait
    return self._wait(timeout)
  File "/home/burcin/hci/vanilla/lazyflow/lazyflow/request/request.py", line 350, in _wait
    self._wait_within_foreign_thread( timeout )
  File "/home/burcin/hci/vanilla/lazyflow/lazyflow/request/request.py", line 235, in _execute
    self._result = self.fn()
  File "/home/burcin/hci/vanilla/lazyflow/lazyflow/request/request.py", line 613, in __call__
    return self.func( *totalargs, **self.kwargs)
  File "/home/burcin/hci/vanilla/lazyflow/lazyflow/slot.py", line 780, in __call__
    result_op = self.operator.execute(self.slot, (), self.roi, destination)
  File "/home/burcin/hci/vanilla/lazyflow/lazyflow/operators/opBlockedArrayCache.py", line 234, in execute
    pool.wait()
  File "/home/burcin/hci/vanilla/lazyflow/lazyflow/request/request.py", line 892, in wait
    req.block()
  File "/home/burcin/hci/vanilla/lazyflow/lazyflow/request/request.py", line 333, in block
    self._wait(timeout) # No return value. Use wait()
  File "/home/burcin/hci/vanilla/lazyflow/lazyflow/request/request.py", line 350, in _wait
    self._wait_within_foreign_thread( timeout )
  File "/home/burcin/hci/vanilla/lazyflow/lazyflow/request/request.py", line 235, in _execute
    self._result = self.fn()
  File "/home/burcin/hci/vanilla/lazyflow/lazyflow/request/request.py", line 613, in __call__
    return self.func( *totalargs, **self.kwargs)
  File "/home/burcin/hci/vanilla/lazyflow/lazyflow/slot.py", line 780, in __call__
    result_op = self.operator.execute(self.slot, (), self.roi, destination)
  File "/home/burcin/hci/vanilla/lazyflow/lazyflow/operators/opArrayCache.py", line 277, in execute
    return self._executeOutput(slot, subindex, roi, result)
  File "/home/burcin/hci/vanilla/lazyflow/lazyflow/operators/opArrayCache.py", line 408, in _executeOutput
    inProcessPool.wait()
  File "/home/burcin/hci/vanilla/lazyflow/lazyflow/request/request.py", line 892, in wait
    req.block()
  File "/home/burcin/hci/vanilla/lazyflow/lazyflow/request/request.py", line 333, in block
    self._wait(timeout) # No return value. Use wait()
  File "/home/burcin/hci/vanilla/lazyflow/lazyflow/request/request.py", line 353, in _wait
    self._wait_within_request( current_request )
  File "/home/burcin/hci/vanilla/lazyflow/lazyflow/request/request.py", line 235, in _execute
    self._result = self.fn()
  File "/home/burcin/hci/vanilla/lazyflow/lazyflow/request/request.py", line 613, in __call__
    return self.func( *totalargs, **self.kwargs)
  File "/home/burcin/hci/vanilla/lazyflow/lazyflow/slot.py", line 780, in __call__
    result_op = self.operator.execute(self.slot, (), self.roi, destination)
  File "/home/burcin/hci/vanilla/lazyflow/lazyflow/operators/generic.py", line 530, in execute
    self.inputs["Input"][newKey].writeInto(result).wait()
  File "/home/burcin/hci/vanilla/lazyflow/lazyflow/request/request.py", line 327, in wait
    return self._wait(timeout)
  File "/home/burcin/hci/vanilla/lazyflow/lazyflow/request/request.py", line 353, in _wait
    self._wait_within_request( current_request )
  File "/home/burcin/hci/vanilla/lazyflow/lazyflow/request/request.py", line 235, in _execute
    self._result = self.fn()
  File "/home/burcin/hci/vanilla/lazyflow/lazyflow/request/request.py", line 613, in __call__
    return self.func( *totalargs, **self.kwargs)
  File "/home/burcin/hci/vanilla/lazyflow/lazyflow/slot.py", line 780, in __call__
    result_op = self.operator.execute(self.slot, (), self.roi, destination)
  File "/home/burcin/hci/vanilla/lazyflow/lazyflow/operators/classifierOperators.py", line 404, in execute
    forests=self.inputs["Classifier"][:].wait()
  File "/home/burcin/hci/vanilla/lazyflow/lazyflow/request/request.py", line 327, in wait
    return self._wait(timeout)
  File "/home/burcin/hci/vanilla/lazyflow/lazyflow/request/request.py", line 353, in _wait
    self._wait_within_request( current_request )
  File "/home/burcin/hci/vanilla/lazyflow/lazyflow/request/request.py", line 235, in _execute
    self._result = self.fn()
  File "/home/burcin/hci/vanilla/lazyflow/lazyflow/slot.py", line 780, in __call__
    result_op = self.operator.execute(self.slot, (), self.roi, destination)
  File "/home/burcin/hci/vanilla/lazyflow/lazyflow/operators/valueProviders.py", line 273, in execute
    value = request.wait()
  File "/home/burcin/hci/vanilla/lazyflow/lazyflow/request/request.py", line 327, in wait
    return self._wait(timeout)
  File "/home/burcin/hci/vanilla/lazyflow/lazyflow/request/request.py", line 353, in _wait
    self._wait_within_request( current_request )
  File "/home/burcin/hci/vanilla/lazyflow/lazyflow/request/request.py", line 235, in _execute
    self._result = self.fn()
  File "/home/burcin/hci/vanilla/lazyflow/lazyflow/slot.py", line 780, in __call__
    result_op = self.operator.execute(self.slot, (), self.roi, destination)
  File "/home/burcin/hci/vanilla/lazyflow/lazyflow/operators/classifierOperators.py", line 172, in execute
    labels_and_features = self.LabelAndFeatureMatrix.value
  File "/home/burcin/hci/vanilla/lazyflow/lazyflow/slot.py", line 983, in value
    temp = self[:].wait()
  File "/home/burcin/hci/vanilla/lazyflow/lazyflow/request/request.py", line 327, in wait
    return self._wait(timeout)
  File "/home/burcin/hci/vanilla/lazyflow/lazyflow/request/request.py", line 353, in _wait
    self._wait_within_request( current_request )
  File "/home/burcin/hci/vanilla/lazyflow/lazyflow/request/request.py", line 235, in _execute
    self._result = self.fn()
  File "/home/burcin/hci/vanilla/lazyflow/lazyflow/slot.py", line 780, in __call__
    result_op = self.operator.execute(self.slot, (), self.roi, destination)
  File "/home/burcin/hci/vanilla/lazyflow/lazyflow/operators/opConcatenateFeatureMatrices.py", line 60, in execute
    pool.wait()
  File "/home/burcin/hci/vanilla/lazyflow/lazyflow/request/request.py", line 892, in wait
    req.block()
  File "/home/burcin/hci/vanilla/lazyflow/lazyflow/request/request.py", line 333, in block
    self._wait(timeout) # No return value. Use wait()
  File "/home/burcin/hci/vanilla/lazyflow/lazyflow/request/request.py", line 353, in _wait
    self._wait_within_request( current_request )
  File "/home/burcin/hci/vanilla/lazyflow/lazyflow/request/request.py", line 235, in _execute
    self._result = self.fn()
  File "/home/burcin/hci/vanilla/lazyflow/lazyflow/request/request.py", line 613, in __call__
    return self.func( *totalargs, **self.kwargs)
  File "/home/burcin/hci/vanilla/lazyflow/lazyflow/slot.py", line 780, in __call__
    result_op = self.operator.execute(self.slot, (), self.roi, destination)
  File "/home/burcin/hci/vanilla/lazyflow/lazyflow/operators/opFeatureMatrixCache.py", line 102, in execute
    pool.wait()
  File "/home/burcin/hci/vanilla/lazyflow/lazyflow/request/request.py", line 892, in wait
    req.block()
  File "/home/burcin/hci/vanilla/lazyflow/lazyflow/request/request.py", line 333, in block
    self._wait(timeout) # No return value. Use wait()
  File "/home/burcin/hci/vanilla/lazyflow/lazyflow/request/request.py", line 353, in _wait
    self._wait_within_request( current_request )
  File "/home/burcin/hci/vanilla/lazyflow/lazyflow/request/request.py", line 235, in _execute
    self._result = self.fn()
  File "/home/burcin/hci/vanilla/lazyflow/lazyflow/operators/opFeatureMatrixCache.py", line 158, in _update_block
    labels_and_features_matrix = self._extract_feature_matrix(block_roi)
  File "/home/burcin/hci/vanilla/lazyflow/lazyflow/operators/opFeatureMatrixCache.py", line 196, in _extract_feature_matrix
    features = self.FeatureImage(feature_roi_start, feature_roi_stop).wait()
  File "/home/burcin/hci/vanilla/lazyflow/lazyflow/request/request.py", line 327, in wait
    return self._wait(timeout)
  File "/home/burcin/hci/vanilla/lazyflow/lazyflow/request/request.py", line 353, in _wait
    self._wait_within_request( current_request )
  File "/home/burcin/hci/vanilla/lazyflow/lazyflow/request/request.py", line 453, in _wait_within_request
    self.greenlet.owning_requests.append(self)
AttributeError: 'NoneType' object has no attribute 'owning_requests'