Skip to content

nightly tests: deep_atlas/deep_atlas_tutorial.ipynb #494

@wyli

Description

@wyli

Describe the bug

Running ./deep_atlas/deep_atlas_tutorial.ipynb
Checking PEP8 compliance...
Running notebook...
Before:
    "max_epochs = 60\n",
    "max_epochs = 120\n",
After:
    "max_epochs = 1\n",
    "max_epochs = 1\n",
Before:
    "val_interval = 5\n",
    "val_interval = 5\n",
After:
    "val_interval = 1\n",
    "val_interval = 1\n",
Before:
    "num_batches_for_histogram = 200  # sample this many batches\n",
After:
    "num_batches_for_histogram = 1  # sample this many batches\n",
/opt/conda/lib/python3.8/site-packages/papermill/iorw.py:50: FutureWarning: pyarrow.HadoopFileSystem is deprecated as of 2.0.0, please use pyarrow.fs.HadoopFileSystem instead.
  from pyarrow import HadoopFileSystem

Executing:   0%|          | 0/97 [00:00<?, ?cell/s]
Executing:   1%|          | 1/97 [00:01<02:05,  1.31s/cell]
Executing:   4%|▍         | 4/97 [00:09<03:57,  2.55s/cell]
Executing:   5%|▌         | 5/97 [00:11<03:42,  2.42s/cell]
Executing:   9%|▉         | 9/97 [1:50:32<24:52:15, 1017.45s/cell]
Executing:  26%|██▌       | 25/97 [1:50:33<4:30:49, 225.69s/cell] 
Executing:  28%|██▊       | 27/97 [1:50:34<3:51:14, 198.21s/cell]
Executing:  28%|██▊       | 27/97 [1:50:35<4:46:43, 245.76s/cell]
Traceback (most recent call last):
  File "/opt/conda/bin/papermill", line 8, in <module>
    sys.exit(papermill())
  File "/opt/conda/lib/python3.8/site-packages/click/core.py", line 1128, in __call__
    return self.main(*args, **kwargs)
  File "/opt/conda/lib/python3.8/site-packages/click/core.py", line 1053, in main
    rv = self.invoke(ctx)
  File "/opt/conda/lib/python3.8/site-packages/click/core.py", line 1395, in invoke
    return ctx.invoke(self.callback, **ctx.params)
  File "/opt/conda/lib/python3.8/site-packages/click/core.py", line 754, in invoke
    return __callback(*args, **kwargs)
  File "/opt/conda/lib/python3.8/site-packages/click/decorators.py", line 26, in new_func
    return f(get_current_context(), *args, **kwargs)
  File "/opt/conda/lib/python3.8/site-packages/papermill/cli.py", line 250, in papermill
    execute_notebook(
  File "/opt/conda/lib/python3.8/site-packages/papermill/execute.py", line 122, in execute_notebook
    raise_for_execution_errors(nb, output_path)
  File "/opt/conda/lib/python3.8/site-packages/papermill/execute.py", line 234, in raise_for_execution_errors
    raise error
papermill.exceptions.PapermillExecutionError: 
---------------------------------------------------------------------------
Exception encountered at "In [13]":
---------------------------------------------------------------------------
RuntimeError                              Traceback (most recent call last)
/home/jenkins/agent/workspace/Monai-notebooks/MONAI/monai/transforms/transform.py in apply_transform(transform, data, map_items, unpack_items)
     81             return [_apply_transform(transform, item, unpack_items) for item in data]
---> 82         return _apply_transform(transform, data, unpack_items)
     83     except Exception as e:

/home/jenkins/agent/workspace/Monai-notebooks/MONAI/monai/transforms/transform.py in _apply_transform(transform, parameters, unpack_parameters)
     52 
---> 53     return transform(parameters)
     54 

/home/jenkins/agent/workspace/Monai-notebooks/MONAI/monai/transforms/io/dictionary.py in __call__(self, data, reader)
    120         for key, meta_key, meta_key_postfix in self.key_iterator(d, self.meta_keys, self.meta_key_postfix):
--> 121             data = self._loader(d[key], reader)
    122             if self._loader.image_only:

/home/jenkins/agent/workspace/Monai-notebooks/MONAI/monai/transforms/io/array.py in __call__(self, filename, reader)
    215 
--> 216         img_array, meta_data = reader.get_data(img)
    217         img_array = img_array.astype(self.dtype, copy=False)

/home/jenkins/agent/workspace/Monai-notebooks/MONAI/monai/data/image_reader.py in get_data(self, img)
    242         for i in ensure_tuple(img):
--> 243             data = self._get_array_data(i)
    244             img_array.append(data)

/home/jenkins/agent/workspace/Monai-notebooks/MONAI/monai/data/image_reader.py in _get_array_data(self, img)
    327         """
--> 328         np_img = itk.array_view_from_image(img, keep_axes=False)
    329         if img.GetNumberOfComponentsPerPixel() == 1:  # handling spatial images

/opt/conda/lib/python3.8/site-packages/itk/support/extras.py in GetArrayViewFromImage(image_or_filter, keep_axes, update, ttype)
    323     """Get an array view with the content of the image buffer"""
--> 324     return _GetArrayFromImage(
    325         image_or_filter, "GetArrayViewFromImage", keep_axes, update, ttype

/opt/conda/lib/python3.8/site-packages/itk/support/extras.py in _GetArrayFromImage(image_or_filter, function_name, keep_axes, update, ttype)
    293         ImageType = img.__class__
--> 294     keys = [k for k in itk.PyBuffer.keys() if k[0] == ImageType]
    295     if len(keys) == 0:

/opt/conda/lib/python3.8/site-packages/itk/support/lazy.py in __getattribute__(self, attr)
    131                     namespace = {}
--> 132                     base.itk_load_swig_module(module, namespace)
    133                     self.loaded_lazy_modules.add(module)

/opt/conda/lib/python3.8/site-packages/itk/support/base.py in itk_load_swig_module(name, namespace)
    109     loader = LibraryLoader()
--> 110     l_module = loader.load(swig_module_name)
    111 

/opt/conda/lib/python3.8/site-packages/itk/support/base.py in load(self, name)
    258             l_spec = importlib.util.find_spec(name)
--> 259             l_spec.loader.exec_module(l_module)  # pytype: disable=attribute-error
    260             return l_module

/opt/conda/lib/python3.8/importlib/_bootstrap_external.py in exec_module(self, module)

/opt/conda/lib/python3.8/importlib/_bootstrap.py in _call_with_frames_removed(f, *args, **kwds)

/opt/conda/lib/python3.8/site-packages/itk/support/../ITKBridgeNumPyPython.py in <module>
     70 import itk.ITKCommonPython
---> 71 from itk.itkPyBufferPython import *
     72 from itk.itkPyVectorContainerPython import *

/opt/conda/lib/python3.8/site-packages/itk/itkPyBufferPython.py in <module>
    117 try:
--> 118     from distributed.protocol import dask_serialize, dask_deserialize
    119     from typing import Dict, List, Tuple

/opt/conda/lib/python3.8/site-packages/distributed/__init__.py in <module>
      7 from ._version import get_versions
----> 8 from .actor import Actor, ActorFuture
      9 from .client import (

/opt/conda/lib/python3.8/site-packages/distributed/actor.py in <module>
      4 
----> 5 from .client import Future
      6 from .protocol import to_serialize

/opt/conda/lib/python3.8/site-packages/distributed/client.py in <module>
     52 from . import versions as version_module
---> 53 from .batched import BatchedSend
     54 from .cfexecutor import ClientExecutor

/opt/conda/lib/python3.8/site-packages/distributed/batched.py in <module>
      9 
---> 10 from .core import CommClosedError
     11 

/opt/conda/lib/python3.8/site-packages/distributed/core.py in <module>
     23 from . import profile, protocol
---> 24 from .comm import (
     25     CommClosedError,

/opt/conda/lib/python3.8/site-packages/distributed/comm/__init__.py in <module>
     24 
---> 25 _register_transports()

/opt/conda/lib/python3.8/site-packages/distributed/comm/__init__.py in _register_transports()
     16 def _register_transports():
---> 17     from . import inproc, tcp, ws
     18 

/opt/conda/lib/python3.8/site-packages/distributed/comm/tcp.py in <module>
    379 
--> 380 class BaseTCPConnector(Connector, RequireEncryptionMixin):
    381     _executor = ThreadPoolExecutor(2, thread_name_prefix="TCP-Executor")

/opt/conda/lib/python3.8/site-packages/distributed/comm/tcp.py in BaseTCPConnector()
    381     _executor = ThreadPoolExecutor(2, thread_name_prefix="TCP-Executor")
--> 382     _resolver = netutil.ExecutorResolver(close_executor=False, executor=_executor)
    383     client = TCPClient(resolver=_resolver)

/opt/conda/lib/python3.8/site-packages/tornado/util.py in __new__(cls, *args, **kwargs)
    287         # here too.
--> 288         instance.initialize(*args, **init_kwargs)
    289         return instance

/opt/conda/lib/python3.8/site-packages/tornado/netutil.py in initialize(self, executor, close_executor)
    426     ) -> None:
--> 427         self.io_loop = IOLoop.current()
    428         if executor is not None:

/opt/conda/lib/python3.8/site-packages/tornado/ioloop.py in current(instance)
    262         try:
--> 263             loop = asyncio.get_event_loop()
    264         except (RuntimeError, AssertionError):

/opt/conda/lib/python3.8/asyncio/events.py in get_event_loop(self)
    638         if self._local._loop is None:
--> 639             raise RuntimeError('There is no current event loop in thread %r.'
    640                                % threading.current_thread().name)

RuntimeError: There is no current event loop in thread 'Thread-9'.

The above exception was the direct cause of the following exception:

RuntimeError                              Traceback (most recent call last)
/tmp/ipykernel_11802/3916465789.py in <module>
----> 1 dataset_seg_available_train = monai.data.CacheDataset(
      2     data=data_seg_available_train,
      3     transform=transform_seg_available,
      4     cache_num=16
      5 )

/home/jenkins/agent/workspace/Monai-notebooks/MONAI/monai/data/dataset.py in __init__(self, data, transform, cache_num, cache_rate, num_workers, progress, copy_cache)
    699         if self.num_workers is not None:
    700             self.num_workers = max(int(self.num_workers), 1)
--> 701         self._cache: List = self._fill_cache()
    702 
    703     def set_data(self, data: Sequence):

/home/jenkins/agent/workspace/Monai-notebooks/MONAI/monai/data/dataset.py in _fill_cache(self)
    720         with ThreadPool(self.num_workers) as p:
    721             if self.progress and has_tqdm:
--> 722                 return list(
    723                     tqdm(
    724                         p.imap(self._load_cache_item, range(self.cache_num)),

/opt/conda/lib/python3.8/site-packages/tqdm/std.py in __iter__(self)
   1178 
   1179         try:
-> 1180             for obj in iterable:
   1181                 yield obj
   1182                 # Update and possibly print the progressbar.

/opt/conda/lib/python3.8/multiprocessing/pool.py in next(self, timeout)
    866         if success:
    867             return value
--> 868         raise value
    869 
    870     __next__ = next                    # XXX

/opt/conda/lib/python3.8/multiprocessing/pool.py in worker(inqueue, outqueue, initializer, initargs, maxtasks, wrap_exception)
    123         job, i, func, args, kwds = task
    124         try:
--> 125             result = (True, func(*args, **kwds))
    126         except Exception as e:
    127             if wrap_exception and func is not _helper_reraises_exception:

/home/jenkins/agent/workspace/Monai-notebooks/MONAI/monai/data/dataset.py in _load_cache_item(self, idx)
    740                 break
    741             _xform = deepcopy(_transform) if isinstance(_transform, ThreadUnsafe) else _transform
--> 742             item = apply_transform(_xform, item)
    743         return item
    744 

/home/jenkins/agent/workspace/Monai-notebooks/MONAI/monai/transforms/transform.py in apply_transform(transform, data, map_items, unpack_items)
    104             else:
    105                 _log_stats(data=data)
--> 106         raise RuntimeError(f"applying transform {transform}") from e
    107 
    108 

RuntimeError: applying transform <monai.transforms.io.dictionary.LoadImaged object at 0x7f610d679ee0>

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions