[mongodb] mongod.init won't exit before preallocating is done

Marek Skalický mskalick at fedoraproject.org
Wed Feb 11 10:56:38 UTC 2015


commit 8bee78d1d91dbb64c8a02f51fb7d874dc16f5819
Author: Marek Skalický <mskalick at redhat.com>
Date:   Wed Feb 11 11:17:38 2015 +0100

    mongod.init won't exit before preallocating is done
    
    - Disabled -Werror (dont't build with gcc 5.0)
    - Changed permissions of mognodb-test/var directory to 755
    - Changed names of configuration and log files

 mongod.init    |   14 +++++++-------
 mongod.service |    2 +-
 mongodb.spec   |    1 +
 mongos.init    |   22 +++++++++-------------
 mongos.service |    2 +-
 mongos.sysconf |    2 +-
 6 files changed, 20 insertions(+), 23 deletions(-)
---
diff --git a/mongod.init b/mongod.init
index fedbe6a..f18720e 100644
--- a/mongod.init
+++ b/mongod.init
@@ -1,23 +1,23 @@
 #!/bin/sh
 #
-# mongod       init file for starting up the MongoDB server
+# mongod       init file for starting up the mongoDB server
 #
 # chkconfig:   - 90 10
-# description: Starts and stops the MongDB daemon that handles all \
+# description: Starts and stops the mongoDB daemon that handles all \
 #              database requests.
 
 # Source function library.
 . /etc/rc.d/init.d/functions
 
-exec="/usr/bin/mongod"
 prog="mongod"
-logfile="/var/log/mongodb/mongod.log"
+exec="/usr/bin/$prog"
+logfile=${LOGFILE-/var/log/mongodb/$prog.log}
 
 [ -e /etc/sysconfig/$prog ] && . /etc/sysconfig/$prog
 
-pidfile=${PIDFILE-/var/run/mongodb/mongod.pid}
+pidfile=${PIDFILE-/var/run/mongodb/$prog.pid}
 options="$OPTIONS"
-lockfile="/var/lock/subsys/mongod"
+lockfile="/var/lock/subsys/$prog"
 
 # Nicer version of killproc that does not kill mongodb when it takes
 # a long time to shut down and does not hang for a long time when mongo
@@ -96,7 +96,7 @@ killproc_nice() {
 start() {
     [ -x $exec ] || exit 5
     echo -n $"Starting $prog: "
-    daemon --pidfile=${pidfile} --user mongodb "$exec $options run >> $logfile 2>&1 &"
+    daemon --pidfile=${pidfile} --user mongodb "$exec $options run >> $logfile 2>&1"
     retval=$?
     echo
     [ $retval -eq 0 ] && touch $lockfile
diff --git a/mongod.service b/mongod.service
index b7486d4..87e90ea 100644
--- a/mongod.service
+++ b/mongod.service
@@ -5,8 +5,8 @@ After=syslog.target network.target
 [Service]
 Type=forking
 User=mongodb
-PIDFile=/var/run/mongodb/mongod.pid
 EnvironmentFile=/etc/sysconfig/mongod
+PIDFile=${PIDFILE-/var/run/mongodb/mongod.pid}
 ExecStart=/usr/bin/mongod $OPTIONS run
 PrivateTmp=true
 LimitNOFILE=64000
diff --git a/mongodb.spec b/mongodb.spec
index fa92cd2..99f059b 100644
--- a/mongodb.spec
+++ b/mongodb.spec
@@ -391,6 +391,7 @@ fi
 
 %changelog
 * Wed Feb 4 2015 Marek Skalicky <mskalick at redhat.com> - 2.6.7-3
+- mongod.init won't exit before preallocating is done
 - Disabled -Werror (dont't build with gcc 5.0)
 - Changed permissions of mognodb-test/var directory to 755
 - Changed names of configuration and log files
diff --git a/mongos.init b/mongos.init
index 38fca76..ea45b35 100644
--- a/mongos.init
+++ b/mongos.init
@@ -1,21 +1,21 @@
 #!/bin/sh
 #
-# mongos       init file for starting up the MongoDB shard server
+# mongos       init file for starting up the mongoDB shard server
 #
 # chkconfig:   - 90 10
-# description: Starts and stops the MongoDB shard daemon that handles all \
+# description: Starts and stops the mongoDB shard daemon that handles all \
 #              database requests.
 
 # Source function library.
 . /etc/rc.d/init.d/functions
 
-exec="/usr/bin/mongos"
 prog="mongos"
-logfile="/var/log/mongodb/mongos.log"
+exec="/usr/bin/$prog"
+logfile=${LOGFILE-/var/log/mongodb/$prog.log}
 
 [ -e /etc/sysconfig/$prog ] && . /etc/sysconfig/$prog
 
-pidfile=${PIDFILE-/var/run/mongodb/mongos.pid}
+pidfile=${PIDFILE-/var/run/mongodb/$prog.pid}
 options="$OPTIONS"
 lockfile="/var/lock/subsys/$prog"
 
@@ -95,13 +95,8 @@ killproc_nice() {
 
 start() {
     [ -x $exec ] || exit 5
-    printf '%s' $"Starting $prog: "
-    # why the hell is this not checked in /etc/rc.d/init.d/functions ?
-    [ "$(id -u)" -eq 0 ] || exit 4
-    # FIXME check mongod source - if parent waits after forking for childs
-    #   message about proper initialization
-    daemon --pidfile="$pidfile" --user mongodb \
-            "$exec $options >> $logfile 2>&1"
+    echo -n $"Starting $prog: "
+    daemon --pidfile=${pidfile} --user mongodb "$exec $options >> $logfile 2>&1"
     retval=$?
     echo
     [ $retval -eq 0 ] && touch $lockfile
@@ -109,7 +104,7 @@ start() {
 }
 
 stop() {
-    printf '%s' $"Stopping $prog: "
+    echo -n $"Stopping $prog: "
     killproc_nice -p ${pidfile} -d 300 $prog
     retval=$?
     echo
@@ -139,6 +134,7 @@ rh_status_q() {
     rh_status >/dev/null 2>&1
 }
 
+
 case "$1" in
     start)
         rh_status_q && exit 0
diff --git a/mongos.service b/mongos.service
index 749327d..8e327ee 100644
--- a/mongos.service
+++ b/mongos.service
@@ -5,8 +5,8 @@ After=syslog.target network.target
 [Service]
 Type=forking
 User=mongodb
-PIDFile=/var/run/mongodb/mongos.pid
 EnvironmentFile=/etc/sysconfig/mongos
+PIDFile=${PIDFILE-/var/run/mongodb/mongos.pid}
 ExecStart=/usr/bin/mongos $OPTIONS
 PrivateTmp=true
 LimitNOFILE=64000
diff --git a/mongos.sysconf b/mongos.sysconf
index 11a1ead..1b2edd1 100644
--- a/mongos.sysconf
+++ b/mongos.sysconf
@@ -1 +1 @@
-OPTIONS="-f /etc/mongos.conf"
+OPTIONS="--quiet -f /etc/mongos.conf"


More information about the scm-commits mailing list