Is portsdb/portupgrade broken?

Matthew Seaman m.seaman at
Sun Nov 7 18:10:25 GMT 2004

Content-Type: text/plain; charset=us-ascii
Content-Disposition: inline
Content-Transfer-Encoding: quoted-printable

On Sun, Nov 07, 2004 at 04:53:43PM +0000, Michael Abbott wrote:
> Recently I am unable to use portupgrade: there seems to be some problem=
> with the ports index building step which regularly core dumps:
> $ sudo portsdb -fu
> [Updating the portsdb <format:bdb1_btree> in /usr/ports ... - 11910 port=
> entries found=20
> .........1000.........2000.........3000.........4000.........5000........=
> [BUG] Segmentation fault
> ruby 1.8.2 (2004-07-29) [i386-freebsd4]
> Abort trap (core dumped)
> $
> I have tried manually deinstalling ruby and portupgrade and reinstalling=
> directly for ports, but this doesn't seem to have made any difference.=20
> Here are the versions I have:
> $ pkg_info -I 'ruby*' 'port*'
> portaudit-0.5.9     Checks installed ports against a list of security=20
> vulnerabi
> portupgrade-20040701_3 FreeBSD ports/packages administration and manageme=
> tool s
> ruby-1.8.2.p2_1     An object-oriented interpreted scripting language
> ruby18-bdb1-0.2.2   Ruby interface to Berkeley DB revision 1.8x with full=
> featu
> $
> I'm pretty up to date with my ports tree, and I've tried several times=20
> this weekend, so if it is a problem with the ports tree it seems pretty=
> persistent.  Running `portsdb -U` seems to be fine (though very slow).
> Any ideas for investigating any further?

It's a well known problem -- search the FreeBSD mailing lists for
large amounts of discussion of this very subject.

The bug is in the base system, not the ports.  It's a problem with the
BerkeleyDB 1.65 Btree format.  The fix is here:

That has been applied to RELENG_4, RELENG_5 (before the creation of
the RELENG_5_3 branch) and HEAD.  So update to 4.10-STABLE,
5.3-STABLE, 5.3-RELEASE or 6-CURRENT and the problem will be fixed.

Alternately, set:

    % setenv PORTS_DBDRIVER bdb1_hash


    ENV['PORTS_DBDRIVER'] =3D 'bdb1_hash'

in /usr/local/etc/pkgtools.conf

There are a number of different choices instead of 'bdb1_hash', and
there's also the PKG_DBDRIVER variable you might want to set at the
same time.  Google if you want more detail.



Dr Matthew J Seaman MA, D.Phil.                       26 The Paddocks
                                                      Savill Way
PGP:         Marlow
Tel: +44 1628 476614                                  Bucks., SL7 1TH UK

Content-Type: application/pgp-signature
Content-Disposition: inline

Version: GnuPG v1.2.6 (FreeBSD)



More information about the Ukfreebsd mailing list