summaryrefslogtreecommitdiff
path: root/ctdb/config/statd-callout
diff options
context:
space:
mode:
authorRonnie Sahlberg <ronniesahlberg@gmail.com>2010-09-03 12:35:25 +1000
committerRonnie Sahlberg <ronniesahlberg@gmail.com>2010-09-03 12:43:28 +1000
commitdc2f87737da7cdb4af5d4fd8f1875f00e92ea545 (patch)
tree64975eaf40f8ab27418e3e3ef3fa1e9b860dc4bd /ctdb/config/statd-callout
parent7c682dda5961e577c3c81ad7106f8612d2d1752c (diff)
downloadsamba-dc2f87737da7cdb4af5d4fd8f1875f00e92ea545.tar.gz
Dont store temporary runtime data in $CTDB_BASE/state
since that will usually be /etc/ctdb/state and storing this under /etc is just wrong. Add a new variable CTDB_VARDIR that defaults to /var/ctdb and store the data there instead. (This used to be ctdb commit 516423c25afa9861d9988096efa8a4a2b12b31b1)
Diffstat (limited to 'ctdb/config/statd-callout')
-rwxr-xr-xctdb/config/statd-callout42
1 files changed, 23 insertions, 19 deletions
diff --git a/ctdb/config/statd-callout b/ctdb/config/statd-callout
index 9808cb941ea..39be9d3d4a1 100755
--- a/ctdb/config/statd-callout
+++ b/ctdb/config/statd-callout
@@ -9,6 +9,10 @@
export CTDB_BASE="/etc/ctdb"
}
+[ -z "$CTDB_VARDIR" ] && {
+ export CTDB_VARDIR="/var/ctdb"
+}
+
. $CTDB_BASE/functions
loadconfig ctdb
loadconfig nfs
@@ -30,8 +34,8 @@ case "$1" in
continue
}
IP=`echo $LINE | cut -f2 -d:`
- /bin/mkdir -p $CTDB_BASE/state/statd/ip/$IP
- touch $CTDB_BASE/state/statd/ip/$IP/$2
+ /bin/mkdir -p $CTDB_VARDIR/state/statd/ip/$IP
+ touch $CTDB_VARDIR/state/statd/ip/$IP/$2
done
;;
del-client)
@@ -45,8 +49,8 @@ case "$1" in
continue
}
IP=`echo $LINE | cut -f2 -d:`
- mkdir -p $CTDB_BASE/state/statd/ip/$IP
- /bin/rm -f $CTDB_BASE/state/statd/ip/$IP/$2
+ mkdir -p $CTDB_VARDIR/state/statd/ip/$IP
+ /bin/rm -f $CTDB_VARDIR/state/statd/ip/$IP/$2
done
;;
updatelocal)
@@ -59,25 +63,25 @@ case "$1" in
}
IP=`echo $LINE | cut -f2 -d:`
- mkdir -p $CTDB_BASE/state/statd/ip/$IP
+ mkdir -p $CTDB_VARDIR/state/statd/ip/$IP
- rm -f $CTDB_BASE/state/statd/ip/$IP.tar
- tar cfP $CTDB_BASE/state/statd/ip/$IP.tar $CTDB_BASE/state/statd/ip/$IP
+ rm -f $CTDB_VARDIR/state/statd/ip/$IP.tar
+ tar cfP $CTDB_VARDIR/state/statd/ip/$IP.tar $CTDB_VARDIR/state/statd/ip/$IP
- rm -f $CTDB_BASE/state/statd/ip/$IP.rec
- ctdb pfetch ctdb.tdb statd-state:$IP $CTDB_BASE/state/statd/ip/$IP.rec 2>/dev/null
+ rm -f $CTDB_VARDIR/state/statd/ip/$IP.rec
+ ctdb pfetch ctdb.tdb statd-state:$IP $CTDB_VARDIR/state/statd/ip/$IP.rec 2>/dev/null
[ "$?" = "0" ] || {
# something went wrong, try storing this data
echo No record. Store STATD state data for $IP
- ctdb pstore ctdb.tdb statd-state:$IP $CTDB_BASE/state/statd/ip/$IP.tar 2>/dev/null
+ ctdb pstore ctdb.tdb statd-state:$IP $CTDB_VARDIR/state/statd/ip/$IP.tar 2>/dev/null
continue
}
- cmp $CTDB_BASE/state/statd/ip/$IP.tar $CTDB_BASE/state/statd/ip/$IP.rec >/dev/null 2>/dev/null
+ cmp $CTDB_VARDIR/state/statd/ip/$IP.tar $CTDB_VARDIR/state/statd/ip/$IP.rec >/dev/null 2>/dev/null
[ "$?" = "0" ] || {
# something went wrong, try storing this data
echo Updated record. Store STATD state data for $IP
- ctdb pstore ctdb.tdb statd-state:$IP $CTDB_BASE/state/statd/ip/$IP.tar 2>/dev/null
+ ctdb pstore ctdb.tdb statd-state:$IP $CTDB_VARDIR/state/statd/ip/$IP.tar 2>/dev/null
continue
}
done
@@ -93,16 +97,16 @@ case "$1" in
}
IP=`echo $LINE | cut -f2 -d:`
- mkdir -p $CTDB_BASE/state/statd/ip/$IP
+ mkdir -p $CTDB_VARDIR/state/statd/ip/$IP
- rm -f $CTDB_BASE/state/statd/ip/$IP.rec
- ctdb pfetch ctdb.tdb statd-state:$IP $CTDB_BASE/state/statd/ip/$IP.rec 2>/dev/null
+ rm -f $CTDB_VARDIR/state/statd/ip/$IP.rec
+ ctdb pfetch ctdb.tdb statd-state:$IP $CTDB_VARDIR/state/statd/ip/$IP.rec 2>/dev/null
[ "$?" = "0" ] || {
continue
}
- rm -f $CTDB_BASE/state/statd/ip/$IP/*
- tar xfP $CTDB_BASE/state/statd/ip/$IP.rec
+ rm -f $CTDB_VARDIR/state/statd/ip/$IP/*
+ tar xfP $CTDB_VARDIR/state/statd/ip/$IP.rec
done
;;
@@ -181,8 +185,8 @@ case "$1" in
}
IP=`echo $LINE | cut -f2 -d:`
- ls $CTDB_BASE/state/statd/ip/$IP | while read CLIENT; do
- rm $CTDB_BASE/state/statd/ip/$IP/$CLIENT
+ ls $CTDB_VARDIR/state/statd/ip/$IP | while read CLIENT; do
+ rm $CTDB_VARDIR/state/statd/ip/$IP/$CLIENT
/usr/bin/smnotify --client=$CLIENT --ip=$IP --server=$ip --stateval=$STATE
/usr/bin/smnotify --client=$CLIENT --ip=$IP --server=$NFS_HOSTNAME --stateval=$STATE
STATE=`expr "$STATE" "+" "1"`