From c69722616840be627981ebc7e77c986c246d9f8d Mon Sep 17 00:00:00 2001 From: Paul Eggleton Date: Mon, 4 Sep 2017 14:00:31 +1200 Subject: 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 Signed-off-by: Richard Purdie --- bitbake/lib/bb/command.py | 3 +++ bitbake/lib/bb/cooker.py | 2 ++ 2 files changed, 5 insertions(+) (limited to 'bitbake') 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: self.currentAsyncCommand = None self.cooker.finishcommand() + def reset(self): + self.remotedatastores = bb.remotedata.RemoteDatastores(self.cooker) + def split_mc_pn(pn): if pn.startswith("multiconfig:"): _, 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: def clientComplete(self): """Called when the client is done using the server""" self.finishcommand() + self.extraconfigdata = {} + self.command.reset() self.databuilder.reset() self.data = self.databuilder.data -- cgit v1.2.3-54-g00ecf