[CVS] RPM: rpm/ CHANGES rpm/js/ rpmbf-js.c rpm/rpmio/ rpmbf.c rpmbf.h

2009-10-01 Thread Jeff Johnson
  RPM Package Manager, CVS Repository
  http://rpm5.org/cvs/
  

  Server: rpm5.org Name:   Jeff Johnson
  Root:   /v/rpm/cvs   Email:  j...@rpm5.org
  Module: rpm  Date:   02-Oct-2009 07:46:02
  Branch: HEAD Handle: 2009100205460101

  Modified files:
rpm CHANGES
rpm/js  rpmbf-js.c
rpm/rpmio   rpmbf.c rpmbf.h

  Log:
- rpmbf: pass string length where needed.

  Summary:
RevisionChanges Path
1.3136  +1  -0  rpm/CHANGES
1.5 +3  -3  rpm/js/rpmbf-js.c
2.5 +6  -8  rpm/rpmio/rpmbf.c
2.4 +6  -3  rpm/rpmio/rpmbf.h
  

  patch -p0 <<'@@ .'
  Index: rpm/CHANGES
  
  $ cvs diff -u -r1.3135 -r1.3136 CHANGES
  --- rpm/CHANGES   1 Oct 2009 19:24:36 -   1.3135
  +++ rpm/CHANGES   2 Oct 2009 05:46:01 -   1.3136
  @@ -1,5 +1,6 @@
   
   5.2b1 -> 5.3a1
  +- jbj: rpmbf: pass string length where needed.
   - jbj: dbi: commit to DB->associate() secondary indices as default
