Diff for /tests/scripts/test017-syncreplication-refresh between versions 1.4.2.6 and 1.12

version 1.4.2.6, 2003/12/01 02:05:16 version 1.12, 2003/10/13 08:14:05
Line 1 Line 1
 #! /bin/sh  #! /bin/sh
 # $OpenLDAP: pkg/ldap/tests/scripts/test017-syncreplication-refresh,v 1.4.2.5 2003/12/01 02:01:31 kurt Exp $  # $OpenLDAP: pkg/ldap/tests/scripts/test017-syncreplication-refresh,v 1.11 2003/09/22 22:11:46 jongchoi Exp $
 ## This work is part of OpenLDAP Software <http://www.openldap.org/>.  
 ##  SRCDIR="."
 ## Copyright 1998-2003 The OpenLDAP Foundation.  if test $# -ge 1 ; then
 ## All rights reserved.          SRCDIR=$1; shift
 ##  
 ## Redistribution and use in source and binary forms, with or without  
 ## modification, are permitted only as authorized by the OpenLDAP  
 ## Public License.  
 ##  
 ## A copy of this license is available in the file LICENSE in the  
 ## top-level directory of the distribution or, alternatively, at  
 ## <http://www.OpenLDAP.org/license.html>.  
   
 if test "$BACKEND" != "bdb" -a "$BACKEND" != "hdb" -o ; then  
         echo "Test does not support $BACKEND"  
         exit 0  
 fi  fi
   
   . $SRCDIR/scripts/args.sh $*
   
 echo "running defines.sh"  echo "running defines.sh"
 . $SRCDIR/scripts/defines.sh  . $SRCDIR/scripts/defines.sh
   
 mkdir -p $TESTDIR $DBDIR1 $DBDIR2 $DBDIR3  
   
 #  #
 # Test replication:  # Test replication:
 # - start master  # - start master
Line 32  mkdir -p $TESTDIR $DBDIR1 $DBDIR2 $DBDIR Line 20  mkdir -p $TESTDIR $DBDIR1 $DBDIR2 $DBDIR
 # - retrieve database over ldap and compare against expected results  # - retrieve database over ldap and compare against expected results
 #  #
   
 echo "Starting master slapd on TCP/IP port $PORT1..."  echo "Cleaning up in $DBDIR..."
 . $CONFFILTER $BACKEND $MONITORDB < $SRMASTERCONF > $CONF1  rm -f $DBDIR/[!C]*
 $SLAPD -f $CONF1 -h $URI1 -d $LVL $TIMING > $LOG1 2>&1 &  echo "Resetting $R1REPLDIR..."
   rm -rf $R1REPLDIR
   mkdir $R1REPLDIR
   
   SAVE=$BACKEND
   if test $BACKEND = ldbm; then
           if test $SYNCREPL = no; then
                   echo "Sync replication requires back-bdb or back-hdb"
                   exit 0
           fi
           BACKEND=$SYNCREPL
   fi
   echo "Starting master slapd on TCP/IP port $PORT..."
   . $CONFFILTER $BACKEND $MONITORDB < $SRMASTERCONF > $DBCONF
   $SLAPD -f $DBCONF -h $MASTERURI -d $LVL $TIMING > $MASTERLOG 2>&1 &
 PID=$!  PID=$!
 if test $WAIT != 0 ; then  if test $WAIT != 0 ; then
     echo PID $PID      echo PID $PID
     read foo      read foo
 fi  fi
 KILLPIDS="$PID"  BACKEND=$SAVE
   
 echo "Using ldapsearch to check that master slapd is running..."  echo "Using ldapsearch to check that master slapd is running..."
 for i in 0 1 2 3 4 5; do  for i in 0 1 2 3 4 5; do
         $LDAPSEARCH -s base -b "$MONITOR" -h $LOCALHOST -p $PORT1 \          $LDAPSEARCH -s base -b "$MONITOR" -h $LOCALHOST -p $PORT \
                 'objectclass=*' > /dev/null 2>&1                  'objectclass=*' > /dev/null 2>&1
         RC=$?          RC=$?
         if test $RC = 0 ; then          if test $RC = 0 ; then
