Ok, so https://review.openstack.org/#/c/192942/ is a WIP of this.

Seems to mostly work, just need to tweak a few more engine unit tests...

-Josh

Dulko, Michal wrote:

-----Original Message-----
From: Joshua Harlow [mailto:harlo...@outlook.com]
Sent: Tuesday, June 16, 2015 4:52 PM
To: OpenStack Development Mailing List (not for usage questions)
Subject: Re: [openstack-dev] [taskflow] Returning information from reverted
flow

Dulko, Michal wrote:
-----Original Message-----
From: Joshua Harlow [mailto:harlo...@outlook.com]
Sent: Friday, June 12, 2015 5:49 PM
To: OpenStack Development Mailing List (not for usage questions)
Subject: Re: [openstack-dev] [taskflow] Returning information from
reverted flow

Dulko, Michal wrote:
Hi,

In Cinder we had merged a complicated piece of code[1] to be able to
return something from flow that was reverted. Basically outside we
needed an information if volume was rescheduled or not. Right now
this is done by injecting information needed into exception thrown
from the flow. Another idea was to use notifications mechanism of
TaskFlow.
Both ways are rather workarounds than real solutions.
Unsure about notifications being a workaround (basically u are
notifying to some other entities that rescheduling happened, which
seems like exactly what it was made for) but I get the point ;)
Please take a look at this review -
https://review.openstack.org/#/c/185545/. Notifications cannot help if some
further revert decision needs to be based on something that happened
earlier.

That sounds like conditional reverting, which seems like it should be handled
differently anyway, or am I misunderstanding something?

Current version of the patch takes another approach which I think handles it 
correctly. So you were probably right. :)

I wonder if TaskFlow couldn't provide a mechanism to mark stored
element to not be removed when revert occurs. Or maybe another way
of returning something from reverted flow?

Any thoughts/ideas?
I have a couple, I'll make some paste(s) and see what people think,

How would this look (as pseudo-code or other) to you, what would be
your ideal, and maybe we can work from there (maybe u could do some
paste(s) to and we can prototype it), just storing information that
is returned from revert() somewhere? Or something else? There has
been talk about task 'local storage' (or something like that/along
those lines) that could also be used for this similar purpose.
I think that the easiest idea from the perspective of an end user would be
to save items returned from revert into flow engine's storage *and* do not
remove it from storage when whole flow gets reverted. This is completely
backward compatible, because currently revert doesn't return anything. And
if revert has to record some information for further processing - this will also
work.
Ok, let me see what this looks like and maybe I can have a POC in the next
few days, I don't think its impossible to do (obviously) and hopefully will be
useful for this.

Great!
[1] https://review.openstack.org/#/c/154920/


__________________________________________________________
________________
OpenStack Development Mailing List (not for usage questions)
Unsubscribe: OpenStack-dev-
requ...@lists.openstack.org?subject:unsubscribe
http://lists.openstack.org/cgi-bin/mailman/listinfo/openstack-dev
__________________________________________________________
________________
OpenStack Development Mailing List (not for usage questions)
Unsubscribe: OpenStack-dev-
requ...@lists.openstack.org?subject:unsubscribe
http://lists.openstack.org/cgi-bin/mailman/listinfo/openstack-dev

__________________________________________________________
____________
____ OpenStack Development Mailing List (not for usage questions)
Unsubscribe:
openstack-dev-requ...@lists.openstack.org?subject:unsubscribe
http://lists.openstack.org/cgi-bin/mailman/listinfo/openstack-dev
__________________________________________________________
________________
OpenStack Development Mailing List (not for usage questions)
Unsubscribe: OpenStack-dev-
requ...@lists.openstack.org?subject:unsubscribe
http://lists.openstack.org/cgi-bin/mailman/listinfo/openstack-dev

__________________________________________________________________________
OpenStack Development Mailing List (not for usage questions)
Unsubscribe: openstack-dev-requ...@lists.openstack.org?subject:unsubscribe
http://lists.openstack.org/cgi-bin/mailman/listinfo/openstack-dev

__________________________________________________________________________
OpenStack Development Mailing List (not for usage questions)
Unsubscribe: openstack-dev-requ...@lists.openstack.org?subject:unsubscribe
http://lists.openstack.org/cgi-bin/mailman/listinfo/openstack-dev

Reply via email to