Control: retitle -1 fetch can fail due to mirror lag
Colin Watson writes ("Bug#935874: dgit: "Push failed, while checking state of
the archive" if previous upload was too recent"):
> Package: dgit
> Version: 9.7
> Severity: normal
>
> I tried to make two uploads of man-db this morning, the second after it
> became clear that the approach I'd taken in the first one wasn't going
> to solve the problem I was trying to solve. The second upload attempt
> failed as follows:
...
> dgit: error: fetch of
> http://ftp.debian.org/debian//pool/main/m/man-db/man-db_2.8.7-2.dsc gave HTTP
> code 404
> ! Push failed, while checking state of the archive.
> ! You can retry the push, after fixing the problem, if you like.
>
> This is because the first upload hasn't yet been fully processed into
> the archive. Of course I can deal with this by just waiting for a few
> hours and trying again, but that isn't ideal.
I worried about this kind of skew problem quite early on, when I was
doing the detailed design. I discovered that the archive tended to
return *two* versions sometimes, and that in all my tests it was
possible to retrieve at least one of them from the mirror I was using.
My design intent was that you ought to get *something*, even if it was
out of date.
Unfortunately it is hard to debug these transient states but I think
what happened here is that the archive db ceased to mention your
previous version, but your mirror didn't have the new version yet.
I'm not sure how to fix this. I guess it must be fairly rare since
this is the first such bug report I have received. Do you think you
did anything unusual that might have increased the odds of such an
occurrence ?
Doing an upload right after the previous one is quite normal. Also
doing "git fetch" right after an upload is extremely common. I think
both of these would carry a risk of such a malfunction.
Thanks,
Ian.