(w exceptions, todo++).
   - jbj: dbi: commit to DB_DUP/DB_DUPSORT as default (w exceptions, 
todo++).
  @@ .
  patch -p0 <<'@@ .'
  Index: rpm/js/rpmbf-js.c
  
  $ cvs diff -u -r1.4 -r1.5 rpmbf-js.c
  --- rpm/js/rpmbf-js.c 7 Jul 2009 18:53:50 -   1.4
  +++ rpm/js/rpmbf-js.c 2 Oct 2009 05:46:02 -   1.5
  @@ -32,7 +32,7 @@
   if (!(ok = JS_ConvertArguments(cx, argc, argv, "s", &_s)))
   goto exit;
   
  -(void) rpmbfAdd(bf, _s);
  +(void) rpmbfAdd(bf, _s, 0);
   *rval = JSVAL_TRUE;  /* XXX return s? */
   ok = JS_TRUE;
   exit:
  @@ -52,7 +52,7 @@
   if (!(ok = JS_ConvertArguments(cx, argc, argv, "s", &_s)))
   goto exit;
   
  -*rval = (rpmbfChk(bf, _s) ? JSVAL_TRUE : JSVAL_FALSE);
  +*rval = (rpmbfChk(bf, _s, 0) ? JSVAL_TRUE : JSVAL_FALSE);
   ok = JS_TRUE;
   exit:
   return ok;
  @@ -85,7 +85,7 @@
   if (!(ok = JS_ConvertArguments(cx, argc, argv, "s", &_s)))
   goto exit;
   
  -*rval = (rpmbfDel(bf, _s) ? JSVAL_FALSE : JSVAL_TRUE);
  +*rval = (rpmbfDel(bf, _s, 0) ? JSVAL_FALSE : JSVAL_TRUE);
   ok = JS_TRUE;
   exit:
   return ok;
  @@ .
  patch -p0 <<'@@ .'
  Index: rpm/rpmio/rpmbf.c
  
  $ cvs diff -u -r2.4 -r2.5 rpmbf.c
  --- rpm/rpmio/rpmbf.c 29 Jun 2009 22:03:40 -  2.4
  +++ rpm/rpmio/rpmbf.c 2 Oct 2009 05:46:02 -   2.5
  @@ -64,13 +64,12 @@
   return rpmbfLink(bf);
   }
   
  -int rpmbfAdd(rpmbf bf, const char * s)
  +int rpmbfAdd(rpmbf bf, const char * s, size_t ns)
   {
  -size_t ns = (s ? strlen(s) : 0);
   rpmuint32_t h0 = 0;
   rpmuint32_t h1 = 0;
   
  -assert(ns > 0);
  +if (ns == 0) ns = strlen(s);
   jlu32lpair(s, ns, &h0, &h1);
   
   for (ns = 0; ns < bf->k; ns++) {
  @@ -84,14 +83,13 @@
   return 0;
   }
   
  -int rpmbfChk(rpmbf bf, const char * s)
  +int rpmbfChk(rpmbf bf, const char * s, size_t ns)
   {
  -size_t ns = (s ? strlen(s) : 0);
   rpmuint32_t h0 = 0;
   rpmuint32_t h1 = 0;
   int rc = 1;
   
  -assert(ns > 0);
  +if (ns == 0) ns = strlen(s);
   jlu32lpair(s, ns, &h0, &h1);
   
   for (ns = 0; ns < bf->k; ns++) {
  @@ -119,12 +117,12 @@
   return 0;
   }
   
  -int rpmbfDel(rpmbf bf, const char * s)
  +int rpmbfDel(rpmbf bf, const char * s, size_t ns)
   {
  -size_t ns = (s ? strlen(s) : 0);
   rpmuint32_t h0 = 0;
   rpmuint32_t h1 = 0;
   
  +if (ns == 0) ns = strlen(s);
   assert(ns > 0);
   jlu32lpair(s, ns, &h0, &h1);
   
  @@ .
  patch -p0 <<'@@ .'
  Index: rpm/rpmio/rpmbf.h
  
  $ cvs diff -u -r2.3 -r2.4 rpmbf.h
  --- rpm/rpmio/rpmbf.h 29 Jun 2009 22:03:40 -  2.3
  +++ rpm/rpmio/rpmbf.h 2 Oct 2009 05:46:02 -   2.4
  @@ -133,9 +133,10 @@
* Add string to a Bloom filter.
* @param bf Bloom filter
* @param s  string
  + * @param ns no. bytes in string (0 will do strlen)
* @return   0 always
*/
  -int rpmbfAdd(rpmbf bf, const char * s)
  +int rpmbfAdd(rpmbf bf, const char * s, size_t ns)
/*...@modifies bf @*/;
   
   /**
  @@ -150,9 +151,10 @@
* Check for string in a Bloom filter.
* @param bf Bloom filter
* @param s  string
  + * @param ns no. bytes in string (0 will do strlen)
* @return   1 if string is present, 0 if not
*/
  -int rpmbfChk(rpmbf bf, const char * s)
 

[CVS] RPM: rpm/ CHANGES rpm/macros/ macros.in rpm/rpmdb/ db3.c

2009-10-01 Thread Jeff Johnson
  RPM Package Manager, CVS Repository
  http://rpm5.org/cvs/
  

  Server: rpm5.org Name:   Jeff Johnson
  Root:   /v/rpm/cvs   Email:  j...@rpm5.org
  Module: rpm  Date:   01-Oct-2009 21:24:37
  Branch: HEAD Handle: 2009100119243601

  Modified files:
rpm CHANGES
rpm/macros  macros.in
rpm/rpmdb   db3.c

  Log:
- dbi: commit to DB->associate() secondary indices as default
(w exceptions, todo++).
- dbi: commit to DB_DUP/DB_DUPSORT as default (w exceptions, todo++).
- dbi: commit to dbi->dbi_jlen == 4 as default (w exceptions, todo++).
- dbi: commit to DB_BTREE as default (w exceptions, todo++).

  Summary:
RevisionChanges Path
1.3135  +5  -0  rpm/CHANGES
1.11+16 -16 rpm/macros/macros.in
1.104   +57 -11 rpm/rpmdb/db3.c
  

  patch -p0 <<'@@ .'
  Index: rpm/CHANGES
  
  $ cvs diff -u -r1.3134 -r1.3135 CHANGES
  --- rpm/CHANGES   1 Oct 2009 14:52:07 -   1.3134
  +++ rpm/CHANGES   1 Oct 2009 19:24:36 -   1.3135
  @@ -1,5 +1,10 @@
   
   5.2b1 -> 5.3a1
  +- jbj: dbi: commit to DB->associate() secondary indices as default
  + (w exceptions, todo++).
  +- jbj: dbi: commit to DB_DUP/DB_DUPSORT as default (w exceptions, 
todo++).
  +- jbj: dbi: commit to dbi->dbi_jlen == 4 as default (w exceptions, 
todo++).
  +- jbj: dbi: commit to DB_BTREE as default (w exceptions, todo++).
   - jbj: dbi: permit tag tables to be secondary indices with dupes.
   - devzero2000: add security CFLAGS for GCC if supported
   - jbj: dbi: configure new indices with 4b join keys and duplicates.
  @@ .
  patch -p0 <<'@@ .'
  Index: rpm/macros/macros.in
  
  $ cvs diff -u -r1.10 -r1.11 macros.in
  --- rpm/macros/macros.in  1 Oct 2009 14:39:33 -   1.10
  +++ rpm/macros/macros.in  1 Oct 2009 19:24:37 -   1.11
  @@ -1,7 +1,7 @@
   #/*! \page config_macros Default configuration: @USRLIBRPM@/macros
   # \verbatim
   #
  -# $Id: macros.in,v 1.10 2009/10/01 14:39:33 jbj Exp $
  +# $Id: macros.in,v 1.11 2009/10/01 19:24:37 jbj Exp $
   #
   # This is a global RPM configuration file. All changes made here will
   # be lost when the rpm package is upgraded. Any per-system configuration
  @@ -375,32 +375,32 @@
   # database configuration: Berkeley-DB [dbapi 3 hooks]
   %_dbi_config_3  %{_dbi_btconfig}
   %_dbi_config_3_Basenames%{_dbi_btconfig}
  -%_dbi_config_3_Conflictname %{_dbi_btconfig} %{_dbi_dupsort}
  -%_dbi_config_3_Conflictversion  %{_dbi_btconfig} %{_dbi_dupsort}
  -%_dbi_config_3_Conflictflags%{_dbi_btconfig} %{_dbi_dupsort}
  +%_dbi_config_3_Conflictname %{_dbi_btconfig} %{_dbi_dupsort} index
  +%_dbi_config_3_Conflictversion  %{_dbi_btconfig} %{_dbi_dupsort} index
  +%_dbi_config_3_Conflictflags%{_dbi_btconfig} %{_dbi_dupsort} index
   %_dbi_config_3_Dirnames %{_dbi_btconfig}
   %_dbi_config_3_Filedigests  %{_dbi_htconfig}
   %_dbi_config_3_Filepaths %{_dbi_btconfig} %{_dbi_dupsort} index
   %_dbi_config_3_Group%{_dbi_btconfig} %{_dbi_dupsort} index
   %_dbi_config_3_Installtid   %{_dbi_btconfig} %{_dbi_dupsort} index
  -%_dbi_config_3_Name %{_dbi_btconfig}
  +%_dbi_config_3_Name %{_dbi_btconfig} %{_dbi_dupsort} index
   %_dbi_config_3_Nvra %{_dbi_btconfig} %{_dbi_dupsort} index noload
   %_dbi_config_3_Obsoletename %{_dbi_btconfig} %{_dbi_dupsort} index
  -%_dbi_config_3_Obsoleteversion  %{_dbi_btconfig} %{_dbi_dup}
  -%_dbi_config_3_Obsoleteflags%{_dbi_btconfig} %{_dbi_dupsort}
  +%_dbi_config_3_Obsoleteversion  %{_dbi_btconfig} %{_dbi_dup} index
  +%_dbi_config_3_Obsoleteflags%{_dbi_btconfig} %{_dbi_dupsort} index
   %_dbi_config_3_Packagecolor %{_dbi_htconfig} h_dupsort index
  -%_dbi_config_3_Providename  %{_dbi_btconfig}
  -%_dbi_config_3_Provideversion   %{_dbi_btconfig} %{_dbi_dup}
  -%_dbi_config_3_Provideflags %{_dbi_btconfig} %{_dbi_dupsort}
  +%_dbi_config_3_Providename  %{_dbi_btconfig} %{_dbi_dup} index
  +%_dbi_config_3_Provideversion   %{_dbi_btconfig} %{_dbi_dup} index
  +%_dbi_config_3_Provideflags %{_dbi_btconfig} %{_dbi_dupsort} index
   %_dbi_config_3_Pubkeys  %{_dbi_htconfig}
  -%_dbi_config_3_Removetid%{_dbi_btconfig} %{_dbi_dupsort}
  -%_dbi_config_3_Requirename  %{_dbi_btconfig}
  -%_dbi_config_3_Requireversion   %{_dbi_btconfig} %{_dbi_dup}
  -%_dbi_config_3_Requireflags %{_dbi_btconfig} %{_dbi_dupsort}
  -%_dbi_config_3_Sha1header   %{_dbi_htc

[CVS] RPM: rpm/rpmdb/ dbconfig.c

2009-10-01 Thread Jeff Johnson
  RPM Package Manager, CVS Repository
  http://rpm5.org/cvs/
  

  Server: rpm5.org Name:   Jeff Johnson
  Root:   /v/rpm/cvs   Email:  j...@rpm5.org
  Module: rpm  Date:   01-Oct-2009 19:19:49
  Branch: HEAD Handle: 2009100117194900

  Modified files:
rpm/rpmdb   dbconfig.c

  Log:
- dbi: haul out some trash.

  Summary:
RevisionChanges Path
1.67+0  -17 rpm/rpmdb/dbconfig.c
  

  patch -p0 <<'@@ .'
  Index: rpm/rpmdb/dbconfig.c
  
  $ cvs diff -u -r1.66 -r1.67 dbconfig.c
  --- rpm/rpmdb/dbconfig.c  1 Oct 2009 17:16:42 -   1.66
  +++ rpm/rpmdb/dbconfig.c  1 Oct 2009 17:19:49 -   1.67
  @@ -640,23 +640,6 @@
*/
   /*...@-sizeoftype@*/
   switch (tag) {
  -#ifdef   DYING
  -case RPMTAG_CONFLICTVERSION:
  -case RPMTAG_CONFLICTVERSION:
  -case RPMTAG_CONFLICTFLAGS:
  -case RPMTAG_GROUP:
  -case RPMTAG_NVRA:
  -case RPMTAG_OBSOLETENAME:
  -case RPMTAG_OBSOLETEVERSION:
  -case RPMTAG_OBSOLETEFLAGS:
  -case RPMTAG_PROVIDEVERSION:
  -case RPMTAG_PROVIDEFLAGS:
  -case RPMTAG_REQUIREVERSION:
  -case RPMTAG_REQUIREFLAGS:
  -case RPMTAG_SHA1HEADER:
  -case RPMTAG_SIGMD5:
  -case RPMTAG_SOURCEPKGID:
  -#endif
   case RPMDBI_PACKAGES:
   case RPMDBI_DEPENDS:
   default:
  @@ .
__
RPM Package Managerhttp://rpm5.org
CVS Sources Repositoryrpm-cvs@rpm5.org


[CVS] RPM: rpm/rpmdb/ dbconfig.c

2009-10-01 Thread Jeff Johnson
  RPM Package Manager, CVS Repository
  http://rpm5.org/cvs/
  

  Server: rpm5.org Name:   Jeff Johnson
  Root:   /v/rpm/cvs   Email:  j...@rpm5.org
  Module: rpm  Date:   01-Oct-2009 19:16:42
  Branch: HEAD Handle: 2009100117164200

  Modified files:
rpm/rpmdb   dbconfig.c

  Log:
- dbi: fix "DB_SUPSORT" typo and actually shorten join keys
everywhere.

  Summary:
RevisionChanges Path
1.66+8  -2  rpm/rpmdb/dbconfig.c
  

  patch -p0 <<'@@ .'
  Index: rpm/rpmdb/dbconfig.c
  
  $ cvs diff -u -r1.65 -r1.66 dbconfig.c
  --- rpm/rpmdb/dbconfig.c  30 Sep 2009 06:23:25 -  1.65
  +++ rpm/rpmdb/dbconfig.c  1 Oct 2009 17:16:42 -   1.66
  @@ -411,7 +411,7 @@
{ "h_dup",  0,POPT_BIT_SET, &db3dbi.dbi_h_flags, DB_DUP,
NULL, NULL },
   #endif
  -#if defined(WITH_DB) && defined(DB_SUPSORT)
  +#if defined(WITH_DB) && defined(DB_DUPSORT)
{ "h_dupsort",  0,POPT_BIT_SET, &db3dbi.dbi_h_flags, DB_DUPSORT,
NULL, NULL },
   #endif
  @@ -640,6 +640,8 @@
*/
   /*...@-sizeoftype@*/
   switch (tag) {
  +#ifdef   DYING
  +case RPMTAG_CONFLICTVERSION:
   case RPMTAG_CONFLICTVERSION:
   case RPMTAG_CONFLICTFLAGS:
   case RPMTAG_GROUP:
  @@ -654,11 +656,15 @@
   case RPMTAG_SHA1HEADER:
   case RPMTAG_SIGMD5:
   case RPMTAG_SOURCEPKGID:
  +#endif
   case RPMDBI_PACKAGES:
   case RPMDBI_DEPENDS:
  +default:
dbi->dbi_jlen = 1 * sizeof(rpmuint32_t);
break;
  -default:
  +case RPMTAG_BASENAMES:
  +case RPMTAG_DIRNAMES:
  +case RPMTAG_DIRINDEXES:
dbi->dbi_jlen = 2 * sizeof(rpmuint32_t);
break;
   }
  @@ .
__
RPM Package Managerhttp://rpm5.org
CVS Sources Repositoryrpm-cvs@rpm5.org


[CVS] RPM: rpm/ CHANGES rpm/rpmdb/ db3.c rpmdb.c rpmdb.h

2009-10-01 Thread Jeff Johnson
  RPM Package Manager, CVS Repository
  http://rpm5.org/cvs/
  

  Server: rpm5.org Name:   Jeff Johnson
  Root:   /v/rpm/cvs   Email:  j...@rpm5.org
  Module: rpm  Date:   01-Oct-2009 16:52:08
  Branch: HEAD Handle: 2009100114520701

  Modified files:
rpm CHANGES
rpm/rpmdb   db3.c rpmdb.c rpmdb.h

  Log:
- dbi: permit tag tables to be secondary indices with dupes.

  Summary:
RevisionChanges Path
1.3134  +1  -0  rpm/CHANGES
1.103   +346 -5 rpm/rpmdb/db3.c
1.313   +33 -19 rpm/rpmdb/rpmdb.c
1.101   +5  -1  rpm/rpmdb/rpmdb.h
  

  patch -p0 <<'@@ .'
  Index: rpm/CHANGES
  
  $ cvs diff -u -r1.3133 -r1.3134 CHANGES
  --- rpm/CHANGES   29 Sep 2009 17:26:29 -  1.3133
  +++ rpm/CHANGES   1 Oct 2009 14:52:07 -   1.3134
  @@ -1,5 +1,6 @@
   
   5.2b1 -> 5.3a1
  +- jbj: dbi: permit tag tables to be secondary indices with dupes.
   - devzero2000: add security CFLAGS for GCC if supported
   - jbj: dbi: configure new indices with 4b join keys and duplicates.
   - jbj: dbi: generate additional indices.
  @@ .
  patch -p0 <<'@@ .'
  Index: rpm/rpmdb/db3.c
  
  $ cvs diff -u -r1.102 -r1.103 db3.c
  --- rpm/rpmdb/db3.c   30 Sep 2009 06:31:32 -  1.102
  +++ rpm/rpmdb/db3.c   1 Oct 2009 14:52:08 -   1.103
  @@ -27,6 +27,8 @@
   #define  DB_CLIENT   DB_RPCCLIENT
   #endif
   
  +#define  DBIDEBUG(_dbi, _list)   if ((_dbi)->dbi_debug) fprintf _list
  +
   /*...@access rpmdb @*/
   /*...@access dbiIndex @*/
   /*...@access dbiIndexSet @*/
  @@ -150,6 +152,229 @@

"\20\1WRONLY\2RDWR\7CREAT\10EXCL\11NOCTTY\12TRUNC\13APPEND\14NONBLOCK\15SYNC\16ASYNC\17DIRECT\20LARGEFILE\21DIRECTORY\22NOFOLLOW";
   #endif   /* NOTNOW */
   
  +typedef struct key_s {
  +uint32_t v;
  +const char *n;
  +} KEY;
  +
  +static const char * tblName(uint32_t v, KEY * tbl, size_t ntbl)
  +{
  +const char * n = NULL;
  +static char buf[32];
  +size_t i;
  +
  +for (i = 0; i < ntbl; i++) {
  + if (v != tbl[i].v)
  + continue;
  + n = tbl[i].n;
  + break;
  +}
  +if (n == NULL) {
  + snprintf(buf, sizeof(buf), "0x%x", v);
  + n = buf;
  +}
  +return n;
  +}
  +
  +static const char * fmtBits(uint32_t flags, KEY tbl[], size_t ntbl, char *t)
  +{
  +char pre = '<';
  +char * te = t;
  +int i;
  +
  +sprintf(t, "0x%x", flags);
  +te = t;
  +te += strlen(te);
  +for (i = 0; i < 32; i++) {
  + uint32_t mask = (1 << i);
  + const char * name;
  +
  + if (!(flags & mask))
  + continue;
  +
  + name = tblName(mask, tbl, ntbl);
  + *te++ = pre;
  + pre = ',';
  + te = stpcpy(te, name);
  +}
  +if (pre == ',') *te++ = '>';
  +*te = '\0';
  +return t;
  +}
  +
  +#define _ENTRY(_v)  { DB_##_v, #_v, }
  +
  +static KEY DBoflags[] = {
  +_ENTRY(AUTO_COMMIT),
  +_ENTRY(CREATE),
  +_ENTRY(EXCL),
  +_ENTRY(MULTIVERSION),
  +_ENTRY(NOMMAP),
  +_ENTRY(RDONLY),
  +_ENTRY(READ_UNCOMMITTED),
  +_ENTRY(THREAD),
  +_ENTRY(TRUNCATE),
  +};
  +static size_t nDBoflags = sizeof(DBoflags) / sizeof(DBoflags[0]);
  +static const char * fmtDBoflags(uint32_t flags)
  +{
  +static char buf[BUFSIZ];
  +char * te = buf;
  +te = stpcpy(te, "\n\tflags: ");
  +(void) fmtBits(flags, DBoflags, nDBoflags, te);
  +return buf;
  +}
  +#define  _OFLAGS(_dbi)   fmtDBoflags((_dbi)->dbi_oflags)
  +
  +static KEY DBCflags[] = {
  +_ENTRY(AFTER),   /* Dbc.put */
  +_ENTRY(APPEND),  /* Db.put */
  +_ENTRY(BEFORE),  /* Dbc.put */
  +_ENTRY(CONSUME), /* Db.get */
  +_ENTRY(CONSUME_WAIT),/* Db.get */
  +_ENTRY(CURRENT), /* Dbc.get, Dbc.put, DbLogc.get */
  +_ENTRY(FIRST),   /* Dbc.get, DbLogc->get */
  +_ENTRY(GET_BOTH),/* Db.get, Dbc.get */
  +_ENTRY(GET_BOTHC),   /* Dbc.get (internal) */
  +_ENTRY(GET_BOTH_RANGE),  /* Db.get, Dbc.get */
  +_ENTRY(GET_RECNO),   /* Dbc.get */
  +_ENTRY(JOIN_ITEM),   /* Dbc.get; don't do primary lookup */
  +_ENTRY(KEYFIRST),/* Dbc.put */
  +_ENTRY(KEYLAST), /* Dbc.put */
  +_ENTRY(LAST),/* Dbc.get, DbLogc->get */
  +_ENTRY(NEXT),/* Dbc.get, DbLogc->get */
  +_ENTRY(NEXT_DUP),/* Dbc.get */
  +_ENTRY(NEXT_NODUP),  /* Dbc.get */
  +_ENTRY(NODUP

[CVS] RPM: rpm/macros/ macros.in

2009-10-01 Thread Jeff Johnson
  RPM Package Manager, CVS Repository
  http://rpm5.org/cvs/
  

  Server: rpm5.org Name:   Jeff Johnson
  Root:   /v/rpm/cvs   Email:  j...@rpm5.org
  Module: rpm  Date:   01-Oct-2009 16:39:33
  Branch: HEAD Handle: 2009100114393300

  Modified files:
rpm/macros  macros.in

  Log:
- dbi: configuration to treat tables as secondary indices on Packages.

  Summary:
RevisionChanges Path
1.10+24 -19 rpm/macros/macros.in
  

  patch -p0 <<'@@ .'
  Index: rpm/macros/macros.in
  
  $ cvs diff -u -r1.9 -r1.10 macros.in
  --- rpm/macros/macros.in  30 Sep 2009 06:36:57 -  1.9
  +++ rpm/macros/macros.in  1 Oct 2009 14:39:33 -   1.10
  @@ -1,7 +1,7 @@
   #/*! \page config_macros Default configuration: @USRLIBRPM@/macros
   # \verbatim
   #
  -# $Id: macros.in,v 1.9 2009/09/30 06:36:57 jbj Exp $
  +# $Id: macros.in,v 1.10 2009/10/01 14:39:33 jbj Exp $
   #
   # This is a global RPM configuration file. All changes made here will
   # be lost when the rpm package is upgraded. Any per-system configuration
  @@ -367,34 +367,39 @@
   %_dbi_tags_3
Packages:Name:Basenames:Triggername:Dirnames:Filedigests:Pubkeys:Packagecolor:Nvra:Sourcepkgid:Filepaths:Group:Conflictname:Conflictversion:Conflictflags:Installtid:Obsoletename:Obsoleteversion:Obsoleteflags:Providename:Provideversion:Provideflags:Requirename:Requireversion:Requireflags:Sha1header:Sigmd5
   %_dbi_tags_4
Packages:Name:Basenames:Group:Providename:Requirename:Conflictname:Triggername:Dirnames:Requireversion:Provideversion:Installtid:Sigmd5:Sha1header:Filedigests:Pubkeys:Packagecolor:Nvra:Sourcepkgid:Filepaths:Group:Obsoletename:Obsoleteversion:Obsoleteflags
   
  +%_dbi_debug  %{nil}
  +%_dbi_index  %{nil}
  +%_dbi_dupbt_dup %{_dbi_index} %{_dbi_debug}
  +%_dbi_dupsortbt_dupsort %{_dbi_index} %{_dbi_debug}
  +
   # database configuration: Berkeley-DB [dbapi 3 hooks]
   %_dbi_config_3  %{_dbi_btconfig}
   %_dbi_config_3_Basenames%{_dbi_btconfig}
  -%_dbi_config_3_Conflictname %{_dbi_btconfig}
  -%_dbi_config_3_Conflictversion  %{_dbi_btconfig} bt_dupsort
  -%_dbi_config_3_Conflictflags%{_dbi_btconfig} bt_dupsort
  +%_dbi_config_3_Conflictname %{_dbi_btconfig} %{_dbi_dupsort}
  +%_dbi_config_3_Conflictversion  %{_dbi_btconfig} %{_dbi_dupsort}
  +%_dbi_config_3_Conflictflags%{_dbi_btconfig} %{_dbi_dupsort}
   %_dbi_config_3_Dirnames %{_dbi_btconfig}
   %_dbi_config_3_Filedigests  %{_dbi_htconfig}
  -%_dbi_config_3_Filepaths %{_dbi_btconfig}
  -%_dbi_config_3_Group%{_dbi_btconfig} bt_dupsort
  -%_dbi_config_3_Installtid   %{_dbi_btconfig} bt_dupsort
  +%_dbi_config_3_Filepaths %{_dbi_btconfig} %{_dbi_dupsort} index
  +%_dbi_config_3_Group%{_dbi_btconfig} %{_dbi_dupsort} index
  +%_dbi_config_3_Installtid   %{_dbi_btconfig} %{_dbi_dupsort} index
   %_dbi_config_3_Name %{_dbi_btconfig}
  -%_dbi_config_3_Nvra %{_dbi_btconfig} bt_dupsort noload
  -%_dbi_config_3_Obsoletename %{_dbi_btconfig} bt_dupsort
  -%_dbi_config_3_Obsoleteversion  %{_dbi_btconfig} bt_dupsort
  -%_dbi_config_3_Obsoleteflags%{_dbi_btconfig} bt_dupsort
  -%_dbi_config_3_Packagecolor %{_dbi_htconfig}
  +%_dbi_config_3_Nvra %{_dbi_btconfig} %{_dbi_dupsort} index noload
  +%_dbi_config_3_Obsoletename %{_dbi_btconfig} %{_dbi_dupsort} index
  +%_dbi_config_3_Obsoleteversion  %{_dbi_btconfig} %{_dbi_dup}
  +%_dbi_config_3_Obsoleteflags%{_dbi_btconfig} %{_dbi_dupsort}
  +%_dbi_config_3_Packagecolor %{_dbi_htconfig} h_dupsort index
   %_dbi_config_3_Providename  %{_dbi_btconfig}
  -%_dbi_config_3_Provideversion   %{_dbi_btconfig} bt_dup
  -%_dbi_config_3_Provideflags %{_dbi_btconfig} bt_dupsort
  +%_dbi_config_3_Provideversion   %{_dbi_btconfig} %{_dbi_dup}
  +%_dbi_config_3_Provideflags %{_dbi_btconfig} %{_dbi_dupsort}
   %_dbi_config_3_Pubkeys  %{_dbi_htconfig}
  -%_dbi_config_3_Removetid%{_dbi_btconfig}
  +%_dbi_config_3_Removetid%{_dbi_btconfig} %{_dbi_dupsort}
   %_dbi_config_3_Requirename  %{_dbi_btconfig}
  -%_dbi_config_3_Requireversion   %{_dbi_btconfig} bt_dup
  -%_dbi_config_3_Requireflags %{_dbi_btconfig} bt_dupsort
  +%_dbi_config_3_Requireversion   %{_dbi_btconfig} %{_dbi_dup}
  +%_dbi_config_3_Requireflags %{_dbi_btconfig} %{_dbi_dupsort}
   %_dbi_config_3_Sha1header   %{_dbi_htconfig}
  -%_dbi_config_3_Sigmd5   %{_dbi_htconfig}
  -%_dbi_config_3_Sourcepkgid  %{_dbi_btconfig} bt_dupsort
  +%_dbi_config_3_Sigmd5   %{_dbi_htconfig} h_dups