RPM Package Manager, CVS Repository
http://rpm5.org/cvs/
____________________________________________________________________________
Server: rpm5.org Name: Jeff Johnson
Root: /v/rpm/cvs Email: jbj@rpm5.org
Module: rpm Date: 25-Jul-2007 18:56:08
Branch: HEAD Handle: 2007072517560701
Modified files:
rpm CHANGES macros.in
rpm/lib depends.c
Log:
- rip Depends index and dependency result caching.
Summary:
Revision Changes Path
1.1521 +1 -0 rpm/CHANGES
1.336 +17 -1 rpm/lib/depends.c
1.190 +3 -3 rpm/macros.in
____________________________________________________________________________
patch -p0 <<'@@ .'
Index: rpm/CHANGES
============================================================================
$ cvs diff -u -r1.1520 -r1.1521 CHANGES
--- rpm/CHANGES 25 Jul 2007 16:48:07 -0000 1.1520
+++ rpm/CHANGES 25 Jul 2007 16:56:07 -0000 1.1521
@@ -1,4 +1,5 @@
4.5 -> 5.0:
+ - jbj: rip Depends index and dependency result caching.
- rse: ported to DragonFly BSD (1.8.1)
- rse: add the necessary Autoconf glue for using the ancient (and nowadays resurrected by POSIX) insque(3)
- rse: ported to IBM AIX (5.3)
@@ .
patch -p0 <<'@@ .'
Index: rpm/lib/depends.c
============================================================================
$ cvs diff -u -r1.335 -r1.336 depends.c
--- rpm/lib/depends.c 22 Jul 2007 05:08:22 -0000 1.335
+++ rpm/lib/depends.c 25 Jul 2007 16:56:08 -0000 1.336
@@ -11,7 +11,11 @@
#include <envvar.h>
#include <ugid.h> /* XXX user()/group() probes */
+/* XXX CACHE_DEPENDENCY_RESULT deprecated, functionality being reimplemented */
+#undef CACHE_DEPENDENCY_RESULT
+#if defined(CACHE_DEPNDENCY_RESULT)
#define _RPMDB_INTERNAL /* XXX response cache needs dbiOpen et al. */
+#endif
#include "rpmdb.h"
#define _RPMEVR_INTERNAL
@@ -47,7 +51,9 @@
};
/*@unchecked@*/
-int _cacheDependsRC = 1;
+#if defined(CACHE_DEPENDENCY_RESULT)
+int _cacheDependsRC = CACHE_DEPENDENCY_RESULT;
+#endif
/*@observer@*/ /*@unchecked@*/
const char *rpmNAME = PACKAGE;
@@ -547,7 +553,9 @@
const char * Name;
int_32 Flags;
Header h;
+#if defined(CACHE_DEPENDENCY_RESULT)
int _cacheThisRC = 1;
+#endif
int rc;
int xx;
int retries = 10;
@@ -558,6 +566,7 @@
Flags = rpmdsFlags(dep);
NSType = rpmdsNSType(dep);
+#if defined(CACHE_DEPENDENCY_RESULT)
/*
* Check if dbiOpen/dbiPut failed (e.g. permissions), we can't cache.
*/
@@ -607,6 +616,7 @@
}
}
}
+#endif
retry:
rc = 0; /* assume dependency is satisfied */
@@ -978,12 +988,14 @@
/* Search added packages for the dependency. */
if (rpmalSatisfiesDepend(ts->addedPackages, dep, NULL) != NULL) {
+#if defined(CACHE_DEPENDENCY_RESULT)
/*
* XXX Ick, context sensitive answers from dependency cache.
* XXX Always resolve added dependencies within context to disambiguate.
*/
if (_rpmds_nopromote)
_cacheThisRC = 0;
+#endif
goto exit;
}
@@ -1050,6 +1062,7 @@
/*
* If dbiOpen/dbiPut fails (e.g. permissions), we can't cache.
*/
+#if defined(CACHE_DEPENDENCY_RESULT)
if (_cacheDependsRC && _cacheThisRC) {
dbiIndex dbi;
dbi = dbiOpen(rpmtsGetRdb(ts), RPMDBI_DEPENDS, 0);
@@ -1082,6 +1095,7 @@
_cacheDependsRC = 0;
}
}
+#endif
return rpmdsNegateRC(dep, rc);
}
@@ -2451,8 +2465,10 @@
/*@-branchstate@*/
if (closeatexit)
xx = rpmtsCloseDB(ts);
+#if defined(CACHE_DEPENDENCY_RESULT)
else if (_cacheDependsRC)
xx = rpmdbCloseDBI(rpmtsGetRdb(ts), RPMDBI_DEPENDS);
+#endif
/*@=branchstate@*/
#ifdef NOTYET
@@ .
patch -p0 <<'@@ .'
Index: rpm/macros.in
============================================================================
$ cvs diff -u -r1.189 -r1.190 macros.in
--- rpm/macros.in 22 Jul 2007 15:14:49 -0000 1.189
+++ rpm/macros.in 25 Jul 2007 16:56:08 -0000 1.190
@@ -1,7 +1,7 @@
#/*! \page config_macros Default configuration: @USRLIBRPM@/macros
# \verbatim
#
-# $Id: macros.in,v 1.189 2007/07/22 15:14:49 rse Exp $
+# $Id: macros.in,v 1.190 2007/07/25 16:56:08 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
@@ -648,8 +648,8 @@
# database tag configuration
%_dbi_tags %{expand:%%{_dbi_tags_%{_dbapi_used}}}
-%_dbi_tags_3 Packages:Name:Basenames:Group:Requirename:Providename:Conflictname:Triggername:Dirnames:Requireversion:Provideversion:Installtid:Sigmd5:Sha1header:Filemd5s:Pubkeys:Packagecolor:Depends
-%_dbi_tags_4 Packages:Name:Basenames:Group:Requirename:Providename:Conflictname:Triggername:Dirnames:Requireversion:Provideversion:Installtid:Sigmd5:Sha1header:Filemd5s:Pubkeys:Packagecolor:Depends
+%_dbi_tags_3 Packages:Name:Basenames:Group:Requirename:Providename:Conflictname:Triggername:Dirnames:Requireversion:Provideversion:Installtid:Sigmd5:Sha1header:Filemd5s:Pubkeys:Packagecolor
+%_dbi_tags_4 Packages:Name:Basenames:Group:Requirename:Providename:Conflictname:Triggername:Dirnames:Requireversion:Provideversion:Installtid:Sigmd5:Sha1header:Filemd5s:Pubkeys:Packagecolor
# database configuration: Berkeley-DB [dbapi 3 hooks]
%_dbi_config_3 %{_dbi_btconfig}
@@ .
Received on Wed Jul 25 18:56:08 2007