Line 56  done Line 58  done
   
 if test $RC != 0 ; then  if test $RC != 0 ; then
         echo "ldapsearch failed ($RC)!"          echo "ldapsearch failed ($RC)!"
         test $KILLSERVERS != no && kill -HUP $KILLPIDS          kill -HUP $PID
         exit $RC          exit $RC
 fi  fi
   
 echo "Using ldapadd to create the context prefix entry in the master..."  echo "Using ldapadd to create the context prefix entry in the master..."
 $LDAPADD -D "$MANAGERDN" -h $LOCALHOST -p $PORT1 -w $PASSWD < \  $LDAPADD -D "$MANAGERDN" -h $LOCALHOST -p $PORT -w $PASSWD < \
         $LDIFORDEREDCP > /dev/null 2>&1          $LDIFORDEREDCP > /dev/null 2>&1
 RC=$?  RC=$?
 if test $RC != 0 ; then  if test $RC != 0 ; then
         echo "ldapadd failed ($RC)!"          echo "ldapadd failed ($RC)!"
         test $KILLSERVERS != no && kill -HUP $KILLPIDS          kill -HUP $PID
         exit $RC          exit $RC
 fi  fi
   
 echo "Starting slave slapd on TCP/IP port $PORT2..."  echo "Starting slave slapd on TCP/IP port $R1SLAVEPORT..."
 . $CONFFILTER $BACKEND $MONITORDB < $R1SRSLAVECONF > $CONF2  . $CONFFILTER $BACKEND $MONITORDB < $R1SRSLAVECONF > $R1REPLCONF
 $SLAPD -f $CONF2 -h $URI2 -d $LVL $TIMING > $LOG2 2>&1 &  $SLAPD -f $R1REPLCONF -h $R1SLAVEURI -d $LVL $TIMING > $R1SLAVELOG 2>&1 &
 SLAVEPID=$!  R1SLAVEPID=$!
 if test $WAIT != 0 ; then  if test $WAIT != 0 ; then
     echo SLAVEPID $SLAVEPID      echo SLAVEPID $R1SLAVEPID
     read foo      read foo
 fi  fi
 KILLPIDS="$KILLPIDS $SLAVEPID"  
   
 echo "Using ldapsearch to check that slave slapd is running..."  echo "Using ldapsearch to check that slave slapd is running..."
 for i in 0 1 2 3 4 5; do  for i in 0 1 2 3 4 5; do
         $LDAPSEARCH -s base -b "$MONITOR" -h $LOCALHOST -p $PORT2 \          $LDAPSEARCH -s base -b "$MONITOR" -h $LOCALHOST -p $R1SLAVEPORT \
                 'objectclass=*' > /dev/null 2>&1                  'objectclass=*' > /dev/null 2>&1
         RC=$?          RC=$?
         if test $RC = 0 ; then          if test $RC = 0 ; then
Line 94  done Line 95  done
   
 if test $RC != 0 ; then  if test $RC != 0 ; then
         echo "ldapsearch failed ($RC)!"          echo "ldapsearch failed ($RC)!"
         test $KILLSERVERS != no && kill -HUP $KILLPIDS          kill -HUP $PID
         exit $RC          exit $RC
 fi  fi
   
 echo "Using ldapadd to populate the master directory..."  echo "Using ldapadd to populate the master directory..."
 $LDAPADD -D "$MANAGERDN" -h $LOCALHOST -p $PORT1 -w $PASSWD < \  $LDAPADD -D "$MANAGERDN" -h $LOCALHOST -p $PORT -w $PASSWD < \
         $LDIFORDEREDNOCP > /dev/null 2>&1          $LDIFORDEREDNOCP > /dev/null 2>&1
 RC=$?  RC=$?
 if test $RC != 0 ; then  if test $RC != 0 ; then
         echo "ldapadd failed ($RC)!"          echo "ldapadd failed ($RC)!"
         test $KILLSERVERS != no && kill -HUP $KILLPIDS          kill -HUP $PID $R1SLAVEPID
         exit $RC          exit $RC
 fi  fi
   
 echo "Waiting 15 seconds for syncrepl to receive changes..."  echo "Waiting 90 seconds for syncrepl to receive changes..."
 sleep 15  sleep 90
   
 echo "Using ldapmodify to modify master directory..."  echo "Using ldapmodify to modify master directory..."
   
Line 117  echo "Using ldapmodify to modify master Line 118  echo "Using ldapmodify to modify master
 # Do some modifications  # Do some modifications
 #  #
   
 $LDAPMODIFY -v -D "$MANAGERDN" -h $LOCALHOST -p $PORT1 -w $PASSWD > \  $LDAPMODIFY -v -D "$MANAGERDN" -h $LOCALHOST -p $PORT -w $PASSWD > \
         $TESTOUT 2>&1 << EOMODS          $TESTOUT 2>&1 << EOMODS
 dn: cn=James A Jones 1, ou=Alumni Association, ou=People, o=University of Michigan, c=US  dn: cn=James A Jones 1, ou=Alumni Association, ou=People, o=University of Michigan, c=US
 changetype: modify  changetype: modify
