How did upgrading applications happen before portupgrade etc?

Matthew D. Fuller fullermd at over-yonder.net
Sat Aug 11 03:42:31 PDT 2007


On Sat, Aug 11, 2007 at 01:33:57AM -0700 I heard the voice of
Jeremy Chadwick, and lo! it spake thus:
> 
> I'm one of those administrators who does not want something like
> portupgrade on his systems; I do not believe in having two separate
> databases maintaining dependencies and what's installed (portupgrade
> vs. base system pkg_* tools).  Lots of people love portupgrade, and
> that's great.  But the number of times I have seen reports of
> database corruption or "database sync mismatches" (portupgrade
> thinks A, while pkg_* thinks B) is astounding.

I'm always a little surprised at statements like this...

portupgrade manages all the regular /var/db/pkg/*/* files just like
any other tool.  It's got its db files, sure, but they're caches, not
alternate masters.  I've never seen a "sync mismatch" (or rather, I
see them all the time, when portupgrade sees that the source is newer
than its cache and updates the cache).

I've seen them go wonky a time or two when I've upgrade bdb or
ruby-bdb, but so what?  You blow 'em away and recreate them.  I blow
'em away every time I upgrade ruby or ruby-bdb or bdb just out of GP
to head off potential troubles.  With the growing number of installed
ports, rebuilding the pkgdb.db files takes a "long" time, but it's
what, a minute?  Minute and a half?

There are certainly reasons to dislike portupgrade (like that it's
slow.  Godawful long.  Where's-War-And-Peace-I-need-something-to-read
slow.  It's almost as slow as yum is on a machine twice as fast), but
I don't understand this one.  The db's dont go wonky with any notable
regularity IME, and when they do you just rm 'em and move on.  What's
the big deal?


-- 
Matthew Fuller     (MF4839)   |  fullermd at over-yonder.net
Systems/Network Administrator |  http://www.over-yonder.net/~fullermd/
           On the Internet, nobody can hear you scream.


More information about the freebsd-ports mailing list