Date: Thu, 29 Dec 2005 19:39:45 +0000 From: Mark Ovens <marko@freebsd.org> To: Colin Percival <cperciva@freebsd.org> Cc: freebsd-questions@freebsd.org, Kent Stewart <kstewart@owt.com>, eoghan <freebsd@redry.net> Subject: Re: pkgdb format Message-ID: <43B43B81.3050109@freebsd.org> In-Reply-To: <43B3F22D.5070601@freebsd.org> References: <F7AA4FC0-B189-408E-9FAC-180917D2CCF8@redry.net> <200512071741.03088.kstewart@owt.com> <43B3EEF9.3010004@freebsd.org> <43B3F22D.5070601@freebsd.org>
next in thread | previous in thread | raw e-mail | index | archive | help
Colin Percival wrote:
> Mark Ovens wrote:
>> After reading this thread, I killed the upgrade, deleted INDEX-6,
>> INDEX-6.db, and pkgdb.db; rebuilt pkgdb.db using `pkgdb -u' and re-ran
>> `portupgrade -af'
>>
>> It started off OK (using dbm_hash) but after a couple of hours it had
>> started continually rebuilding pkgdb.db.
>>
>> Anyone else got any ideas?
>
> I had exactly the same problem during portupgrading after a 5.4->6.0
> base system upgrade until I did a `portupgrade -fR portupgrade`, at
> which point it stopped (and has been fine ever since). I have no idea
> what the problem is or why this would fix it, but you might like to
> try this and see if it helps.
>
Thanks! That seems to have fixed it for me too - it's now using
bdb1_btree consistently :-)
As to why, I'm not sure, but here's what upgrading portupgrade the way
you suggested affects:
/home/mark{101}# portupgrade -fRn portupgrade
[snip]
---> Listing the results (+:done / -:ignored / *:skipped / !:failed)
+ databases/db4 (db4-4.0.14_1,1)
+ lang/perl5.8 (perl-5.8.7_2)
+ lang/ruby18 (ruby-1.8.2_5,1)
+ databases/ruby-bdb (ruby18-bdb4-0.5.7)
+ sysutils/portupgrade (portupgrade-20051204)
---> Packages processed: 5 done, 0 ignored, 0 skipped and 0 failed
I don't know if any of those were actually upgraded or just reinstalled
but databases/ruby-bdb looks like a candidate for being the culprit
since portupgrade uses ruby so, if ruby itself and one or more of it's
dependencies are out of sync it could explain it; i.e. if part of ruby
got upgraded but not another by `portupgrade -af' - although if that is
the case it is puzzling that when I aborted the first run, deleted the
INDEX and pkgdb files that it ran OK for a while - the ports that had
already been upgraded hadn't been downgraded <shrug>
Maybe portupgrade needs to be changed to upgrade itself
upward-recursively first whenever the -a option is used?
Thanks again for your help.
Regards,
Mark
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?43B43B81.3050109>
