bitbake-worker failure traceback

Richard Purdie

I saw:

failed and logged in the grab the cookerdaemon log whilst they were still there.
In the log there was the traceback:

Traceback (most recent call last):
File "/home/pokybuild/yocto-worker/qemux86-world-alt/build/bitbake/bin/bitbake-worker", line 513, in <module>
File "/home/pokybuild/yocto-worker/qemux86-world-alt/build/bitbake/bin/bitbake-worker", line 402, in serve
self.handle_item(b"newtaskhashes", self.handle_newtaskhashes)
File "/home/pokybuild/yocto-worker/qemux86-world-alt/build/bitbake/bin/bitbake-worker", line 420, in handle_item
func(self.queue[(len(item) + 2):index])
File "/home/pokybuild/yocto-worker/qemux86-world-alt/build/bitbake/bin/bitbake-worker", line 444, in handle_newtaskhashes
self.workerdata["newhashes"] = pickle.loads(data)
_pickle.UnpicklingError: invalid load key, '\x00'.
invalid load key, '\x00'./home/pokybuild/yocto-worker/qemux86-world-alt/build/bitbake/lib/bb/ ResourceWarning: unclosed file <_io.BufferedWriter name=131>
self.worker = {}

Not sure why that could happen but it is helpful to have the data and we could
maybe improve that exception handling to dump the invalid data so the next time
it happens we get further info.