Skip to content

Catch 'resource unavailable' errors #38

Open
@annawoodard

Description

@annawoodard

We should raise the exception here, so that it does not get obfuscated by the UnboundLocalError due to not having the PID we asked for.

(parsl_py36) [midway001] ~/parsl/parsl/tests >nosetests -xv test_flowcontrol.test_python
Failure: UnboundLocalError (local variable 'pid' referenced before assignment) ... ERROR

======================================================================
ERROR: Failure: UnboundLocalError (local variable 'pid' referenced before assignment)
----------------------------------------------------------------------
Traceback (most recent call last):
  File "/home/annawoodard/.conda/envs/parsl_py36/lib/python3.6/site-packages/nose/failure.py", line 39, in runTest
    raise self.exc_val.with_traceback(self.tb)
  File "/home/annawoodard/.conda/envs/parsl_py36/lib/python3.6/site-packages/nose/loader.py", line 418, in loadTestsFromName
    addr.filename, addr.module)
  File "/home/annawoodard/.conda/envs/parsl_py36/lib/python3.6/site-packages/nose/importer.py", line 47, in importFromPath
    return self.importFromDir(dir_path, fqname)
  File "/home/annawoodard/.conda/envs/parsl_py36/lib/python3.6/site-packages/nose/importer.py", line 94, in importFromDir
    mod = load_module(part_fqname, fh, filename, desc)
  File "/home/annawoodard/.conda/envs/parsl_py36/lib/python3.6/imp.py", line 235, in load_module
    return load_source(name, filename, file)
  File "/home/annawoodard/.conda/envs/parsl_py36/lib/python3.6/imp.py", line 172, in load_source
    module = _load(spec)
  File "<frozen importlib._bootstrap>", line 684, in _load
  File "<frozen importlib._bootstrap>", line 665, in _load_unlocked
  File "<frozen importlib._bootstrap_external>", line 678, in exec_module
  File "<frozen importlib._bootstrap>", line 219, in _call_with_frames_removed
  File "/home/annawoodard/parsl/parsl/tests/test_flowcontrol/test_python.py", line 11, in <module>
    dfk = DataFlowKernel(config=localIPP)
  File "/home/annawoodard/parsl/parsl/dataflow/dflow.py", line 102, in __init__
    self.executors = epf.make(self.rundir, self._config)
  File "/home/annawoodard/parsl/parsl/execution_provider/provider_factory.py", line 127, in make
    config=site)
  File "/home/annawoodard/parsl/parsl/executors/ipp.py", line 135, in __init__
    raise e
  File "/home/annawoodard/parsl/parsl/executors/ipp.py", line 126, in __init__
    eng = self.execution_provider.submit(self.launch_cmd, 1)
  File "/home/annawoodard/libsubmit/libsubmit/providers/local/local.py", line 222, in submit
    3)
  File "/home/annawoodard/libsubmit/libsubmit/exec_utils.py", line 66, in execute_no_wait
    return pid, proc
UnboundLocalError: local variable 'pid' referenced before assignment
-------------------- >> begin captured logging << --------------------
parsl.dataflow.rundirs: DEBUG: Parsl run initializing in rundir:./runinfo/008
parsl.dataflow.dflow: INFO: Parsl version: 0.5.0a0
parsl.dataflow.dflow: INFO: Libsubmit version: 0.3.2
parsl.dataflow.config_defaults: DEBUG: { 'controller': {'mode': 'auto'},
  'globals': { 'appCache': True,
               'checkpoint': None,
               'checkpointFiles': None,
               'checkpointPeriod': None,
               'lazyErrors': True,
               'strategy': 'simple',
               'usageTracking': True},
  'sites': [ { 'auth': {'channel': None},
               'execution': { 'block': { 'initBlocks': 4,
                                         'maxBlocks': 10,
                                         'minBlocks': 0,
                                         'nodes': 1,
                                         'options': {},
                                         'parallelism': 0.75,
                                         'taskBlocks': 4,
                                         'walltime': '00:20:00'},
                              'executor': 'ipp',
                              'provider': 'local',
                              'scriptDir': '/home/annawoodard/parsl/parsl/tests/runinfo/008'},
               'site': 'Local_IPP'}]}
parsl.dataflow.usage_tracking.usage: DEBUG: Tracking status: True
parsl.dataflow.usage_tracking.usage: DEBUG: Testing mode   : True
parsl.dataflow.memoization: INFO: App caching initialized
parsl.execution_provider.provider_factory: DEBUG: Constructing site : Local_IPP
parsl.execution_provider.provider_factory: DEBUG: Created channel : None
parsl.execution_provider.provider_factory: DEBUG: Created execution_provider : <Local Execution Provider for site:Local_IPP>
parsl.execution_provider.provider_factory: DEBUG: Starting controller
parsl.executors.ipp_controller: DEBUG: Starting ipcontroller, baseDir:/home/annawoodard/parsl/parsl/tests/runinfo/008
parsl.executors.ipp_controller: DEBUG: Start opts: ['ipcontroller', '--ipython-dir=/home/annawoodard/parsl/parsl/tests/runinfo/008', '--ip=*', '--profile=Local_IPP', '', '', '']
parsl.execution_provider.provider_factory: DEBUG: Controller engine file : /home/annawoodard/parsl/parsl/tests/runinfo/008/profile_Local_IPP/security/ipcontroller-engine.json
parsl.execution_provider.provider_factory: DEBUG: Controller client file : /home/annawoodard/parsl/parsl/tests/runinfo/008/profile_Local_IPP/security/ipcontroller-client.json
parsl.executors.ipp: DEBUG: Waiting for /home/annawoodard/parsl/parsl/tests/runinfo/008/profile_Local_IPP/security/ipcontroller-client.json
asyncio: DEBUG: Using selector: EpollSelector
parsl.executors.ipp: DEBUG: Starting IpyParallelExecutor with provider:<Local Execution Provider for site:Local_IPP>
libsubmit.exec_utils: WARNING: Execution of command 'bash /home/annawoodard/parsl/parsl/tests/runinfo/008/parsl.auto.1522186791.4580348.sh' failed due to
[Errno 11] Resource temporarily unavailable
parsl.executors.ipp: ERROR: Scaling out failed : local variable 'pid' referenced before assignment
--------------------- >> end captured logging << ---------------------

Metadata

Metadata

Assignees

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