]> git.sur5r.net Git - openldap/blobdiff - tests/scripts/test007-replication
Delete unused idl_cache_entry rwlock field
[openldap] / tests / scripts / test007-replication
index 8146f8299ecc87ba91770f4b7595b59145d33f6f..4ae4e89bd30cadee6c70ae885037f65a3df7197c 100755 (executable)
@@ -2,7 +2,7 @@
 # $OpenLDAP$
 ## This work is part of OpenLDAP Software <http://www.openldap.org/>.
 ##
-## Copyright 1998-2005 The OpenLDAP Foundation.
+## Copyright 1998-2007 The OpenLDAP Foundation.
 ## All rights reserved.
 ##
 ## Redistribution and use in source and binary forms, with or without
@@ -55,6 +55,8 @@ if test $WAIT != 0 ; then
 fi
 KILLPIDS="$KILLPIDS $SLAVEPID"
 
+sleep 1
+
 echo "Using ldapsearch to check that master slapd is running..."
 for i in 0 1 2 3 4 5; do
        $LDAPSEARCH -s base -b "$MONITOR" -h $LOCALHOST -p $PORT1 \
@@ -195,8 +197,8 @@ echo "Stopping the slave..."
 kill -HUP $SLAVEPID
 KILLPIDS="$PID $SLURPPID"
 
-echo "Waiting 5 seconds for slave slapd to die..."
-sleep 5
+echo "Waiting for slave slapd to die..."
+wait $SLAVEPID
 
 echo "Applying more changes to the master slapd..."
 $LDAPMODIFY -v -D "$MANAGERDN" -h $LOCALHOST -p $PORT1 -w $PASSWD > \
@@ -221,8 +223,8 @@ echo "Stopping slurpd..."
 kill -HUP $SLURPPID
 KILLPIDS="$PID"
 
-echo "Waiting 5 seconds for slurpd to die..."
-sleep 5
+echo "Waiting for slurpd to die..."
+wait $SLURPPID
 
 echo "Applying more changes to the master slapd..."
 $LDAPMODIFY -v -D "$MANAGERDN" -h $LOCALHOST -p $PORT1 -w $PASSWD > \
@@ -252,6 +254,8 @@ if test $WAIT != 0 ; then
 fi
 KILLPIDS="$KILLPIDS $SLAVEPID"
 
+sleep 1
+
 echo "Using ldapsearch to check that slave slapd is running..."
 for i in 0 1 2 3 4 5; do
        $LDAPSEARCH -s base -b "$MONITOR" -h $LOCALHOST -p $PORT2 \
@@ -277,9 +281,10 @@ KILLPIDS="$KILLPIDS $SLURPPID"
 echo "Waiting 15 seconds for slurpd to send changes..."
 sleep 15
 
-echo "Try updating the slave slapd..."
-$LDAPMODIFY -v -D "$MANAGERDN" -h $LOCALHOST -p $PORT2 -w $PASSWD > \
-       $TESTOUT 2>&1 << EOMODS
+if test ! $BACKLDAP = "ldapno" ; then
+       echo "Try updating the slave slapd..."
+       $LDAPMODIFY -v -D "$MANAGERDN" -h $LOCALHOST -p $PORT2 -w $PASSWD > \
+               $TESTOUT 2>&1 << EOMODS
 dn: cn=James A Jones 1, ou=Alumni Association, ou=People, dc=example, dc=com
 changetype: modify
 add: description
@@ -288,18 +293,7 @@ description: unless the chain overlay is configured appropriately ;)
 
 EOMODS
 
-RC=$?
-
-if test $BACKLDAP = "ldapno" ; then
-       # expect 10 (LDAP_REFERRAL)...
-       if test $RC != 10 ; then
-               echo "ldapmodify should have failed ($RC)!"
-               test $KILLSERVERS != no && kill -HUP $KILLPIDS
-               exit $RC
-       fi
-
-else
-       # expect 0 (LDAP_SUCCESS)...
+       RC=$?
        if test $RC != 0 ; then
                echo "ldapmodify failed ($RC)!"
                test $KILLSERVERS != no && kill -HUP $KILLPIDS
@@ -348,4 +342,7 @@ if test $? != 0 ; then
 fi
 
 echo ">>>>> Test succeeded"
+
+test $KILLSERVERS != no && wait
+
 exit 0