<feed xmlns='http://www.w3.org/2005/Atom'>
<title>delta/openstack/taskflow.git/doc, branch 2.2.0</title>
<subtitle>opendev.org: openstack/taskflow.git
</subtitle>
<link rel='alternate' type='text/html' href='http://git.baserock.org/cgit/delta/openstack/taskflow.git/'/>
<entry>
<title>Instead of a multiprocessing queue use sockets via asyncore</title>
<updated>2016-05-24T23:16:56+00:00</updated>
<author>
<name>Joshua Harlow</name>
<email>harlowja@yahoo-inc.com</email>
</author>
<published>2015-11-12T00:33:49+00:00</published>
<link rel='alternate' type='text/html' href='http://git.baserock.org/cgit/delta/openstack/taskflow.git/commit/?id=c5e9cf28df9dda763d146859b1472d8bbcf85665'/>
<id>c5e9cf28df9dda763d146859b1472d8bbcf85665</id>
<content type='text'>
For a local process based executor usage currently to ensure
that task emitted notifications are proxied we use the multi
processing library and use its queue concept. This sadly creates
a proxy process that gets associated, and this proxy process
handles the queue and messages sent to and from it. Instead of
doing this we can instead just create a temporary local socket
using a random socket and have tasks (which are running in
different processes) use that to communicate back any emitted
notifications instead (and we can use the asyncore module to handle
the emitted notifications since it handles the lower level socket
reading, polling and dispatching).

To ensure that the socket created is somewhat secure we use a
similar process as the multi-processing library uses where we
sign all messages with a hmac that uses a one time key that only
the main process and the child process know about (and reject
any messages that do not validate using this key).

Change-Id: Iff9180054bf14495e5667af00ae2fafbdbc23791
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
For a local process based executor usage currently to ensure
that task emitted notifications are proxied we use the multi
processing library and use its queue concept. This sadly creates
a proxy process that gets associated, and this proxy process
handles the queue and messages sent to and from it. Instead of
doing this we can instead just create a temporary local socket
using a random socket and have tasks (which are running in
different processes) use that to communicate back any emitted
notifications instead (and we can use the asyncore module to handle
the emitted notifications since it handles the lower level socket
reading, polling and dispatching).

To ensure that the socket created is somewhat secure we use a
similar process as the multi-processing library uses where we
sign all messages with a hmac that uses a one time key that only
the main process and the child process know about (and reject
any messages that do not validate using this key).

Change-Id: Iff9180054bf14495e5667af00ae2fafbdbc23791
</pre>
</div>
</content>
</entry>
<entry>
<title>Fix documentation related to missing BaseTask class</title>
<updated>2016-05-11T19:27:58+00:00</updated>
<author>
<name>Greg Hill</name>
<email>greg.hill@rackspace.com</email>
</author>
<published>2016-05-10T14:06:27+00:00</published>
<link rel='alternate' type='text/html' href='http://git.baserock.org/cgit/delta/openstack/taskflow.git/commit/?id=5944ccc02087c07069b62a832fa3011d8f102339'/>
<id>5944ccc02087c07069b62a832fa3011d8f102339</id>
<content type='text'>
The docs no longer matched reality.

Change-Id: I9ee98e16fc03489569bbed8355416a73f7bc02ff
Closes-Bug: 1579890
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
The docs no longer matched reality.

