summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorunknown <tomas@mc05.(none)>2004-04-14 15:46:39 +0200
committerunknown <tomas@mc05.(none)>2004-04-14 15:46:39 +0200
commit404bbc323fa44391a5e3d37f0cc93f7831a85fce (patch)
tree70ec5e072e39bc8d0fa07f9f56eb01e0ec63dcb7
parentf6686a6e76a6aaa59744769ca1df1b41ff92b34e (diff)
downloadmariadb-git-404bbc323fa44391a5e3d37f0cc93f7831a85fce.tar.gz
logging_ok:
Logging to logging@openlogging.org accepted stop_ndbcluster, ndb_config_2_node.ini, install_ndbcluster: new file BitKeeper/etc/logging_ok: Logging to logging@openlogging.org accepted
-rw-r--r--BitKeeper/etc/logging_ok1
-rwxr-xr-xmysql-test/ndb/install_ndbcluster148
-rw-r--r--mysql-test/ndb/ndb_config_2_node.ini133
-rwxr-xr-xmysql-test/ndb/stop_ndbcluster52
4 files changed, 334 insertions, 0 deletions
diff --git a/BitKeeper/etc/logging_ok b/BitKeeper/etc/logging_ok
index 9210c176e6e..55756692a18 100644
--- a/BitKeeper/etc/logging_ok
+++ b/BitKeeper/etc/logging_ok
@@ -150,6 +150,7 @@ tim@threads.polyesthetic.msg
tim@white.box
tim@work.mysql.com
tom@basil-firewall.home.com
+tomas@mc05.(none)
tonu@hundin.mysql.fi
tonu@volk.internalnet
tonu@x153.internalnet
diff --git a/mysql-test/ndb/install_ndbcluster b/mysql-test/ndb/install_ndbcluster
new file mode 100755
index 00000000000..dab94db759e
--- /dev/null
+++ b/mysql-test/ndb/install_ndbcluster
@@ -0,0 +1,148 @@
+#!/bin/sh
+# Copyright (C) 2004 MySQL AB
+# For a more info consult the file COPYRIGHT distributed with this file
+
+# This scripts starts the table handler ndbcluster
+
+# configurable parameters, make sure to change in mysqlcluterd as well
+port_base="22" # using ports port_base{"00","01", etc}
+fsdir=`pwd`
+# end configurable parameters
+
+libdir=`pwd`/../ndb/lib
+bindir=`pwd`/../ndb/bin
+
+pidfile=ndbcluster.pid
+
+while test $# -gt 0; do
+ case "$1" in
+ --initial)
+ flags_ndb=$flags_ndb" -i"
+ initial_ndb=1
+ ;;
+ --data-dir=*)
+ fsdir=`echo "$1" | sed -e "s;--data-dir=;;"`
+ ;;
+ --port-base=*)
+ port_base=`echo "$1" | sed -e "s;--port-base=;;"`
+ ;;
+ -- ) shift; break ;;
+ --* ) $ECHO "Unrecognized option: $1"; exit 1 ;;
+ * ) break ;;
+ esac
+ shift
+done
+
+exec_ndb=$bindir/ndb
+exec_mgmtsrvr=$bindir/mgmtsrvr
+fs_ndb=$fsdir/ndbcluster
+fs_mgm_1=$fs_ndb/1.ndb_mgm
+fs_ndb_2=$fs_ndb/2.ndb_db
+fs_ndb_3=$fs_ndb/3.ndb_db
+fs_name_2=$fs_ndb/node-2-fs
+fs_name_3=$fs_ndb/node-3-fs
+
+NDB_HOME=
+export NDB_CONNECTSTRING
+if [ ! -x $fsdir ]; then
+ echo "$fsdir missing"
+ exit 1
+fi
+if [ ! -x $exec_ndb ]; then
+ echo "$exec_ndb missing"
+ exit 1
+fi
+if [ ! -x $exec_mgmtsrv ]; then
+ echo "$exec_mgmtsrvr missing"
+ exit 1
+fi
+
+start_default_ndbcluster() {
+
+# do some checks
+
+NDB_CONNECTSTRING=
+
+if [ $initial_ndb ] ; then
+ mkdir $fs_ndb
+ mkdir $fs_mgm_1
+ mkdir $fs_ndb_2
+ mkdir $fs_ndb_3
+ mkdir $fs_name_2
+ mkdir $fs_name_3
+fi
+if [ -d "$fs_ndb" -a -d "$fs_mgm_1" -a -d "$fs_ndb_2" -a -d "$fs_ndb_3" -a -d "$fs_name_2" -a -d "$fs_name_3" ]; then :; else
+ echo "$fs_ndb filesystem directory does not exist"
+ exit 1
+fi
+
+# set som help variables
+
+ndb_host="localhost"
+ndb_port=$port_base"00"
+NDB_CONNECTSTRING_BASE="host=$ndb_host:$ndb_port;nodeid="
+
+
+# Start management server as deamon
+
+NDB_ID="1"
+NDB_CONNECTSTRING=$NDB_CONNECTSTRING_BASE$NDB_ID
+
+# Edit file system path and ports in config file
+
+if [ $initial_ndb ] ; then
+sed \
+ -e s,"CHOOSE_HOSTNAME_".*,"$ndb_host",g \
+ -e s,"CHOOSE_FILESYSTEM_NODE_2","$fs_name_2",g \
+ -e s,"CHOOSE_FILESYSTEM_NODE_3","$fs_name_3",g \
+ -e s,"CHOOSE_PORT_BASE",$port_base,g \
+ < ndb/ndb_config_2_node.ini \
+ > "$fs_mgm_1/config.ini"
+fi
+
+if ( cd $fs_mgm_1 ; echo $NDB_CONNECTSTRING > Ndb.cfg ; $exec_mgmtsrvr -d -c config.ini ) ; then :; else
+ echo "Unable to start $exec_mgmtsrvr from `pwd`"
+ exit 1
+fi
+
+cat `find $fs_ndb -name 'node*.pid'` > $pidfile
+
+# Start database node
+
+NDB_ID="2"
+NDB_CONNECTSTRING=$NDB_CONNECTSTRING_BASE$NDB_ID
+( cd $fs_ndb_2 ; echo $NDB_CONNECTSTRING > Ndb.cfg ; $exec_ndb -d $flags_ndb & )
+
+cat `find $fs_ndb -name 'node*.pid'` > $pidfile
+
+# Start database node
+
+NDB_ID="3"
+NDB_CONNECTSTRING=$NDB_CONNECTSTRING_BASE$NDB_ID
+( cd $fs_ndb_3 ; echo $NDB_CONNECTSTRING > Ndb.cfg ; $exec_ndb -d $flags_ndb & )
+
+cat `find $fs_ndb -name 'node*.pid'` > $pidfile
+
+# Start management client
+
+sleep 5
+echo "show" | $bindir/mgmtclient $ndb_host $ndb_port
+
+# test if Ndb Cluster starts properly
+
+NDB_ID="11"
+NDB_CONNECTSTRING=$NDB_CONNECTSTRING_BASE$NDB_ID
+#if ( export LD_LIBRARY_PATH=$libdir ; $bindir/list_tables ) | grep "NDBT_ProgramExit: 0 - OK"; then :; else
+if ( export LD_LIBRARY_PATH=$libdir ; $bindir/waiter ) | grep "NDBT_ProgramExit: 0 - OK"; then :; else
+ echo "Ndbcluster startup failed"
+ exit 1
+fi
+
+echo $NDB_CONNECTSTRING > Ndb.cfg
+
+cat `find $fs_ndb -name 'node*.pid'` > $pidfile
+}
+
+start_default_ndbcluster
+
+exit 0
diff --git a/mysql-test/ndb/ndb_config_2_node.ini b/mysql-test/ndb/ndb_config_2_node.ini
new file mode 100644
index 00000000000..9e0f8254c78
--- /dev/null
+++ b/mysql-test/ndb/ndb_config_2_node.ini
@@ -0,0 +1,133 @@
+[DB DEFAULT]
+#NoOfFragmentLogfiles: 1
+#TimeBetweenLocalCheckpoints: 31
+NoOfReplicas: 2
+
+[COMPUTER]
+Id: 1
+ByteOrder: Little
+HostName: CHOOSE_HOSTNAME_1
+
+[COMPUTER]
+Id: 2
+ByteOrder: Little
+HostName: CHOOSE_HOSTNAME_2
+
+[COMPUTER]
+Id: 3
+ByteOrder: Little
+HostName: CHOOSE_HOSTNAME_3
+
+[COMPUTER]
+Id: 4
+ByteOrder: Little
+HostName: CHOOSE_HOSTNAME_4
+
+[COMPUTER]
+Id: 5
+ByteOrder: Little
+HostName: CHOOSE_HOSTNAME_5
+
+[COMPUTER]
+Id: 6
+ByteOrder: Little
+HostName: CHOOSE_HOSTNAME_6
+
+[COMPUTER]
+Id: 7
+ByteOrder: Little
+HostName: CHOOSE_HOSTNAME_7
+
+[MGM]
+Id: 1
+ExecuteOnComputer: 1
+PortNumber: CHOOSE_PORT_BASE00
+PortNumberStats: CHOOSE_PORT_BASE01
+
+
+[DB]
+Id: 2
+ExecuteOnComputer: 2
+FileSystemPath: CHOOSE_FILESYSTEM_NODE_2
+
+[DB]
+Id: 3
+ExecuteOnComputer: 3
+FileSystemPath: CHOOSE_FILESYSTEM_NODE_3
+
+[API]
+Id: 11
+ExecuteOnComputer: 4
+
+[API]
+Id: 12
+ExecuteOnComputer: 5
+
+[API]
+Id: 13
+ExecuteOnComputer: 6
+
+[API]
+Id: 14
+ExecuteOnComputer: 7
+
+# Mgmtsrvr connections
+
+[TCP]
+NodeId1: 1
+NodeId2: 2
+PortNumber: CHOOSE_PORT_BASE02
+
+[TCP]
+NodeId1: 1
+NodeId2: 3
+PortNumber: CHOOSE_PORT_BASE03
+
+# Ndb nodes connections
+
+[TCP]
+NodeId1: 2
+NodeId2: 3
+PortNumber: CHOOSE_PORT_BASE04
+
+# Api connections
+
+[TCP]
+NodeId1: 11
+NodeId2: 2
+PortNumber: CHOOSE_PORT_BASE05
+
+[TCP]
+NodeId1: 11
+NodeId2: 3
+PortNumber: CHOOSE_PORT_BASE06
+
+[TCP]
+NodeId1: 12
+NodeId2: 2
+PortNumber: CHOOSE_PORT_BASE07
+
+[TCP]
+NodeId1: 12
+NodeId2: 3
+PortNumber: CHOOSE_PORT_BASE08
+
+[TCP]
+NodeId1: 13
+NodeId2: 2
+PortNumber: CHOOSE_PORT_BASE09
+
+[TCP]
+NodeId1: 13
+NodeId2: 3
+PortNumber: CHOOSE_PORT_BASE10
+
+[TCP]
+NodeId1: 14
+NodeId2: 2
+PortNumber: CHOOSE_PORT_BASE11
+
+[TCP]
+NodeId1: 14
+NodeId2: 3
+PortNumber: CHOOSE_PORT_BASE12
diff --git a/mysql-test/ndb/stop_ndbcluster b/mysql-test/ndb/stop_ndbcluster
new file mode 100755
index 00000000000..09e22cf69c4
--- /dev/null
+++ b/mysql-test/ndb/stop_ndbcluster
@@ -0,0 +1,52 @@
+#!/bin/sh
+# Copyright (C) 2004 MySQL AB
+# For a more info consult the file COPYRIGHT distributed with this file
+
+# This scripts stops the table handler ndbcluster
+
+bindir=`pwd`/../ndb/bin
+pidfile=ndbcluster.pid
+cfgfile=Ndb.cfg
+
+while test $# -gt 0; do
+ case "$1" in
+ --port-base=*)
+ port_base=`echo "$1" | sed -e "s;--port-base=;;"`
+ ;;
+ -- ) shift; break ;;
+ --* ) $ECHO "Unrecognized option: $1"; exit 1 ;;
+ * ) break ;;
+ esac
+ shift
+done
+
+stop_default_ndbcluster() {
+
+if [ ! -f $pidfile ] ; then
+ exit 0
+fi
+
+if [ ! -f $cfgfile ] ; then
+ echo "$cfgfile missing"
+ exit 1
+fi
+
+ndb_host=`cat $cfgfile | sed -e "s,.*host=\(.*\)\:.*,\1,1"`
+ndb_port=`cat $cfgfile | sed -e "s,.*host=$ndb_host\:\([0-9]*\).*,\1,1"`
+
+# Start management client
+
+exec_mgmtclient="$bindir/mgmtclient --try-reconnect=1 $ndb_host $ndb_port"
+
+echo "$exec_mgmtclient"
+echo "all stop" | $exec_mgmtclient
+
+sleep 5
+
+kill `cat $pidfile`
+rm $pidfile
+}
+
+stop_default_ndbcluster
+
+exit 0