Changeset: 5d49a55cca03 for MonetDB
URL: http://dev.monetdb.org/hg/MonetDB?cmd=changeset;node=5d49a55cca03
Modified Files:
        sql/debian/monetdb5-sql.default
        sql/debian/monetdb5-sql.init.d
Branch: Jun2010
Log Message:

Backported all debian packaging fixes from default to Jun2010.


diffs (203 lines):

diff -r dc19c5e2ef94 -r 5d49a55cca03 sql/debian/monetdb5-sql.default
--- a/sql/debian/monetdb5-sql.default   Tue Jun 22 13:04:17 2010 +0200
+++ b/sql/debian/monetdb5-sql.default   Tue Jun 22 13:27:59 2010 +0200
@@ -2,10 +2,8 @@
 # sourced by /etc/init.d/monetdb5-sql
 # installed at /etc/default/monetdb5-sql by the maintainer scripts
 
-#
-# This is a POSIX shell fragment
-#
+# should merovingian be started at system startup (yes/no)
+STARTUP="no"
 
-# Additional options that are passed to the Daemon.
-DAEMON_OPTS=""
-STARTUP="no"
+# should all databases be started (yes/no)
+START_ALL_DBS="no"
diff -r dc19c5e2ef94 -r 5d49a55cca03 sql/debian/monetdb5-sql.init.d
--- a/sql/debian/monetdb5-sql.init.d    Tue Jun 22 13:04:17 2010 +0200
+++ b/sql/debian/monetdb5-sql.init.d    Tue Jun 22 13:27:59 2010 +0200
@@ -11,25 +11,33 @@
 
 PATH=/sbin:/usr/sbin:/bin:/usr/bin
 DAEMON=/usr/bin/merovingian
-NAME=mserver5-sql
+NAME=merovingian
 DESC="MonetDB SQL server"
 
 test -x $DAEMON || exit 0
 
+umask 022
+
 LOGDIR=/var/log/MonetDB
-PIDFILE=/var/run/MonetDB/merovingian.pid
-DODTIME=1                   # Time to wait for the server to die, in seconds
-                            # If this value is set too low you might not
-                            # let some servers to die gracefully and
-                            # 'restart' will not work
+PIDFILE=/var/run/MonetDB/$NAME.pid
 
-# Include mserver5-sql defaults if available
-if [ -f /etc/default/$NAME ] ; then
-    . /etc/default/$NAME
+# Include monetdb5-sql defaults if available
+if [ -f /etc/default/monetdb5-sql ] ; then
+    . /etc/default/monetdb5-sql
 fi
 
-running_pid()
-{
+set -e
+
+init() {
+    if [ ! -d /var/run/MonetDB ]; then
+        mkdir /var/run/MonetDB
+    fi
+    chown -R monetdb.monetdb /var/run/MonetDB
+    chmod 775 /var/run/MonetDB
+    rm -f /var/run/MonetDB/*
+}
+
+running_pid() {
     # Check if a given process pid's cmdline matches a given name
     pid=$1
     name=$2
@@ -41,12 +49,7 @@
     return 0
 }
 
-running()
-{
-# Check if the process is running looking at /proc
-# (works for all users)
-
-    # No pidfile, probably no daemon present
+running() {
     [ ! -f "$PIDFILE" ] && return 1
     # Obtain the pid and check it against the binary name
     pid=`cat $PIDFILE`
@@ -54,84 +57,46 @@
     return 0
 }
 
-force_stop() {
-# Forcefully kill the process
-    [ ! -f "$PIDFILE" ] && return
-    if running ; then
-        kill -15 $pid
-        # Is it really dead?
-        [ -n "$DODTIME" ] && sleep "$DODTIME"s
-        if running ; then
-            kill -9 $pid
-            [ -n "$DODTIME" ] && sleep "$DODTIME"s
-            if running ; then
-                echo "Cannot kill $NAME (pid=$pid)!"
-                exit 1
-            fi
-        fi
-    fi
-    rm -f $PIDFILE
-    return 0
-}
-
 case "$1" in
   start)
+        if [ "$STARTUP" != "yes" ]; then
+            echo "can't start, should be enabled first by change STARTUP to 
yes in /etc/default/monetdb5-sql"
+            exit 1
+        fi
+
+        if running; then
+            echo "$NAME is already running"
+            exit 1
+        fi
+
+        init
+
         echo -n "Starting $DESC: "
-        start-stop-daemon --start --quiet --pidfile $PIDFILE \
-            --exec $DAEMON -- $DAEMON_OPTS
+        start-stop-daemon --start --exec $DAEMON -c monetdb:monetdb -- 
$DAEMON_OPTS
         if running ; then
             echo "$NAME."
         else
-            echo " ERROR."
+            echo " ERROR, $NAME didn't start"
+        fi
+
+        # TODO: this can be removed when fabian fixes the socket permission bug
+        sleep 3
+        chmod g+rw /var/MonetDB5/dbfarm/.merovingian_*
+        chmod g+rx /var/MonetDB5/dbfarm
+
+        if [ "$START_ALL_DBS" = "yes" ]; then
+             /bin/su -c "/usr/bin/monetdb start -a" -s /bin/bash monetdb
         fi
         ;;
   stop)
         echo -n "Stopping $DESC: "
-        start-stop-daemon --stop --quiet --pidfile $PIDFILE \
-            --exec $DAEMON
+        start-stop-daemon --stop --pidfile $PIDFILE --exec $DAEMON
         echo "$NAME."
         ;;
-  force-stop)
-        echo -n "Forcefully stopping $DESC: "
-        force_stop
-        if ! running ; then
-            echo "$NAME."
-        else
-            echo " ERROR."
-        fi
-        ;;
-  #reload)
-        #
-        # If the daemon can reload its config files on the fly
-        # for example by sending it SIGHUP, do it here.
-        #
-        # If the daemon responds to changes in its config file
-        # directly anyway, make this a do-nothing entry.
-        #
-        # echo "Reloading $DESC configuration files."
-        # start-stop-daemon --stop --signal 1 --quiet --pidfile \
-        #       $PIDFILE --exec $DAEMON
-  #;;
-  force-reload)
-        #
-        # If the "reload" option is implemented, move the "force-reload"
-        # option to the "reload" entry above. If not, "force-reload" is
-        # just the same as "restart" except that it does nothing if the
-        # daemon isn't already running.
-        # check wether $DAEMON is running. If so, restart
-        start-stop-daemon --stop --test --quiet --pidfile \
-            $PIDFILE --exec $DAEMON \
-            && $0 restart \
-            || exit 0
-        ;;
   restart)
-    echo -n "Restarting $DESC: "
-        start-stop-daemon --stop --quiet --pidfile \
-            $PIDFILE --exec $DAEMON
-        [ -n "$DODTIME" ] && sleep $DODTIME
-        start-stop-daemon --start --quiet --pidfile \
-            $PIDFILE --exec $DAEMON -- $DAEMON_OPTS
-        echo "$NAME."
+        $0 stop
+        sleep 5
+        $0 start
         ;;
   status)
     echo -n "$NAME is "
@@ -143,9 +108,7 @@
     fi
     ;;
   *)
-    N=/etc/init.d/$NAME
-    # echo "Usage: $N {start|stop|restart|reload|force-reload}" >&2
-    echo "Usage: $N {start|stop|restart|force-reload|status|force-stop}" >&2
+    echo "Usage: $0 {start|stop|restart|status}" >&2
     exit 1
     ;;
 esac
_______________________________________________
Checkin-list mailing list
Checkin-list@monetdb.org
http://mail.monetdb.org/mailman/listinfo/checkin-list

Reply via email to