rpms/fedora-ds-base/devel bug463991-bdb47.patch, 1.1, 1.2 fedora-ds-base.spec, 1.21, 1.22

Richard Allen Megginson rmeggins at fedoraproject.org
Thu Oct 9 16:08:05 UTC 2008


Author: rmeggins

Update of /cvs/extras/rpms/fedora-ds-base/devel
In directory cvs1.fedora.phx.redhat.com:/tmp/cvs-serv1282

Modified Files:
	bug463991-bdb47.patch fedora-ds-base.spec 
Log Message:
updated patch for bug463991-bdb47.patch

bug463991-bdb47.patch:

Index: bug463991-bdb47.patch
===================================================================
RCS file: /cvs/extras/rpms/fedora-ds-base/devel/bug463991-bdb47.patch,v
retrieving revision 1.1
retrieving revision 1.2
diff -u -r1.1 -r1.2
--- bug463991-bdb47.patch	29 Sep 2008 20:57:25 -0000	1.1
+++ bug463991-bdb47.patch	9 Oct 2008 16:07:34 -0000	1.2
@@ -1,44 +1,48 @@
-Index: ldap/servers/slapd/back-ldbm/back-ldbm.h
-===================================================================
-RCS file: /cvs/dirsec/ldapserver/ldap/servers/slapd/back-ldbm/back-ldbm.h,v
-retrieving revision 1.15
-diff -u -8 -r1.15 back-ldbm.h
---- ldap/servers/slapd/back-ldbm/back-ldbm.h	5 Aug 2008 21:03:42 -0000	1.15
-+++ ldap/servers/slapd/back-ldbm/back-ldbm.h	29 Sep 2008 20:31:48 -0000
-@@ -109,16 +109,25 @@
- #define ID2ENTRY "id2entry"	/* main db file name: ID2ENTRY+LDBM_SUFFIX */
- 
- #define LDBM_SUFFIX_OLD	".db3"
- #define LDBM_SUFFIX	".db4"
- 
- #define MEGABYTE (1024 * 1024)
- #define GIGABYTE (1024 * MEGABYTE)
- 
-+#define DB_USES_LOCKING(env) \
-+    (DB_INIT_LOCK & ((env)->get_open_flags((env), NULL)))
-+#define DB_USES_TRANSACTIONS(env) \
-+    (DB_INIT_TXN & ((env)->get_open_flags((env), NULL)))
-+#define DB_USES_MPOOL(env) \
-+    (DB_INIT_MPOOL & ((env)->get_open_flags((env), NULL)))
-+#define DB_USES_LOGGING(env) \
-+    (DB_INIT_LOG & ((env)->get_open_flags((env), NULL)))
-+
- 
- /* include NSPR header files */
- #include "nspr.h"
- #include "plhash.h"
- 
- #include "slap.h"
- #include "slapi-plugin.h"
- #include "slapi-private.h"
-Index: ldap/servers/slapd/back-ldbm/dblayer.c
-===================================================================
-RCS file: /cvs/dirsec/ldapserver/ldap/servers/slapd/back-ldbm/dblayer.c,v
-retrieving revision 1.27
-diff -u -8 -r1.27 dblayer.c
---- ldap/servers/slapd/back-ldbm/dblayer.c	3 Apr 2008 16:52:47 -0000	1.27
-+++ ldap/servers/slapd/back-ldbm/dblayer.c	29 Sep 2008 20:31:48 -0000
-@@ -3444,17 +3444,17 @@
+--- ldapserver/ldap/servers/slapd/back-ldbm/dblayer.c	8 Oct 2008 17:29:03 -0000	1.28
++++ ldapserver/ldap/servers/slapd/back-ldbm/dblayer.c	9 Oct 2008 15:29:33 -0000
+@@ -272,16 +272,41 @@
+     bv1.bv_len = (ber_len_t)dbt1->size;
+ 
+     bv2.bv_val = (char *)dbt2->data;
+     bv2.bv_len = (ber_len_t)dbt2->size;
+ 
+     return slapi_berval_cmp(&bv1, &bv2);
+ }
+ 
++static int db_uses_feature(DB_ENV *db_env, u_int32_t flags)
++{
++    u_int32_t openflags = 0;
++    PR_ASSERT(db_env);
++    (*db_env->get_open_flags)(db_env, &openflags);
++
++    return (flags & openflags);
++}
++
++int dblayer_db_uses_locking(DB_ENV *db_env) {
++    return db_uses_feature(db_env, DB_INIT_LOCK);
++}
++
++int dblayer_db_uses_transactions(DB_ENV *db_env) {
++    return db_uses_feature(db_env, DB_INIT_TXN);
++}
++
++int dblayer_db_uses_mpool(DB_ENV *db_env) {
++    return db_uses_feature(db_env, DB_INIT_MPOOL);
++}
++
++int dblayer_db_uses_logging(DB_ENV *db_env) {
++    return db_uses_feature(db_env, DB_INIT_LOG);
++};
++
+ /* this flag use if user remotely turned batching off */
+ 
+ #define FLUSH_REMOTEOFF -1 
+ /* routine that allows batch value to be changed remotely:
+ 
+     1. value = 0 turns batching off
+     2. value = 1 makes behavior be like 5.0 but leaves batching on
+     3. value > 1 changes batch value
+@@ -3451,17 +3476,17 @@
  
      INCR_THREAD_COUNT(priv);
  
@@ -47,8 +51,8 @@
      {
          if (priv->dblayer_enable_transactions) 
          {
--            if (NULL != priv->dblayer_env->dblayer_DB_ENV->lk_handle) {
-+            if (DB_USES_LOCKING(priv->dblayer_env->dblayer_DB_ENV)) {
+-            if (DB_USES_LOCKING(priv->dblayer_env->dblayer_DB_ENV)) {
++            if (dblayer_db_uses_locking(priv->dblayer_env->dblayer_DB_ENV)) {
                  int aborted;
                  if ((rval = LOCK_DETECT(priv->dblayer_env->dblayer_DB_ENV,
                              0,
@@ -57,7 +61,7 @@
                      != 0) {
                      LDAPDebug(LDAP_DEBUG_ANY,
                        "Serious Error---Failed in deadlock detect (aborted at 0x%x), err=%d (%s)\n",
-@@ -3614,17 +3614,17 @@
+@@ -3621,17 +3646,17 @@
          checkpoint_interval = priv->dblayer_checkpoint_interval;
          PR_Unlock(li->li_config_mutex);
  
@@ -66,8 +70,8 @@
                                                 checkpoint_interval) 
              continue;
  
--        if (NULL == priv->dblayer_env->dblayer_DB_ENV->tx_handle)
-+        if (!DB_USES_TRANSACTIONS(priv->dblayer_env->dblayer_DB_ENV))
+-        if (!DB_USES_TRANSACTIONS(priv->dblayer_env->dblayer_DB_ENV))
++        if (!dblayer_db_uses_transactions(priv->dblayer_env->dblayer_DB_ENV))
              continue;
  
          /* now checkpoint */
