ArchiveTraceWorker ignores some errors
Description
ArchiveTraceWorker
ignores some errors and sometimes leaves builds in a non-fully-archived state. This is a problem because ArchiveTracesCronWorker
iterates through the output of Ci::Build.with_stale_live_trace
scope going through the non-archived build logs in sequence.
When a trace can not be migrated, for example because a build.job_artifacts_trace
is present already even though the build trace chunks have not been removed, it creates contention in the ArchiveTracesCronWorker
. Builds logs that have never been archived fully are not removed from the list of build-logs-to-be-archived.
Edited by Grzegorz Bizon