diff options
author | Paul Eggleton <paul.eggleton@linux.intel.com> | 2017-09-04 14:00:31 +1200 |
---|---|---|
committer | Richard Purdie <richard.purdie@linuxfoundation.org> | 2017-09-05 15:00:49 +0100 |
commit | c69722616840be627981ebc7e77c986c246d9f8d (patch) | |
tree | e35aad24aa21fbe287819e17cf29781267bdbb57 /bitbake/lib/bb | |
parent | 2b2606003bf4a952cb4b0ab7163e34e836481a01 (diff) | |
download | poky-c69722616840be627981ebc7e77c986c246d9f8d.tar.gz |
bitbake: cooker: clear extra config settings and remote datastores on client disconnect
When the UI disconnects, we can throw away any server-side remote
datastores we created in response to calls from the UI, and we *must*
drop everything in extraconfigdata or it will taint any future
operations.
Dropping extraconfigdata upon disconnect fixes taskhash mismatch errors
when running devtool.DevtoolTests.test_devtool_update_recipe_local_files
within oe-selftest with BB_SERVER_TIMEOUT=100 in OpenEmbedded.
(Bitbake rev: 1ca2eec459424892391f060442ef38cf28d6a54a)
Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Diffstat (limited to 'bitbake/lib/bb')
-rw-r--r-- | bitbake/lib/bb/command.py | 3 | ||||
-rw-r--r-- | bitbake/lib/bb/cooker.py | 2 |
2 files changed, 5 insertions, 0 deletions
diff --git a/bitbake/lib/bb/command.py b/bitbake/lib/bb/command.py index 0d0354c30f..6c966e3dbc 100644 --- a/bitbake/lib/bb/command.py +++ b/bitbake/lib/bb/command.py | |||
@@ -145,6 +145,9 @@ class Command: | |||
145 | self.currentAsyncCommand = None | 145 | self.currentAsyncCommand = None |
146 | self.cooker.finishcommand() | 146 | self.cooker.finishcommand() |
147 | 147 | ||
148 | def reset(self): | ||
149 | self.remotedatastores = bb.remotedata.RemoteDatastores(self.cooker) | ||
150 | |||
148 | def split_mc_pn(pn): | 151 | def split_mc_pn(pn): |
149 | if pn.startswith("multiconfig:"): | 152 | if pn.startswith("multiconfig:"): |
150 | _, mc, pn = pn.split(":", 2) | 153 | _, mc, pn = pn.split(":", 2) |
diff --git a/bitbake/lib/bb/cooker.py b/bitbake/lib/bb/cooker.py index 90de40d649..7d040dcd88 100644 --- a/bitbake/lib/bb/cooker.py +++ b/bitbake/lib/bb/cooker.py | |||
@@ -1616,6 +1616,8 @@ class BBCooker: | |||
1616 | def clientComplete(self): | 1616 | def clientComplete(self): |
1617 | """Called when the client is done using the server""" | 1617 | """Called when the client is done using the server""" |
1618 | self.finishcommand() | 1618 | self.finishcommand() |
1619 | self.extraconfigdata = {} | ||
1620 | self.command.reset() | ||
1619 | self.databuilder.reset() | 1621 | self.databuilder.reset() |
1620 | self.data = self.databuilder.data | 1622 | self.data = self.databuilder.data |
1621 | 1623 | ||