aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorRichard Purdie <richard.purdie@linuxfoundation.org>2021-10-26 22:06:47 +0800
committerRichard Purdie <richard.purdie@linuxfoundation.org>2021-10-26 23:27:11 +0100
commit692fa35f4c23722f3179502cb965960cc230e709 (patch)
tree1e1f0e7e37e97c5dbb933e581bca11d4643900dd
parent36b1b4c4fcee9dde628c7113203939730ab12ae5 (diff)
downloadbitbake-692fa35f4c23722f3179502cb965960cc230e709.tar.gz
bitbake-worker: Add debug when unpickle fails
We occasionally see bitbake-worker failing and from the logs, an unpickle error occurs. Add more debug so we can further debug this next time it fails. [YOCTO #14595] Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org> (cherry picked from commit fe8105cc06beca8240b76ea366a1eff5aa9c5412) Signed-off-by: Anuj Mittal <anuj.mittal@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
-rwxr-xr-xbin/bitbake-worker6
1 files changed, 5 insertions, 1 deletions
diff --git a/bin/bitbake-worker b/bin/bitbake-worker
index 6a12e1fed..7fde68876 100755
--- a/bin/bitbake-worker
+++ b/bin/bitbake-worker
@@ -417,7 +417,11 @@ class BitbakeWorker(object):
if self.queue.startswith(b"<" + item + b">"):
index = self.queue.find(b"</" + item + b">")
while index != -1:
- func(self.queue[(len(item) + 2):index])
+ try:
+ func(self.queue[(len(item) + 2):index])
+ except pickle.UnpicklingError:
+ workerlog_write("Unable to unpickle data: %s\n" % ":".join("{:02x}".format(c) for c in self.queue))
+ raise
self.queue = self.queue[(index + len(item) + 3):]
index = self.queue.find(b"</" + item + b">")