Line 138  drink: Mad Dog 20/20 Line 139  drink: Mad Dog 20/20
   
 dn: cn=ITD Staff,ou=Groups,o=University of Michigan,c=US  dn: cn=ITD Staff,ou=Groups,o=University of Michigan,c=US
 changetype: modify  changetype: modify
 delete: uniquemember  delete: member
 uniquemember: cn=James A Jones 2, ou=Information Technology Division, ou=People, o=University of Michigan, c=US  member: cn=James A Jones 2, ou=Information Technology Division, ou=People, o=University of Michigan, c=US
 uniquemember: cn=Bjorn Jensen, ou=Information Technology Division, ou=People, o=University of Michigan, c=US  member: cn=Bjorn Jensen, ou=Information Technology Division, ou=People, o=University of Michigan, c=US
 -  -
 add: uniquemember  add: member
 uniquemember: cn=Dorothy Stevens, ou=Alumni Association, ou=People, o=University of Michigan, c=US  member: cn=Dorothy Stevens, ou=Alumni Association, ou=People, o=University of Michigan, c=US
 uniquemember: cn=James A Jones 1, ou=Alumni Association, ou=People, o=University of Michigan, c=US  member: cn=James A Jones 1, ou=Alumni Association, ou=People, o=University of Michigan, c=US
   
 dn: cn=All Staff,ou=Groups,o=University of Michigan,c=US  dn: cn=All Staff,ou=Groups,o=University of Michigan,c=US
 changetype: modify  changetype: modify
Line 190  changetype: delete Line 191  changetype: delete
   
 EOMODS  EOMODS
   
 RC=$?  echo "Waiting 90 seconds for syncrepl to receive changes..."
 if test $RC != 0 ; then  sleep 90
         echo "ldapmodify failed ($RC)!"  
         test $KILLSERVERS != no && kill -HUP $KILLPIDS  
         exit $RC  
 fi  
   
 echo "Waiting 15 seconds for syncrepl to receive changes..."  
 sleep 15  
   
 echo "Using ldapsearch to read all the entries from the master..."  echo "Using ldapsearch to read all the entries from the master..."
 $LDAPSEARCH -S "" -b "$BASEDN" -h $LOCALHOST -p $PORT1 \  $LDAPSEARCH -S "" -b "$BASEDN" -h $LOCALHOST -p $PORT \
         'objectclass=*' > $MASTEROUT 2>&1          'objectclass=*' > $MASTEROUT 2>&1
 RC=$?  RC=$?
   
 if test $RC != 0 ; then  if test $RC != 0 ; then
         echo "ldapsearch failed at master ($RC)!"          echo "ldapsearch failed at master ($RC)!"
         test $KILLSERVERS != no && kill -HUP $KILLPIDS          kill -HUP $PID $R1SLAVEPID
         exit $RC          exit $RC
 fi  fi
   
 echo "Using ldapsearch to read all the entries from the slave..."  echo "Using ldapsearch to read all the entries from the slave..."
 $LDAPSEARCH -S "" -b "$BASEDN" -h $LOCALHOST -p $PORT2 \  $LDAPSEARCH -S "" -b "$BASEDN" -h $LOCALHOST -p $R1SLAVEPORT \
         'objectclass=*' > $SLAVEOUT 2>&1          'objectclass=*' > $R1SLAVEOUT 2>&1
 RC=$?  RC=$?
   
 if test $RC != 0 ; then  if test $RC != 0 ; then
         echo "ldapsearch failed at slave ($RC)!"          echo "ldapsearch failed at slave ($RC)!"
         test $KILLSERVERS != no && kill -HUP $KILLPIDS          kill -HUP $PID $R1SLAVEPID
         exit $RC          exit $RC
 fi  fi
   
 test $KILLSERVERS != no && kill -HUP $KILLPIDS  kill -HUP $PID $R1SLAVEPID
   
 echo "Filtering master results..."  SEARCHOUT=$MASTEROUT
 . $LDIFFILTER < $MASTEROUT > $MASTERFLT  LDIF=$R1SLAVEOUT
 echo "Filtering slave results..."  
 . $LDIFFILTER < $SLAVEOUT > $SLAVEFLT  echo "Filtering ldapsearch results..."
   . $LDIFFILTER < $SEARCHOUT > $SEARCHFLT
   echo "Filtering original ldif used to create database..."
   . $LDIFFILTER < $LDIF > $R1LDIFFLT
   
 echo "Comparing retrieved entries from master and slave..."  echo "Comparing retrieved entries from master and slave..."
 $CMP $MASTERFLT $SLAVEFLT > $CMPOUT  $CMP $SEARCHFLT $R1LDIFFLT > $CMPOUT
   
 if test $? != 0 ; then  if test $? != 0 ; then
         echo "test failed - master and slave databases differ"          echo "test failed - master and slave databases differ"
Line 238  if test $? != 0 ; then Line 235  if test $? != 0 ; then
 fi  fi
   
 echo ">>>>> Test succeeded"  echo ">>>>> Test succeeded"
   
   
 exit 0  exit 0

Removed from v.1.4.2.6  
changed lines
  Added in v.1.12


______________
© Copyright 1998-2020, OpenLDAP Foundation, info@OpenLDAP.org