On Mon, Sep 21, 2020 at 9:55 AM Miro HronĨok <mhroncok(a)redhat.com> wrote:
On 21. 09. 20 15:40, Mark Wielaard wrote:
> Hi,
>
> I couldn't build elfutils because of an annobin bug that showed up on
> ppc64le. Nick was nice enough to fix it and push a new annobin version:
>
https://bodhi.fedoraproject.org/updates/FEDORA-2020-c78fce452e
> So I could build elfutils again:
>
https://bodhi.fedoraproject.org/updates/FEDORA-2020-06dafb46c1
> But now I am getting notices about the ELN build failures:
>
https://koji.fedoraproject.org/koji/buildinfo?buildID=1613859
> Which is clearly because it doesn't have the new annobin package.
In this case, the build fails, which is the better outcome.
However recently, I've rebuild redhat-rpm-config with this change:
https://src.fedoraproject.org/rpms/redhat-rpm-config/c/0d621460
And later I've built python3.9 with the new macro to actually deliver the change.
In order to make it work, I've run:
$ koji wait-repo f34-build --build=redhat-rpm-config-172-1.fc34
$ koji wait-repo eln-build --build=redhat-rpm-config-172-1.eln103
before building python3.9 in rawhide.
But I wondered: In case I would have not run the ELN waitrepo, would ELN
possibly rebuild python3.9 before the new redhat-rpm-config was available in the
ELN buildroot?
Yes, this race is possible if the time it takes ELN to complete the
rebuild of the first package is longer than the time it takes the
second package to build and then also trigger the ELN build. It's
unlikely to occur often, but it is a possibility. I'm not sure how to
avoid it since without a side-tag we can't know which builds might be
dependent on one another.
For those grouped builds that use a side-tag, we're going to be
monitoring those and rebuilding them in the same order as they are
submitted. We can also add a waitrepo to our behavior to ensure that
we don't start newer builds before the prior ones succeed.
Thanks for bringing this up!