Change-Id: I9ee98e16fc03489569bbed8355416a73f7bc02ff
Closes-Bug: 1579890
</pre>
</div>
</content>
</entry>
<entry>
<title>Remove deprecated things for 2.0 release</title>
<updated>2016-05-10T22:26:57+00:00</updated>
<author>
<name>Joshua Harlow</name>
<email>harlowja@yahoo-inc.com</email>
</author>
<published>2015-07-06T22:31:29+00:00</published>
<link rel='alternate' type='text/html' href='http://git.baserock.org/cgit/delta/openstack/taskflow.git/commit/?id=afbfe77a7f7bad87c3e95b4f0c94cab84258a5bb'/>
<id>afbfe77a7f7bad87c3e95b4f0c94cab84258a5bb</id>
<content type='text'>
Change-Id: Id9adbc50bd51adc77ce88f698ad0ea2ee63fc5e2
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Change-Id: Id9adbc50bd51adc77ce88f698ad0ea2ee63fc5e2
</pre>
</div>
</content>
</entry>
<entry>
<title>Merge "Spice up WBE banner and add simple worker __main__ entrypoint"</title>
<updated>2016-04-28T20:39:04+00:00</updated>
<author>
<name>Jenkins</name>
<email>jenkins@review.openstack.org</email>
</author>
<published>2016-04-28T20:39:04+00:00</published>
<link rel='alternate' type='text/html' href='http://git.baserock.org/cgit/delta/openstack/taskflow.git/commit/?id=ea46736b49299e2a755503c9df26029900b762e5'/>
<id>ea46736b49299e2a755503c9df26029900b762e5</id>
<content type='text'>
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
</pre>
</div>
</content>
</entry>
<entry>
<title>Don't set html_last_updated_fmt without git</title>
<updated>2016-04-13T07:21:02+00:00</updated>
<author>
<name>Thomas Bechtold</name>
<email>tbechtold@suse.com</email>
</author>
<published>2016-04-13T07:20:03+00:00</published>
<link rel='alternate' type='text/html' href='http://git.baserock.org/cgit/delta/openstack/taskflow.git/commit/?id=7bcf5082631aa5312fbf0eebdd815a61686b7c3e'/>
<id>7bcf5082631aa5312fbf0eebdd815a61686b7c3e</id>
<content type='text'>
Using a timestamp as value for "html_last_updated_fmt" isn't good
for the reproducible builds initiative from different downstream
distributions because the build result always differs due to the
timestamp in the documentation.
Also when not setting "html_last_updated_fmt", the value can be set
via command line when running "sphinx-build -D".

Change-Id: Ic8912e95e8e298fede1d94c20d3167d1f206df1e
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Using a timestamp as value for "html_last_updated_fmt" isn't good
for the reproducible builds initiative from different downstream
distributions because the build result always differs due to the
timestamp in the documentation.
Also when not setting "html_last_updated_fmt", the value can be set
via command line when running "sphinx-build -D".

Change-Id: Ic8912e95e8e298fede1d94c20d3167d1f206df1e
</pre>
</div>
</content>
</entry>
<entry>
<title>Fallback if git is absent</title>
<updated>2016-03-02T21:29:08+00:00</updated>
<author>
<name>Davanum Srinivas</name>
<email>davanum@gmail.com</email>
</author>
<published>2016-03-02T21:29:05+00:00</published>
<link rel='alternate' type='text/html' href='http://git.baserock.org/cgit/delta/openstack/taskflow.git/commit/?id=a2d4731f9a291efc0f96694618711aaa9f763070'/>
<id>a2d4731f9a291efc0f96694618711aaa9f763070</id>
<content type='text'>
When building packages if git is absent, then we should
fall back to a safe default.

Closes-Bug: #1552251
Change-Id: Ife309625a380cf7d5cc42581ed6d8f9f72b86cd9
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
When building packages if git is absent, then we should
fall back to a safe default.

Closes-Bug: #1552251
Change-Id: Ife309625a380cf7d5cc42581ed6d8f9f72b86cd9
</pre>
</div>
</content>
</entry>
<entry>
<title>Some WBE protocol/executor cleanups</title>
<updated>2016-02-14T19:47:06+00:00</updated>
<author>
<name>Joshua Harlow</name>
<email>harlowja@yahoo-inc.com</email>
</author>
<published>2016-02-05T22:30:09+00:00</published>
<link rel='alternate' type='text/html' href='http://git.baserock.org/cgit/delta/openstack/taskflow.git/commit/?id=1ab60b7e98633379de058bf68697158046ad503a'/>
<id>1ab60b7e98633379de058bf68697158046ad503a</id>
<content type='text'>
Remove some of the usage of @property as none of
these objects are publicly exposed (or have docstrings
on them) to save some space/lines of code that aren't
really adding any benefit.

