mirror of
https://git.yoctoproject.org/poky
synced 2026-09-14 21:49:33 +02:00
bitbake: runqueue: Catch ValueError from pickle.loads
* exception like this keeps spinning quite quickly generating GBs of logs better to kill it asap and show invalid pickle (Bitbake rev: a69eb4c12c71bba9d742c4e5578f25c388d9f825) Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
This commit is contained in:
committed by
Richard Purdie
parent
f5a344441a
commit
dd43700b5d
@@ -2092,14 +2092,20 @@ class runQueuePipe():
|
|||||||
found = False
|
found = False
|
||||||
index = self.queue.find("</event>")
|
index = self.queue.find("</event>")
|
||||||
while index != -1 and self.queue.startswith("<event>"):
|
while index != -1 and self.queue.startswith("<event>"):
|
||||||
event = pickle.loads(self.queue[7:index])
|
try:
|
||||||
|
event = pickle.loads(self.queue[7:index])
|
||||||
|
except ValueError as e:
|
||||||
|
bb.msg.fatal("RunQueue", "failed load pickle '%s': '%s'" % (e, self.queue[7:index]))
|
||||||
bb.event.fire_from_worker(event, self.d)
|
bb.event.fire_from_worker(event, self.d)
|
||||||
found = True
|
found = True
|
||||||
self.queue = self.queue[index+8:]
|
self.queue = self.queue[index+8:]
|
||||||
index = self.queue.find("</event>")
|
index = self.queue.find("</event>")
|
||||||
index = self.queue.find("</exitcode>")
|
index = self.queue.find("</exitcode>")
|
||||||
while index != -1 and self.queue.startswith("<exitcode>"):
|
while index != -1 and self.queue.startswith("<exitcode>"):
|
||||||
task, status = pickle.loads(self.queue[10:index])
|
try:
|
||||||
|
task, status = pickle.loads(self.queue[10:index])
|
||||||
|
except ValueError as e:
|
||||||
|
bb.msg.fatal("RunQueue", "failed load pickle '%s': '%s'" % (e, self.queue[10:index]))
|
||||||
self.rq.runqueue_process_waitpid(task, status)
|
self.rq.runqueue_process_waitpid(task, status)
|
||||||
found = True
|
found = True
|
||||||
self.queue = self.queue[index+11:]
|
self.queue = self.queue[index+11:]
|
||||||
|
|||||||
Reference in New Issue
Block a user