Learn more about these different git repos.
Other Git URLs
Right now, when Koji moves a build to a new volume, it takes the following steps:
There are a couple issues with this.
Between the start of step 3 and the end of step 4, another client inspecting the build will still see the old volume and an incomplete or missing build dir.
This is likely aggravated by the fact that volume moves trigger repo regens. So, if you are moving a lot of related builds to a new volume, you may be ensuring that createrepo tasks are inspecting those builds during your overall move.
We should be able to make this better. Perhaps not atomic, but at least reduce the problem window and mitigate the fallout.
Ideas for addressing this:
I am open to other ideas
Metadata Update from @mikem: - Issue tagged with: discussion
Also, volume moves might not need to trigger repo regens, or at least, not promptly. It might be reasonable to rely on symlinks.
More of an "out there" idea: if every build dir was a symlink, we might be able to change them atomically.
https://unix.stackexchange.com/questions/5093/how-does-one-atomically-change-a-symlink-to-a-directory-in-busybox/6786
(I've no idea how well this will work or if it would work on nfs)
At any rate, this would be a pretty major change.
Login to comment on this ticket.