]> git.ipfire.org Git - thirdparty/openldap.git/commitdiff
ITS#9555 Introduce a default operations timeout for back-asyncmeta
authorNadezhda Ivanova <nivanova@symas.com>
Tue, 18 May 2021 13:41:08 +0000 (16:41 +0300)
committerQuanah Gibson-Mount <quanah@openldap.org>
Tue, 25 May 2021 15:01:51 +0000 (15:01 +0000)
doc/man/man5/slapd-asyncmeta.5
servers/slapd/back-asyncmeta/back-asyncmeta.h
servers/slapd/back-asyncmeta/config.c
servers/slapd/back-asyncmeta/init.c

index dc6924c5d99f3a3d847be17100e164465a90ba7c..c1474aa90c9d4480c137ef08339f8e39ea456b20 100644 (file)
@@ -446,6 +446,8 @@ Operations can be
 
 \fB<op> ::= bind, add, delete, modrdn, modify, compare, search\fP
 
+By default, the timeout for all operations is 2 seconds.
+
 See
 .B slapd\-meta(5)
 for details.
index 85437bf2628bf0c497b81d98cda8d513740ae18d..b860d0c7057d7f98b3346b10a3041ba7c741d8ae 100644 (file)
@@ -326,8 +326,10 @@ typedef struct a_metatarget_t {
 #define        META_BACK_TGT_NOREFS(mt)                META_BACK_TGT_ISSET( (mt), LDAP_BACK_F_NOREFS )
 #define        META_BACK_TGT_NOUNDEFFILTER(mt)         META_BACK_TGT_ISSET( (mt), LDAP_BACK_F_NOUNDEFFILTER )
 
-#define META_BACK_CFG_MAX_PENDING_OPS          0x80
+#define META_BACK_CFG_MAX_PENDING_OPS           0x80
 #define META_BACK_CFG_MAX_TARGET_CONNS          0xFF
+#define META_BACK_CFG_DEFAULT_OPS_TIMEOUT       0x02
+
 /* the interval of the timeout checking loop in microseconds
  * possibly make this configurable? */
 #define META_BACK_CFG_MAX_TIMEOUT_LOOP          0x70000
index c935e22be3730f825eb3af3fc7f385df674a9667..05ec953655a0a4bddadffedef998302c77c520bd 100644 (file)
@@ -1177,7 +1177,7 @@ asyncmeta_back_cf_gen( ConfigArgs *c )
 
                case LDAP_BACK_CFG_TIMEOUT:
                        for ( i = 0; i < SLAP_OP_LAST; i++ ) {
-                               if ( mc->mc_timeout[ i ] != 0 ) {
+                               if ( mc->mc_timeout[ i ] != META_BACK_CFG_DEFAULT_OPS_TIMEOUT ) {
                                        break;
                                }
                        }
index 1b9cc6af4abd2782ed20dbb4af3c31aa9004c0d4..a45fc3b66eb6dfa895cd12f0649a4cb27061888a 100644 (file)
@@ -149,6 +149,10 @@ asyncmeta_back_db_init(
        mi->mi_nretries = META_RETRY_DEFAULT;
        mi->mi_version = LDAP_VERSION3;
 
+       for ( i = 0; i < SLAP_OP_LAST; i++ ) {
+               mi->mi_timeout[ i ] = META_BACK_CFG_DEFAULT_OPS_TIMEOUT;
+       }
+
        for ( i = LDAP_BACK_PCONN_FIRST; i < LDAP_BACK_PCONN_LAST; i++ ) {
                mi->mi_conn_priv[ i ].mic_num = 0;
                LDAP_TAILQ_INIT( &mi->mi_conn_priv[ i ].mic_priv );