On 17/05/26 15:08, Johannes Schauer Marin Rodrigues wrote:
Hi,

Quoting Gioele Barabucci (2026-05-17 14:14:51)
* The only solution to this problem is that 1) all buildd chroots must be
updated at the same time, and 2) all binNMU must run inside the same dinstall
window. Otherwise there will always be the risk of package version skew and
M-A issues.

synchronizing start times to the dinstall window is not sufficient. buildds use
https://incoming.debian.org/debian-buildd as an additional mirror. Depending on
how fast the same package builds on each architecture, that mirror frequently
carries different package versions for different architectures.

Someone on IRC (sorry, I forgot who) suggested that all binNMU could run using a snapshot of the archive at the time the binNMU has been requested (à la debrebuild). This would in fact simulate having all binNMUs running inside the same dinstall window.

So one possible solution would be:

* All buildd chroots are generated at the same time and are ensured to have no version skew.

* A mechanism ensures that the "request time" for a set of binNMUs is recorded and passed to all arch-specific buildds.

* The dependencies of binNMUs are not fetched from the normal archive, but from a snapshot of the archive taken when the binNMUs are requested.

* The snapshot does not only take the normal archive into account, but also incoming.d.o. (Is this already the case?)

Unfortunately, automating all this requires extra infrastructural code that does not exist, IIUC.

Regards,

--
Gioele Barabucci

Reply via email to