construct and return a linear flow failed

Bug #1756520 reported by Fabo Yi
8
This bug affects 1 person
Affects Status Importance Assigned to Milestone
taskflow
Incomplete
Undecided
Unassigned

Bug Description

I got the following error when used taskflow(v2.7.0 and v3.1.0) to launch a flow:

2018-02-10 02:13:15.485 13955 DEBUG taskflow.engines.helpers [-] Looking for 'default' engine driver in 'taskflow.engines' load /usr/lib/python2.7/site-packages/taskflow/engines/helpers.py:131
2018-02-10 02:13:15.611 13955 ERROR condor.diagnosis.api [-] Failed to examine api inspection flow.
2018-02-10 02:13:15.611 13955 TRACE condor.diagnosis.api Traceback (most recent call last):
2018-02-10 02:13:15.611 13955 TRACE condor.diagnosis.api File "/usr/local/autoop_services/condor/diagnosis/api.py", line 159, in create
2018-02-10 02:13:15.611 13955 TRACE condor.diagnosis.api create_what)
2018-02-10 02:13:15.611 13955 TRACE condor.diagnosis.api File "/usr/local/autoop_services/condor/diagnosis/flows/api/examine_system.py", line 241, in get_flow
2018-02-10 02:13:15.611 13955 TRACE condor.diagnosis.api return taskflow.engines.load(api_flow, store=create_what)
2018-02-10 02:13:15.611 13955 TRACE condor.diagnosis.api File "/usr/lib/python2.7/site-packages/taskflow/engines/helpers.py", line 142, in load
2018-02-10 02:13:15.611 13955 TRACE condor.diagnosis.api engine.storage.inject(store)
2018-02-10 02:13:15.611 13955 TRACE condor.diagnosis.api File "/usr/lib/python2.7/site-packages/taskflow/utils/misc.py", line 405, in __get__
2018-02-10 02:13:15.611 13955 TRACE condor.diagnosis.api value = self._fget(instance)
2018-02-10 02:13:15.611 13955 TRACE condor.diagnosis.api File "/usr/lib/python2.7/site-packages/taskflow/engines/action_engine/engine.py", line 234, in storage
2018-02-10 02:13:15.611 13955 TRACE condor.diagnosis.api scope_fetcher=_scope_fetcher)
2018-02-10 02:13:15.611 13955 TRACE condor.diagnosis.api File "/usr/lib/python2.7/site-packages/taskflow/storage.py", line 331, in __init__
2018-02-10 02:13:15.611 13955 TRACE condor.diagnosis.api self.injector_name, expected_type=models.TaskDetail)
2018-02-10 02:13:15.611 13955 TRACE condor.diagnosis.api File "/usr/lib/python2.7/site-packages/taskflow/storage.py", line 471, in _atomdetail_by_name
2018-02-10 02:13:15.611 13955 TRACE condor.diagnosis.api "Unknown atom name '%s'" % atom_name)
2018-02-10 02:13:15.611 13955 TRACE condor.diagnosis.api File "/usr/lib/python2.7/site-packages/taskflow/exceptions.py", line 52, in raise_with_cause
2018-02-10 02:13:15.611 13955 TRACE condor.diagnosis.api excutils.raise_with_cause(exc_cls, message, *args, **kwargs)
2018-02-10 02:13:15.611 13955 TRACE condor.diagnosis.api File "/usr/lib/python2.7/site-packages/oslo_utils/excutils.py", line 143, in raise_with_cause
2018-02-10 02:13:15.611 13955 TRACE condor.diagnosis.api six.raise_from(exc_cls(message, *args, **kwargs), kwargs.get('cause'))
2018-02-10 02:13:15.611 13955 TRACE condor.diagnosis.api AttributeError: 'module' object has no attribute 'raise_from'

I have checked whether there exist six.raise_from function in the /usr/lib/python2.7/site-packages/six.py :
[root@yczc5 ~]# python
Python 2.7.5 (default, Nov 6 2016, 00:28:07)
[GCC 4.8.5 20150623 (Red Hat 4.8.5-11)] on linux2
Type "help", "copyright", "credits" or "license" for more information.
>>> from six import raise_from
>>> print raise_from.__name__
raise_from

After added the 'from six import raise_from' statement at the top of my file, this error doesn't occur, so I think the six library may be incorrectly loaded when taskflow raises an exception

Fabo Yi (folkart)
description: updated
Fabo Yi (folkart)
Changed in taskflow:
assignee: nobody → Fabo Yi (folkart)
Fabo Yi (folkart)
Changed in taskflow:
assignee: Fabo Yi (folkart) → nobody
Revision history for this message
Ben Nemec (bnemec) wrote :

It looks like this may have been related to eventlet vendoring six. That was removed in https://github.com/eventlet/eventlet/commit/53b63c66f0d9a7d6ba9182a207529ebd949e95f3 so it may not be a problem in newer versions of eventlet. Would you be able to verify that this is fixed by eventlet 0.24.1?

Changed in taskflow:
status: New → Incomplete
To post a comment you must log in.
This report contains Public information  
Everyone can see this information.

Other bug subscribers

Remote bug watches

Bug watches keep track of this bug in other bug trackers.