pkgsrc-Users archive

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]

Re: pkg_rolling-replace often gets into infinite loops for me

On Wed, 4 Feb 2009, Greg Troxel wrote:

Hisashi T Fujinaka <> writes:

I've been trying to use pkg_rolling-replace to rebuild ALL my packages
when I update my NetBSD kernel version. Unfortunately, this always puts
pkg_rolling-replace into an infinite rebuilding loop. This time it's
rebuilding spamass-milter over and over. At other times it's been other
packages. What I did was:

pkg_info -e \*|xargs -n 1 sudo pkg_admin set rebuild=YES
sudo pkg_rolling-replace -suv

I asked on irc how to resolve this loop and their suggestion was to
hit ^C and then silence.

I've had this problem when rebuilding after another quarterly release
comes out, so it's not just my odd use of pkg_admin that triggers this.

Any help here?

I have seen this occasionally but thought it was fixed.  Obviously make
sure you have the latest pkg_rr.

The logic in pkg_rr is not that complicated, but there's way too much
awk etc. involved.  I recommend that you run it with set -x and see what
happens and trace the shell code.  I could certainly believe there is
another bug.

BTW you don't need really -s or -u if you have set rebuild=YES on
everything, but it shouldn't hurt.  Basically the logic is to OR the set
of rebuild-requested, unsafe, and mismatched packages.  Then when the
rebuild succeeds the package should be removed from the mismatched set,
and the other two regenerated.  'make replace' is supposed to clear
rebuild and unsafe_depends{,_strict} tags.

Ah. I should have looked to see what it was written in, and done some
tracing already.

I'm not sure what it's doing, but it looks at all the installed packages
and compares them to the rebuild list? Then it tries to rebuild the
packages that aren't on the rebuild list?

I can send you the log I captured if you'd like. It's 1.1M but the
interesting bits are towards the end, I'm sure.

Hisashi T Fujinaka -
BSEE(6/86) + BSChem(3/95) + BAEnglish(8/95) + MSCS(8/03) + $2.50 = latte

Home | Main Index | Thread Index | Old Index