#!/bin/bash
+usage() {
+cat <<EOF
+NAME:
+ migrate - script for migrating older LB server or proxy databases
+ to new schema required for transaction locking and USP
+ (United Server and Proxy)
+USAGE:
+ migrate -s|-p [-d db_name]
+
+ -s migrate old server DB to new version
+ -p migrate old proxy DB to new version
+ -d db_name non-default database name
+EOF
+
+}
+
+SERVER=""
+PROXY=""
+
+while getopts "spd:h" OPTION
+do
+ case "$OPTION" in
+ "s") SERVER=1
+ ;;
+
+ "p") PROXY=1
+ ;;
+
+ "d") DB_NAME=$OPTARG
+ ;;
+
+ "h") usage;
+ ;;
+
+ esac
+done
+
+if [ -z "$SERVER" -a -z "$PROXY" ]; then
+ usage;
+fi
+
+if [ "$SERVER" -a "$PROXY" ]; then
+ usage;
+fi
+
+exit 1;
+
# add new columns
mysql -u lbserver lbserver20 -e "ALTER TABLE jobs ADD proxy bool not null"
# flag all jobs as server jobs
-mysql -u lbserver lbserver20 -e "UPDATE jobs SET proxy='0'"
-mysql -u lbserver lbserver20 -e "UPDATE jobs SET server='1'"
+if [ "$SERVER" ]; then
+ mysql -u lbserver lbserver20 -e "UPDATE jobs SET proxy='0'"
+ mysql -u lbserver lbserver20 -e "UPDATE jobs SET server='1'"
+else
+ mysql -u lbserver lbserver20 -e "UPDATE jobs SET proxy='1'"
+ mysql -u lbserver lbserver20 -e "UPDATE jobs SET server='0'"
+fi
# for all greyjobs set a flag