Skip site navigation (1)Skip section navigation (2)
Date:      Mon, 03 Jun 2002 18:24:45 -0700
From:      Terry Lambert <tlambert2@mindspring.com>
To:        Garance A Drosihn <drosih@rpi.edu>
Cc:        Kris Kennaway <kris@obsecurity.org>, arch@FreeBSD.ORG
Subject:   Re: Removing wait union
Message-ID:  <3CFC16DD.240E4AFD@mindspring.com>
References:  <20020602010108.B16166@espresso.q9media.com> <20020603011903.Y2566-100000@gamplex.bde.org> <20020603162508.A34224@xor.obsecurity.org> <3CFC00A9.BD98B7BD@mindspring.com> <p05111722b921be8398e3@[128.113.24.47]>

next in thread | previous in thread | raw e-mail | index | archive | help
Garance A Drosihn wrote:
> At 4:50 PM -0700 6/3/02, Terry Lambert wrote:
> >All the builds could be done in parallel in their own
> >subdirectories (not installed), so the process could be
> >much faster than using the cluster the way the cluser is
> >supposed to be used.
> 
> This implies the building of a second cluster, one that is
> setup for doing these parallel builds.  That sounds like
> it would be more trouble (to setup, and to keep setup)
> than it's worth.  Might as well just use the tools we
> already have.

No, you don't need a cluster.

I think people are not understanding the problem.

The problem is that a change to the system breaks the build
of a package.

What this means is that you should be able to:

1)	Build all the packages on a system
2)	Install everything that wasn't automatically installed as
	a dependency

This gives you a system where all the *port* dependencies of any
randomly selected port are pre-satisfied, so the building can take
place independently from any other port.

It's about getting to the point where the dependencies are presatisfied.

The ports cluster is not about that.  It's all about ensuring that
no dependencies are lost, or implicitly satisfied.


Effectively, you could get very close to a system that could be
used to build all the ports in parallel, in their own directory,
by simply installing all the packages in existance.  You really
don't give a damn that the installed *binaries* of a port on
which you depend for actual operation would end up being different,
too.  So you break the need for dependency order enforcement between
different ports.


In very simple terms:

o	The point of the ports cluster is to make sure that
	dependencies on other ports aren't broken

o	The point of this system would be to make sure that
	dependencies on the system aren't broken

Two very different problems.  The solution of the first needs a
ports cluster to be able to solve it within about 8 hours.  But
the much of that 8 hours is based on dependency ordering that
you can throw away, if you are trying to solve the "system changed"
problem, rather than the "ports changed" problem.

Make sense?

-- 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?3CFC16DD.240E4AFD>