Use less **kwargs when we know exactly what the keyword
arguments will or will not be. Being explicit makes it
easier to understand these functions (vs not knowing what
the arguments can or can't be).

Removes base worker finder because right now we only
have one implementation (at some point we will have
two) but we can just wait to add a base class until
then.

Change-Id: I7107ff6b77a355b4c5d301948355fb6386605388
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Remove some of the usage of @property as none of
these objects are publicly exposed (or have docstrings
on them) to save some space/lines of code that aren't
really adding any benefit.

Use less **kwargs when we know exactly what the keyword
arguments will or will not be. Being explicit makes it
easier to understand these functions (vs not knowing what
the arguments can or can't be).

Removes base worker finder because right now we only
have one implementation (at some point we will have
two) but we can just wait to add a base class until
then.

Change-Id: I7107ff6b77a355b4c5d301948355fb6386605388
</pre>
</div>
</content>
</entry>
<entry>
<title>Spice up WBE banner and add simple worker __main__ entrypoint</title>
<updated>2016-02-09T00:33:14+00:00</updated>
<author>
<name>Joshua Harlow</name>
<email>harlowja@yahoo-inc.com</email>
</author>
<published>2016-02-06T01:45:34+00:00</published>
<link rel='alternate' type='text/html' href='http://git.baserock.org/cgit/delta/openstack/taskflow.git/commit/?id=3e3efc562bf55a88d5f214d5239319cec5a7c5f6'/>
<id>3e3efc562bf55a88d5f214d5239319cec5a7c5f6</id>
<content type='text'>
Change-Id: Ifdf275a623352aa3e42fbf0aa9a4394b64b54337
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Change-Id: Ifdf275a623352aa3e42fbf0aa9a4394b64b54337
</pre>
</div>
</content>
</entry>
<entry>
<title>Fix for WBE sporadic timeout of tasks</title>
<updated>2016-02-05T22:40:25+00:00</updated>
<author>
<name>Joshua Harlow</name>
<email>harlowja@yahoo-inc.com</email>
</author>
<published>2016-02-05T02:09:24+00:00</published>
<link rel='alternate' type='text/html' href='http://git.baserock.org/cgit/delta/openstack/taskflow.git/commit/?id=cea71f27998cfa911044103fcb8fca79b6989717'/>
<id>cea71f27998cfa911044103fcb8fca79b6989717</id>
<content type='text'>
This fixes the sporadic of tasks that would happen
under certain circumstances. What happened was that
a new worker notification would be sent to a callback
while at the same time a task submission would come in
and there would be a small race period where the task
would insert itself into the requests cache while the
callback was processing.

So to work around this the whole concept of a requests
cache was revamped and now the WBE executor just maintains
its own local dictionary of ongoing requests and accesses
it safely.

During the on_wait function that is periodically called
by kombu the previous expiry of work happens but now any
requests that are pending are matched to any new workers
that may have appeared.

This avoids the race (and ensures that even if a new
worker is found but a submission is in progress that the
duration until that submission happens will only be until
the next on_wait call happens).

Related-Bug: #1431097

Change-Id: I98b0caeedc77ab2f7214847763ae1eb0433d4a78
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
This fixes the sporadic of tasks that would happen
under certain circumstances. What happened was that
a new worker notification would be sent to a callback
while at the same time a task submission would come in
and there would be a small race period where the task
would insert itself into the requests cache while the
callback was processing.

So to work around this the whole concept of a requests
cache was revamped and now the WBE executor just maintains
its own local dictionary of ongoing requests and accesses
it safely.

During the on_wait function that is periodically called
by kombu the previous expiry of work happens but now any
requests that are pending are matched to any new workers
that may have appeared.

This avoids the race (and ensures that even if a new
worker is found but a submission is in progress that the
duration until that submission happens will only be until
the next on_wait call happens).

Related-Bug: #1431097

Change-Id: I98b0caeedc77ab2f7214847763ae1eb0433d4a78
</pre>
</div>
</content>
</entry>
<entry>
<title>Merge "Retrieve the store from flowdetails as well, if it exists"</title>
<updated>2016-01-26T03:12:02+00:00</updated>
<author>
<name>Jenkins</name>
<email>jenkins@review.openstack.org</email>
</author>
<published>2016-01-26T03:12:02+00:00</published>
<link rel='alternate' type='text/html' href='http://git.baserock.org/cgit/delta/openstack/taskflow.git/commit/?id=f9a2d78bd8dd5d5d0698a89474fab14f60ddd77f'/>
<id>f9a2d78bd8dd5d5d0698a89474fab14f60ddd77f</id>
<content type='text'>
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
</pre>
</div>
</content>
</entry>
</feed>
