~ubuntu-branches/ubuntu/trusty/drizzle/trusty

« back to all changes in this revision

Viewing changes to debian/drizzle-server.init

  • Committer: Bazaar Package Importer
  • Author(s): Monty Taylor
  • Date: 2010-10-02 14:17:48 UTC
  • mfrom: (1.1.1 upstream)
  • mto: (2.1.17 sid)
  • mto: This revision was merged to the branch mainline in revision 3.
  • Revision ID: james.westby@ubuntu.com-20101002141748-m6vbfbfjhrw1153e
Tags: 2010.09.1802-1
* New upstream release.
* Removed pid-file argument hack.
* Updated GPL-2 address to be new address.
* Directly copy in drizzledump.1 since debian doesn't have sphinx 1.0 yet.
* Link to jquery from libjs-jquery. Add it as a depend.
* Add drizzled.8 symlink to the install files.

Show diffs side-by-side

added added

removed removed

Lines of Context:
45
45
#
46
46
# Usage: void drizzled_get_param option
47
47
drizzled_get_param() {
48
 
        $DAEMON --print-defaults \
49
 
                | tr " " "\n" \
50
 
                | grep -- "--$1" \
51
 
                | tail -n 1 \
52
 
                | cut -d= -f2
 
48
        $DAEMON --help --user=${DRIZZLE_USER} \
 
49
    | grep "^$1" \
 
50
    | awk '{print $2}'
53
51
}
54
 
PIDFILE=`drizzled_get_param pid-file`
55
 
DATADIR=`drizzled_get_param datadir`
56
 
[ -z $PIDFILE ] && DATADIR=/var/lib/drizzle
57
 
[ -z $PIDFILE ] && PIDFILE=$DATADIR/`hostname -s`.pid
 
52
# datadir and pidfile are broken at the moment, use the debian defaults here:
 
53
#PIDFILE=`drizzled_get_param pid-file`
 
54
#DATADIR=`drizzled_get_param datadir`
 
55
#[ -z $DATADIR ] && DATADIR=/var/lib/drizzle
 
56
#[ -z $PIDFILE ] && PIDFILE=$DATADIR/`hostname -s`.pid
 
57
DATADIR=/var/lib/drizzle
 
58
PIDFILE=$DATADIR/`hostname -s`.pid
 
59
 
58
60
 
59
61
## Checks if there is a server running and if so if it is accessible.
60
62
#
79
81
    fi
80
82
}
81
83
 
 
84
# Checks to see if something is already running on the port we want to use
 
85
check_protocol_port() {
 
86
    local service=$1
 
87
 
 
88
    port=`drizzled_get_param $1`
 
89
 
 
90
    if [ "x$port" != "x" ] ; then
 
91
        count=`netstat --listen --numeric-ports | grep \:$port | grep -c . `
 
92
 
 
93
        if [ $count -ne 0 ]; then
 
94
            log_failure_msg "The selected $service port ($port) seems to be in use by another program "
 
95
            log_failure_msg "Please select another port to use for $service"
 
96
            return 1
 
97
        fi
 
98
    fi
 
99
    return 0
 
100
}
 
101
 
82
102
#
83
103
# main()
84
104
#
89
109
      install -d -o${DRIZZLE_USER} -g${DRIZZLE_USER} -m750 "${DATADIR}"
90
110
    # Start daemon
91
111
    log_daemon_msg "Starting Drizzle database server" "drizzled"
92
 
    start_daemon -b -p "$PIDFILE" "$DAEMON --chuid $DRIZZLE_USER"  "--datadir=$DATADIR" > $LOG 2>&1 &
93
 
    for i in 1 2 3 4 5 6 7 8 9 10 11 12 13 14; do
94
 
      sleep 1
95
 
      if drizzled_status check_alive nowarn ; then break; fi
96
 
    done
97
 
    if drizzled_status check_alive warn; then
98
 
      #log_progress_message "drizzled"
99
 
      log_end_msg 0
100
 
    else
101
 
      log_end_msg 1
102
 
      log_failure_msg "Please take a look at the syslog"
103
 
    fi
 
112
    check_protocol_port mysql-protocol-port || log_end_msg 0
 
113
    check_protocol_port drizzle-protocol-port || log_end_msg 0
 
114
    start_daemon -b -p "$PIDFILE" "$DAEMON --chuid $DRIZZLE_USER" "--datadir=$DATADIR" > $LOG 2>&1 &
 
115
    log_progress_msg "drizzled"
 
116
    log_end_msg 0
104
117
  ;;
105
118
 
106
119
  'stop')
107
120
    log_daemon_msg "Stopping Drizzle database server" "drizzled"
108
 
    if ! drizzled_status check_dead nowarn; then
109
 
      set +e
110
 
      shutdown_out=`$DRIZZLE --shutdown 2>&1`
111
 
      set -e
112
 
    fi
113
 
    if ! drizzled_status check_dead warn; then
114
 
      log_end_msg 1
115
 
      log_failure_msg "Please stop Drizzled manually."
116
 
      exit -1
117
 
    else
118
 
      log_end_msg 0
119
 
    fi
 
121
    if [ -f "$PIDFILE" ]; then
 
122
        killproc -p "$PIDFILE" "$DAEMON"
 
123
        log_progress_msg "drizzled"
 
124
    fi
 
125
    log_end_msg 0
120
126
  ;;
121
127
 
122
128
  'restart'|'force-reload')