if [ $USE_REPLICATION_SLOT = "false" ];then
echo "archive_mode = on" >> $PGCONF
- echo "archive_command = 'cp %p $BASEDIR/archivedir/%f </dev/null'" >> $PGCONF
+ echo "archive_command = 'cp %p $BASEDIR/archivedir/`basename $1`/%f </dev/null'" >> $PGCONF
else
num_slots=`expr $NUMCLUSTERS + 10`
echo "max_replication_slots = $num_slots" >> $PGCONF
elif [ $MODE = 'r' -o $MODE = 'l' -o $MODE = 'y' ];then
echo "wal_level = archive" >> $PGCONF
echo "archive_mode = on" >> $PGCONF
- echo "archive_command = 'cp %p $BASEDIR/archivedir/%f </dev/null'" >> $PGCONF
+ echo "archive_command = 'cp %p $BASEDIR/archivedir/`basename $1`/%f </dev/null'" >> $PGCONF
if [ $MODE = 'l' ];then
echo "wal_level = logical" >> $PGCONF
fi
if [ $USE_REPLICATION_SLOT = "false" ];then
cat >> $1/$SCRIPT <<'EOF'
-restore_command = 'cp $DATADIR_BASE/archivedir/%f "%p" 2> /dev/null'
+restore_command = 'cp $DATADIR_BASE/archivedir/`basename $1`/%f "%p" 2> /dev/null'
REOF
EOF
else
-e "/__PGBIN__/s@__PGBIN__@$PGBIN@" \
-e "/__DATADIR_BASE__/s@__DATADIR_BASE__@$BASEDIR@" \
-e "/__PGSUPERUSER__/s/__PGSUPERUSER__/$WHOAMI/" \
- -e "/__ARCHDIR__/s@__ARCHDIR__@$BASEDIR/archivedir@" \
+ -e "/__ARCHDIR__/s@__ARCHDIR__@$BASEDIR/archivedir/\`basename \$1\`@" \
$1/$SCRIPT
chmod 755 $1/$SCRIPT
-e "/__PGBIN__/s@__PGBIN__@$PGBIN@" \
-e "/__DATADIR_BASE__/s@__DATADIR_BASE__@$BASEDIR@" \
-e "/__PGSUPERUSER__/s/__PGSUPERUSER__/$WHOAMI/" \
- -e "/__ARCHDIR__/s@__ARCHDIR__@$BASEDIR/archivedir@" \
+ -e "/__ARCHDIR__/s@__ARCHDIR__@$BASEDIR/archivedir/\`basename \$1\`@" \
$1/$SCRIPT
chmod 755 $1/$SCRIPT
echo "primary_slot_name = 'pgpool_setup_slot$2'" >> $1/$fname
else
cat >> $1/$fname <<EOF
-restore_command = 'cp $BASEDIR/archivedir/%f "%p" 2> /dev/null'
+restore_command = 'cp $BASEDIR/archivedir/`basename $1`/%f "%p" 2> /dev/null'
EOF
fi
}
echo "#$n port is $PORT" >> README.port
+ # create archive directory
+ test ! -d archivedir/$CLUSTER && mkdir -p archivedir/$CLUSTER
+
done
set_pgpool_conf $CONF
# create pool_passwd
$PGPOOL_INSTALL_DIR/bin/pg_md5 -m -f etc/pgpool.conf -u $WHOAMI $WHOAMI
-if [ $USE_REPLICATION_SLOT = "false" ];then
- # create archive directory
- mkdir archivedir
-fi
-
#-------------------------------------------
# if streaming replication mode, we need to create data1 and so on, by
-# using on line recovery.
+# using online recovery.
#-------------------------------------------
if [ $MODE = 's' ];then
n=1
while [ $n -lt $NUMCLUSTERS ]
do
+ # create archive directory
+ test ! -d $BASEDIR/archivedir/`basename $CLUSTER` && mkdir $BASEDIR/archivedir/`basename $CLUSTER`
+
# set up pgpool.conf
PORT=`expr $PORT + 1`
echo "backend_hostname$n = '$PGSOCKET_DIR'" >> $CONF