All of lore.kernel.org
 help / color / mirror / Atom feed
* [PATCH 0/2] A couple of signature fixes
@ 2017-09-04  9:03 Paul Eggleton
  2017-09-04  9:03 ` [PATCH 1/2] cooker: clear extra config settings and remote datastores on client disconnect Paul Eggleton
  2017-09-04  9:03 ` [PATCH 2/2] siggen: move reset() definition to base SignatureGenerator class Paul Eggleton
  0 siblings, 2 replies; 4+ messages in thread
From: Paul Eggleton @ 2017-09-04  9:03 UTC (permalink / raw)
  To: bitbake-devel

A fix for taskhash mismatch errors seen with BB_SERVER_TIMEOUT set as
well as a cleanup patch for siggen.py.


The following changes since commit 7234f33a7eb38ad51a8345f6689bc26e29f29f92:

  cooker: Ensure parseConfiguration clears parsecache_valid (2017-09-01 16:59:35 +0100)

are available in the git repository at:

  git://git.openembedded.org/bitbake-contrib paule/sigfixes
  http://cgit.openembedded.org/bitbake-contrib/log/?h=paule/sigfixes

Paul Eggleton (2):
  cooker: clear extra config settings and remote datastores on client
    disconnect
  siggen: move reset() definition to base SignatureGenerator class

 lib/bb/command.py | 3 +++
 lib/bb/cooker.py  | 2 ++
 lib/bb/siggen.py  | 6 ++----
 3 files changed, 7 insertions(+), 4 deletions(-)

-- 
2.9.5



^ permalink raw reply	[flat|nested] 4+ messages in thread

* [PATCH 1/2] cooker: clear extra config settings and remote datastores on client disconnect
  2017-09-04  9:03 [PATCH 0/2] A couple of signature fixes Paul Eggleton
@ 2017-09-04  9:03 ` Paul Eggleton
  2017-09-04 21:42   ` Paul Eggleton
  2017-09-04  9:03 ` [PATCH 2/2] siggen: move reset() definition to base SignatureGenerator class Paul Eggleton
  1 sibling, 1 reply; 4+ messages in thread
From: Paul Eggleton @ 2017-09-04  9:03 UTC (permalink / raw)
  To: bitbake-devel

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.

Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com>
---
 lib/bb/command.py | 3 +++
 lib/bb/cooker.py  | 2 ++
 2 files changed, 5 insertions(+)

diff --git a/lib/bb/command.py b/lib/bb/command.py
index 0d0354c..67cc5ce 100644
--- a/lib/bb/command.py
+++ b/lib/bb/command.py
@@ -145,6 +145,9 @@ class Command:
         self.currentAsyncCommand = None
         self.cooker.finishcommand()
 
+    def reset(self):
+        self.remotedatastores = bb.remotedata.RemoteDatastores(cooker)
+
 def split_mc_pn(pn):
     if pn.startswith("multiconfig:"):
         _, mc, pn = pn.split(":", 2)
diff --git a/lib/bb/cooker.py b/lib/bb/cooker.py
index f5ae831..10cb8be 100644
--- a/lib/bb/cooker.py
+++ b/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
 
-- 
2.9.5



^ permalink raw reply related	[flat|nested] 4+ messages in thread

* [PATCH 2/2] siggen: move reset() definition to base SignatureGenerator class
  2017-09-04  9:03 [PATCH 0/2] A couple of signature fixes Paul Eggleton
  2017-09-04  9:03 ` [PATCH 1/2] cooker: clear extra config settings and remote datastores on client disconnect Paul Eggleton
@ 2017-09-04  9:03 ` Paul Eggleton
  1 sibling, 0 replies; 4+ messages in thread
From: Paul Eggleton @ 2017-09-04  9:03 UTC (permalink / raw)
  To: bitbake-devel

If we're implementing reset() in SignatureGenerator at all (and we need
to for a basic non-OE BitBake setup where that is the default signature
generator), then we need it to be clearing out the internal values
properly.

Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com>
---
 lib/bb/siggen.py | 6 ++----
 1 file changed, 2 insertions(+), 4 deletions(-)

diff --git a/lib/bb/siggen.py b/lib/bb/siggen.py
index 7521a3a..5ef82d7 100644
--- a/lib/bb/siggen.py
+++ b/lib/bb/siggen.py
@@ -70,7 +70,8 @@ class SignatureGenerator(object):
         self.runtaskdeps, self.taskhash, self.file_checksum_values, self.taints, self.basehash = data
 
     def reset(self, data):
-        return
+        self.__init__(data)
+
 
 class SignatureGeneratorBasic(SignatureGenerator):
     """
@@ -97,9 +98,6 @@ class SignatureGeneratorBasic(SignatureGenerator):
         else:
             self.checksum_cache = None
 
-    def reset(self, data):
-        self.__init__(data)
-
     def init_rundepcheck(self, data):
         self.taskwhitelist = data.getVar("BB_HASHTASK_WHITELIST") or None
         if self.taskwhitelist:
-- 
2.9.5



^ permalink raw reply related	[flat|nested] 4+ messages in thread

* Re: [PATCH 1/2] cooker: clear extra config settings and remote datastores on client disconnect
  2017-09-04  9:03 ` [PATCH 1/2] cooker: clear extra config settings and remote datastores on client disconnect Paul Eggleton
@ 2017-09-04 21:42   ` Paul Eggleton
  0 siblings, 0 replies; 4+ messages in thread
From: Paul Eggleton @ 2017-09-04 21:42 UTC (permalink / raw)
  To: bitbake-devel

On Monday, 4 September 2017 9:03:11 PM NZST Paul Eggleton wrote:
> +    def reset(self):
> +        self.remotedatastores = bb.remotedata.RemoteDatastores(cooker)
> +

Oops, that should have been self.cooker - I only noticed when I happened to 
look at bitbake-cookerdaemon.log. I've re-pushed the branch with that fixed.

Cheers,
Paul

-- 

Paul Eggleton
Intel Open Source Technology Centre


^ permalink raw reply	[flat|nested] 4+ messages in thread

end of thread, other threads:[~2017-09-04 21:42 UTC | newest]

Thread overview: 4+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2017-09-04  9:03 [PATCH 0/2] A couple of signature fixes Paul Eggleton
2017-09-04  9:03 ` [PATCH 1/2] cooker: clear extra config settings and remote datastores on client disconnect Paul Eggleton
2017-09-04 21:42   ` Paul Eggleton
2017-09-04  9:03 ` [PATCH 2/2] siggen: move reset() definition to base SignatureGenerator class Paul Eggleton

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.