RPM Community Forums

Mailing List Message of <rpm-devel>

Re: [CVS] RPM: rpm/ CHANGES rpm/rpmdb/ Makefile.am tjfn.c

From: Jeff Johnson <n3npq@mac.com>
Date: Thu 25 Dec 2008 - 23:33:38 CET
Message-id: <C85E0BA7-648C-4833-BC3F-9A6BDE0AEE0F@mac.com>
Perhaps what tjfn.c __IS__ would help. The toy
test proggies that litter rpm cvs are haphazardly
maintained and entirely undocumented.

One of the fundamental design featlets/bugtures is
the fact that the rpmdb does its own join operation,
rather than committing to a database method. The featlet
is that very few methods, basically open/close/get/put/del,
are needed to change what is used by an rpmdb. The bugture
is that too much of the rpmdb implementation stays mired
withing rpm itself, making more sophisticated database queries
essentially impossible.

tjfn.c (Test Join File Name) is an ancient proof-of-concept
to use the existing Berkeley DB join instead. The implementation
has never been completed because everyone finds it more useful
to do same old, same old, forever, rather than actually improving
the implementation.

hth Code been there sine like rpm-3.0.5 iirc, long time anyways.

73 de Jeff

On Dec 25, 2008, at 5:24 PM, Per Řyvind Karlsen wrote:

>  RPM Package Manager, CVS Repository
>  http://rpm5.org/cvs/
>   
> ____________________________________________________________________________
>
>  Server: rpm5.org                         Name:   Per Řyvind Karlsen
>  Root:   /v/rpm/cvs                       Email:  pkarlsen@rpm5.org
>  Module: rpm                              Date:   25-Dec-2008 23:24:38
>  Branch: HEAD                             Handle: 2008122522243700
>
>  Modified files:
>    rpm                     CHANGES
>    rpm/rpmdb               Makefile.am tjfn.c
>
>  Log:
>    rpmdb/tjfn: fix build breakage.
>
>  Summary:
>    Revision    Changes     Path
>    1.2715      +1  -0      rpm/CHANGES
>    1.106       +1  -1      rpm/rpmdb/Makefile.am
>    1.9         +2  -0      rpm/rpmdb/tjfn.c
>   
> ____________________________________________________________________________
>
>  patch -p0 <<'@@ .'
>  Index: rpm/CHANGES
>   
> = 
> = 
> = 
> = 
> = 
> = 
> ======================================================================
>  $ cvs diff -u -r1.2714 -r1.2715 CHANGES
>  --- rpm/CHANGES	25 Dec 2008 22:11:38 -0000	1.2714
>  +++ rpm/CHANGES	25 Dec 2008 22:24:37 -0000	1.2715
>  @@ -1,5 +1,6 @@
>
>   5.2a2 -> 5.2a3:
>  +    - proyvind: rpmdb/tjfn: fix build breakage.
>       - proyvind: lib/tgi: fix build breakage.
>       - proyvind: rpmio/rpmz: merge with recent xz code to work with  
> recent liblzma API
>   	changes.
>  @@ .
>  patch -p0 <<'@@ .'
>  Index: rpm/rpmdb/Makefile.am
>   
> = 
> = 
> = 
> = 
> = 
> = 
> ======================================================================
>  $ cvs diff -u -r1.105 -r1.106 Makefile.am
>  --- rpm/rpmdb/Makefile.am	15 Sep 2008 08:39:11 -0000	1.105
>  +++ rpm/rpmdb/Makefile.am	25 Dec 2008 22:24:37 -0000	1.106
>  @@ -27,7 +27,7 @@
>
>   tjfn_SOURCES = tjfn.c
>   tjfn_LDFLAGS = @LDFLAGS_STATIC@
>  -tjfn_LDADD = librpmdb.la
>  +tjfn_LDADD = $(mylibs)
>
>   pkgincdir = $(pkgincludedir)$(WITH_PATH_VERSIONED_SUFFIX)
>   pkginc_HEADERS = pkgio.h rpmdb.h rpmevr.h rpmns.h rpmtag.h  
> rpmtypes.h
>  @@ .
>  patch -p0 <<'@@ .'
>  Index: rpm/rpmdb/tjfn.c
>   
> = 
> = 
> = 
> = 
> = 
> = 
> ======================================================================
>  $ cvs diff -u -r1.8 -r1.9 tjfn.c
>  --- rpm/rpmdb/tjfn.c	31 Jul 2008 02:40:08 -0000	1.8
>  +++ rpm/rpmdb/tjfn.c	25 Dec 2008 22:24:37 -0000	1.9
>  @@ -9,6 +9,8 @@
>
>   #include <db.h>
>
>  +#include <rpmtag.h>
>  +
>   #define RPMDB_HOME	"/tmp/rpm"
>   #define	RPMDB_Packages	"Packages"
>   #define	RPMDB_Dirnames	"Dirnames"
>  @@ .
> ______________________________________________________________________
> RPM Package Manager                                    http://rpm5.org
> CVS Sources Repository                                rpm-cvs@rpm5.org



  • application/pkcs7-signature attachment: smime.p7s
Received on Thu Dec 25 23:33:43 2008
Driven by Jeff Johnson and the RPM project team.
Hosted by OpenPKG and Ralf S. Engelschall.
Powered by FreeBSD and OpenPKG.