Skip site navigation (1)Skip section navigation (2)
Date:      Mon, 08 Jul 2002 02:29:27 -0700
From:      Terry Lambert <tlambert2@mindspring.com>
To:        Doug Barton <DougB@FreeBSD.org>
Cc:        Dag-Erling Smorgrav <des@ofug.org>, Dan Moschuk <dan@FreeBSD.org>, arch@FreeBSD.org
Subject:   Re: Package system flaws?
Message-ID:  <3D295B77.E62ED5FC@mindspring.com>
References:  <20020707233525.U2247-100000@master.gorean.org>

next in thread | previous in thread | raw e-mail | index | archive | help
Doug Barton wrote:
> On Sun, 7 Jul 2002, Terry Lambert wrote:
> > Doug Barton wrote:
> > > On Sun, 7 Jul 2002, Terry Lambert wrote:
> > > > > We want to be able to install a package from a non-rewindable source
> > > > > without storing a temporary copy on disk.  This means the metadata
> > > > > must without fail be at the very beginning of the package.
> > >
> > > Ok, then what about storing the meta data as a seperate file? Why do they
> > > have to be in the same package?
> >
> > For the same reason the fact that root owns /etc/master.passwd is
> > not in a seperate file?
> 
> ENOPARSE

Metadata is metadata.

If it's good to put metadata in a file seperate from the data it
describes, then the judgement of "goodness" is universal.

We store the metadata for individual files in most file systems in
a shared structure which contains both the references to the data
and to the metadata (exceptions are FS's which do not support doing
this intrinsically, e.g. MSDOSFS, or FS's which have to store it
seperately in order to achieve minimal POSIX semantics, e.g. Udo
Walter's "UMSDOSFS" under Linux).

We do this because it makes the data and metadata non-severable,
it relieves us of having to consider synchronization issues which
would otherwise arise, and we do it because it's convenient in
terms of speed of operations involving both, and convenient in
terms of locality of reference.  It also gets rid of the implied
graph edge for locking of data and metadata, which can lead to an
undetectable deadly embrace deadlock .

All of these arguments apply equally well to bundling package
metadata with package data: conceptually, that metadata is no
different than file ownership, flags, or permissions.

-- Terry

To Unsubscribe: send mail to majordomo@FreeBSD.org
with "unsubscribe freebsd-arch" in the body of the message




Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?3D295B77.E62ED5FC>