container based tests can fail with "RecursionError: maximum recursion depth exceeded in comparison"
Affects | Status | Importance | Assigned to | Milestone | |
---|---|---|---|---|---|
Auto Package Testing |
New
|
Undecided
|
Unassigned |
Bug Description
I think this is probably a bug in autopkgtest rather than -cloud.
Seems to happen when the controller machine has trouble talking to the instance via the lxd remote, the tests fail like:
Traceback (most recent call last):
File "/home/
command()
File "/home/
r = f(c, ce)
File "/home/
caller.
File "/home/
wait_booted()
File "/home/
VirtSubproc
File "/home/
stdout=stdout, stderr=
File "/home/
(out, err) = sp.communicate(
File "/usr/lib/
stderr = self.stderr.read()
File "/home/
raise Timeout()
VirtSubproc.Timeout
autopkgtest [00:27:06]: ERROR: unexpected error:
Traceback (most recent call last):
File "/home/
self.
BrokenPipeError: [Errno 32] Broken pipe
During handling of the above exception, another exception occurred:
Traceback (most recent call last):
File "/home/
self.
BrokenPipeError: [Errno 32] Broken pipe
During handling of the above exception, another exception occurred:
Traceback (most recent call last):
File "/home/
self.
BrokenPipeError: [Errno 32] Broken pipe
During handling of the above exception, another exception occurred:
Traceback (most recent call last):
File "/home/
self.
BrokenPipeError: [Errno 32] Broken pipe
During handling of the above exception, another exception occurred:
Traceback (most recent call last):
File "/home/
testbed.open()
File "/home/
self.
File "/home/
self.
File "/home/
self.reboot()
File "/home/
self.
File "/home/
ll = self.expect('ok', nresults)
File "/home/
self.
and then this repeats until we hit the RecursionError. We should fail cleanly.
Then we return an "unknown" result, which is annoying because they need to be retried. For that case I'll add a string to the worker to get them retried at least. Then we get three attempts before tests die with this - and if that happens then the remote is probably in trouble.