@@ -76,7 +80,7 @@
          rval = dblayer_txn_checkpoint(li, priv->dblayer_env, PR_TRUE, PR_TRUE);
  #if 1000*DB_VERSION_MAJOR + 100*DB_VERSION_MINOR < 4100
          if (DB_INCOMPLETE == rval) 
-@@ -3772,17 +3772,17 @@
+@@ -3779,17 +3804,17 @@
  
      interval = PR_MillisecondsToInterval(DBLAYER_SLEEP_INTERVAL);
      debug_checkpointing = priv->db_debug_checkpointing;
@@ -85,8 +89,8 @@
          DS_Sleep(interval);   /* 622855: wait for other threads fully started */
          if (priv->dblayer_enable_transactions) 
          {
--            if ( (NULL != priv->dblayer_env->dblayer_DB_ENV->mp_handle) &&
-+            if ( DB_USES_MPOOL(priv->dblayer_env->dblayer_DB_ENV) &&
+-            if ( DB_USES_MPOOL(priv->dblayer_env->dblayer_DB_ENV) &&
++            if ( dblayer_db_uses_mpool(priv->dblayer_env->dblayer_DB_ENV) &&
                   (0 != priv->dblayer_trickle_percentage) )
              {
                  int pages_written = 0;
@@ -95,13 +99,8 @@
                                        priv->dblayer_trickle_percentage,
                                        &pages_written)) != 0)
                  {
-Index: ldap/servers/slapd/back-ldbm/perfctrs.c
-===================================================================
-RCS file: /cvs/dirsec/ldapserver/ldap/servers/slapd/back-ldbm/perfctrs.c,v
-retrieving revision 1.9
-diff -u -8 -r1.9 perfctrs.c
---- ldap/servers/slapd/back-ldbm/perfctrs.c	26 Sep 2007 17:32:41 -0000	1.9
-+++ ldap/servers/slapd/back-ldbm/perfctrs.c	29 Sep 2008 20:31:49 -0000
+--- ldapserver/ldap/servers/slapd/back-ldbm/perfctrs.c	8 Oct 2008 17:29:04 -0000	1.10
++++ ldapserver/ldap/servers/slapd/back-ldbm/perfctrs.c	9 Oct 2008 15:29:33 -0000
 @@ -291,41 +291,41 @@
  	if (NULL == db_env) {
  		return;
@@ -111,8 +110,8 @@
  		return;
  	}
  	/* Call libdb to get the various stats */
--	if (NULL != db_env->lg_handle)
-+	if (DB_USES_LOGGING(db_env))
+-	if (DB_USES_LOGGING(db_env))
++	if (dblayer_db_uses_logging(db_env))
  	{
  		DB_LOG_STAT *logstat = NULL;
  		ret = LOG_STAT(db_env,&logstat,0,malloc);
@@ -123,8 +122,8 @@
  		}
  		free(logstat);
  	}
--	if (NULL != db_env->tx_handle)
-+	if (DB_USES_TRANSACTIONS(db_env))
+-	if (DB_USES_TRANSACTIONS(db_env))
++	if (dblayer_db_uses_transactions(db_env))
  	{
  		DB_TXN_STAT *txnstat = NULL;
  		ret = TXN_STAT(db_env, &txnstat, 0, malloc);
@@ -137,8 +136,8 @@
  		if (txnstat)
  			free(txnstat);
  	}
--	if (NULL != db_env->lk_handle)
-+	if (DB_USES_LOCKING(db_env))
+-	if (DB_USES_LOCKING(db_env))
++	if (dblayer_db_uses_locking(db_env))
  	{
  		DB_LOCK_STAT *lockstat = NULL;
  		ret = LOCK_STAT(db_env,&lockstat,0,malloc);
@@ -156,8 +155,8 @@
  		}
  		free(lockstat);
  	}
--	if (NULL != db_env->mp_handle)
-+	if (DB_USES_MPOOL(db_env))
+-	if (DB_USES_MPOOL(db_env))
++	if (dblayer_db_uses_mpool(db_env))
  	{
  		DB_MPOOL_STAT	*mpstat = NULL;
  		ret = MEMP_STAT(db_env,&mpstat,NULL,0,malloc);
@@ -166,3 +165,26 @@
  			perf->cache_size_bytes = mpstat->st_gbytes * ONEG + mpstat->st_bytes;
  			perf->page_access_rate = mpstat->st_cache_hit + mpstat->st_cache_miss;			
  			perf->cache_hit = mpstat->st_cache_hit;			
+--- ldapserver/ldap/servers/slapd/back-ldbm/proto-back-ldbm.h	2 Oct 2007 18:39:51 -0000	1.14
++++ ldapserver/ldap/servers/slapd/back-ldbm/proto-back-ldbm.h	9 Oct 2008 15:29:34 -0000
+@@ -161,16 +161,20 @@
+ int dblayer_update_db_ext(ldbm_instance *inst, char *oldext, char *newext);
+ void dblayer_set_recovery_required(struct ldbminfo *li);
+ 
+ char *dblayer_get_home_dir(struct ldbminfo *li, int *dbhome);
+ char *dblayer_get_full_inst_dir(struct ldbminfo *li, ldbm_instance *inst,
+                                 char *buf, int buflen);
+ void autosize_import_cache(struct ldbminfo *li);
+ 
++int dblayer_db_uses_locking(DB_ENV *db_env);
++int dblayer_db_uses_transactions(DB_ENV *db_env);
++int dblayer_db_uses_mpool(DB_ENV *db_env);
++int dblayer_db_uses_logging(DB_ENV *db_env);
+ 
+ /*
+  * dn2entry.c
+  */
+ struct backentry *dn2entry(Slapi_Backend *be, const Slapi_DN *sdn, back_txn *txn, int    *err);
+ struct backentry *dn2entry_or_ancestor(Slapi_Backend *be, const Slapi_DN *sdn, Slapi_DN *ancestor, back_txn *txn, int *err);
+ struct backentry *dn2ancestor(Slapi_Backend *be,const Slapi_DN *sdn,Slapi_DN *ancestordn,back_txn *txn,int *err);
+ int get_copy_of_entry(Slapi_PBlock *pb, const entry_address *addr, back_txn *txn, int plock_parameter, int must_exist);


Index: fedora-ds-base.spec
===================================================================
RCS file: /cvs/extras/rpms/fedora-ds-base/devel/fedora-ds-base.spec,v
retrieving revision 1.21
retrieving revision 1.22
diff -u -r1.21 -r1.22
--- fedora-ds-base.spec	29 Sep 2008 20:57:25 -0000	1.21
+++ fedora-ds-base.spec	9 Oct 2008 16:07:34 -0000	1.22
@@ -5,7 +5,7 @@
 Summary:          Fedora Directory Server (base)
 Name:             fedora-ds-base
 Version:          1.1.3
-Release:          3%{?dist}
+Release:          4%{?dist}
 License:          GPLv2 with exceptions
 URL:              http://directory.fedoraproject.org/
 Group:            System Environment/Daemons
@@ -158,6 +158,9 @@
 %{_libdir}/%{pkgname}/*.so
 
 %changelog
+* Thu Oct  9 2008 Rich Megginson <rmeggins at redhat.com> - 1.1.3-4
+- updated patch bug463991-bdb47.patch
+
 * Mon Sep 29 2008 Rich Megginson <rmeggins at redhat.com> - 1.1.3-3
 - added patch bug463991-bdb47.patch
 - make ds work with bdb 4.7




More information about the fedora-extras-commits mailing list