[Buildd-tools-devel] sbuild --auto-give-back / sbuild<>wanna-build interaction

Michael Banck mbanck at debian.org
Tue Jan 8 23:23:54 UTC 2008


On Tue, Jan 08, 2008 at 09:25:13PM +0000, Roger Leigh wrote:
> > This would fail in case sbuild gets handed more than one package 
> > as then the error code would be useless. This is why i ask on the
> > purpose of the package batching to sbuild.

BTW, the sbuild running on the autobuilders keeps a file
~/build/build-progress wich sort of has the error code (success, failed,
given-back) for the built packages.
 
> > Not hammering at wanna-build makes sense. I was too wondering
> > why listing a wanna-build database with 3 packages takes ages
> > on an R4k 250Mhz I2.
> 
> That's because it is a GDBM database using the horrific MLDBM frontend
> (multi-level-hash in flat file).  The performance is awful, because
> it's basically munging what should be several relations in a proper
> relational database into a single flat file.
> 
> I would like to make the wanna-build data storage backend
> configurable, with at least sqlite and postgres as options in addition
> to the existing GDBM format.  The would allow us to use several
> tables, including storage of the build statistics and fast and easy
> queries with proper joins.  It can even store multiple distributions
> and architectures without much penalty.
> 
> I originally proposed this to Ryan Murray well over five years ago,
> but he strongly disagreed with this.  His rationale was that
> wanna-build/buildd/sbuild should have minimal dependencies in order to
> allow bootstrapping new architectures--which is fair enough.  However,
> there's no reason that the more advanced backends couldn't be
> /optional/ so as to still allow initial bootstrapping with a less
> functional backend.  There's no reason that the rare need to bootstrap
> should hold back the development more powerful, efficient, and
> user-friendly tools.  Given the small number of build-deps for sqlite
> (adds quilt and tcl8.4 only in total), we could probably drop MLDBM
> and provide an upgrade path to sqlite via a GDBM dump and sqlite
> reload.

sqlite seems to use CDBS; I get this when doing apt-get build-dep:

The following NEW packages will be installed:
  autoconf automake automake1.9 autotools-dev cdbs curl debhelper file
gettext html2text intltool-debian libcompress-raw-zlib-perl
libcompress-zlib-perl libcurl3
  libdigest-hmac-perl libdigest-sha1-perl libfile-remove-perl libidn11
libio-compress-base-perl libio-compress-zlib-perl libio-stringy-perl
libkeyutils1 libkrb53
  libltdl3 libltdl3-dev libmagic1 libmail-box-perl libmail-sendmail-perl
libmailtools-perl libmime-types-perl libncurses5-dev
libobject-realize-later-perl
  libreadline5-dev libssh2-1 libssl0.9.8 libtimedate-perl libtool
liburi-perl libuser-identity-perl m4 po-debconf tcl8.4 tcl8.4-dev

Doesn't look very lightweight (that doesn't invalidate your argument
that this should be optional, of course).


cheers,

Michael



More information about the Buildd-tools-devel mailing list