Control: retitle -1 docker-registry: FLAKY test:
DriverSuite.TestDeleteOnlyDeletesSubpaths
Control: severity -1 important
Thanks for filing this report.
Looking at the test code in
https://sources.debian.org/src/docker-registry/2.8.2%2Bds1-1/registry/storage/driver/testsuites/testsuites.go/#L724-L764
the build log indicates that
the test fail because it failed to perform a write operation. Looking at
past builds, it
seems this very test has failed twice in the past as well, all because
of files being
absent when expected. This case fails for a slightly different reason
"not a file".
The test itself uses a memory-backed storage driver which doesn't
persist anything.
I've given back the build, and it succeeded on a retry. For this reason,
I've downgraded
the severity of this bug. This seems acceptable to me, because those
build failures
don't happen very frequently, but I agree that they are very irritating.
Looking at the test code, I could imagine that this is actually caused
by concurrent
test executions where (potentially) different test execution are
deleting files from
the same "storage backend". I observe this test failure is not specific
to armhf, but
has failed also on longsoon. Both architectures have slower memory
performance than
arm64, amd64, etc. Is this making the race more likely? -- If this
theory is correct,
then avoiding concurrent test executions by adding -parallel to dh_test
in
debian/rules should avoid this problem, at the expense of longer build
times.
I can see two ways how to proceed:
1. upgrade the package from 2.6.2 to a later upstream version 2.8.3
2. disable concurrent test executions.
I'd like to look at 1, first to rule out this hasn't been already fixed
upstream.
If not, we can try 2 and engage in a conversation with upstream to see
if that
theory holds.
Best,
-rt