Chris Browne cbbrowne at lists.slony.info
Fri Apr 20 14:43:16 PDT 2007
Update of /home/cvsd/slony1/slony1-engine/tests
In directory main.slony.info:/tmp/cvs-serv4869

Modified Files:
	run_test.sh settings.ik 
Log Message:
Log shipping test added to HEAD which tweaks a problem found in 1.2
where DDL statements (and other non-SYNC events) are not loaded
properly on a log shipped node.


Index: settings.ik
===================================================================
RCS file: /home/cvsd/slony1/slony1-engine/tests/settings.ik,v
retrieving revision 1.5
retrieving revision 1.6
diff -C2 -d -r1.5 -r1.6
*** settings.ik	1 Mar 2007 21:02:31 -0000	1.5
--- settings.ik	20 Apr 2007 21:43:14 -0000	1.6
***************
*** 100,101 ****
--- 100,104 ----
  PORT13=${PORT13:-${PGPORT:-"5432"}}
  PGBINDIR13=${PGBINDIR13:-${PGBINDIR:-"/usr/local/pgsql/bin"}}
+ 
+ # Where to look for tools (e.g. - slony1_dump.sh)
+ SLTOOLDIR=${SLTOOLDIR:-"../tools"}
\ No newline at end of file

Index: run_test.sh
===================================================================
RCS file: /home/cvsd/slony1/slony1-engine/tests/run_test.sh,v
retrieving revision 1.13
retrieving revision 1.14
diff -C2 -d -r1.13 -r1.14
*** run_test.sh	18 Apr 2007 15:03:51 -0000	1.13
--- run_test.sh	20 Apr 2007 21:43:14 -0000	1.14
***************
*** 176,183 ****
        eval user=\$USER${alias}
        eval port=\$PORT${alias}
  
        if [ -n "${db}" -a "${host}" -a "${user}" -a "${port}" ]; then
          if [ ${alias} -ne ${originnode} ]; then
!           echo "STORE NODE (id=${alias}, comment='node ${alias}');" >> $mktmp/slonik.script
          fi
          if [ ${alias} -ge ${NUMNODES} ]; then
--- 176,188 ----
        eval user=\$USER${alias}
        eval port=\$PORT${alias}
+       eval logship=\$LOGSHIP${alias}
  
        if [ -n "${db}" -a "${host}" -a "${user}" -a "${port}" ]; then
          if [ ${alias} -ne ${originnode} ]; then
!           if [ "x${logship}" == "xtrue" ]; then    # Don't bother generating nodes used for log shipping
!             status "Node ${alias} is a log shipping node - no need for STORE NODE"
!           else
!             echo "STORE NODE (id=${alias}, comment='node ${alias}');" >> $mktmp/slonik.script
!          fi
          fi
          if [ ${alias} -ge ${NUMNODES} ]; then
***************
*** 203,206 ****
--- 208,212 ----
      eval user=\$USER${i}
      eval port=\$PORT${i}
+     eval logship=\$LOGSHIP${i}
  
      if [ -n "${db}" -a "${host}" -a "${user}" -a "${port}" ]; then
***************
*** 212,217 ****
--- 218,229 ----
            eval buser=\$WEAKUSER${j}
            eval bport=\$PORT${j}
+           eval blogship=\$LOGSHIP${j}
            if [ -n "${bdb}" -a "${bhost}" -a "${buser}" -a "${bport}" ]; then
+              if [[ "x${logship}" == "xtrue" || "x${blogship}" == "xtrue" ]]; then
+                  # log shipping node - no paths need exist that involve this node
+                  status "log shipping between nodes(${i}/${j}) - ls(${logship}/${blogship}) - omit STORE PATH"
+              else
  	    echo "STORE PATH (SERVER=${i}, CLIENT=${j}, CONNINFO='dbname=${db} host=${host} user=${buser} port=${port}');" >> $mktmp/slonik.script
+              fi
            else
              err 3 "No conninfo"
***************
*** 514,517 ****
--- 526,531 ----
        eval port=\$PORT${alias}
        eval cluster=\$CLUSTER1
+       eval archive=\$ARCHIVE{alias}
+       eval logship=\$LOGSHIP${alias}
  
        if [ -n "${db}" -a "${host}" -a "${user}" -a "${port}" ]; then
***************
*** 522,540 ****
          eval slon${alias}_pid=
  
          conninfo="dbname=${db} host=${host} user=${user} port=${port}"
  
!         status "launching: $pgbindir/slon -s500 -g10 -d2 $cluster \"$conninfo\""
  
!         $pgbindir/slon -s500 -g10 -d2 $cluster "$conninfo" 1>> $mktmp/slon_log.${alias} 2>&1 &
!         tmppid=$!
!         tmpppid=$$
!         sleep 1
  
!         foo=$(_check_pid slon ${tmppid} ${tmpppid})
  
  
!         eval slon${alias}_pid=${foo}
!         if [ -z "${foo}" -o "${tmppid}" != "${foo}" ]; then
!           warn 3 "Failed to launch slon on node ${alias} check $mktmp/slon_log.${alias} for details"
          fi
        fi
--- 536,563 ----
          eval slon${alias}_pid=
  
+         if [ "x${archive}" != "xtrue" ]; then
+           status "Creating log shipping directory - $mktmp/archive_logs_${alias}"
+           mkdir -p $mktmp/archive_logs_${alias}
+           archiveparm="-a ${mktmp}/archive_logs_${alias}"
+        fi
          conninfo="dbname=${db} host=${host} user=${user} port=${port}"
  
!         if [ "x${logship}" == "xtrue" ]; then
!           status "do not launch slon for node ${alias} - it receives data via log shipping"
!         else
!           status "launching: $pgbindir/slon -s500 -g10 -d2 ${archiveparm} $cluster \"$conninfo\""
  
!           $pgbindir/slon -s500 -g10 -d2 ${archiveparm} $cluster "$conninfo" 1>> $mktmp/slon_log.${alias} 2>&1 &
!           tmppid=$!
!           tmpppid=$$
!           sleep 1
  
!           foo=$(_check_pid slon ${tmppid} ${tmpppid})
  
  
!           eval slon${alias}_pid=${foo}
!           if [ -z "${foo}" -o "${tmppid}" != "${foo}" ]; then
!             warn 3 "Failed to launch slon on node ${alias} check $mktmp/slon_log.${alias} for details"
!           fi
          fi
        fi



More information about the Slony1-commit mailing list