diff options
Diffstat (limited to 'debian')
-rw-r--r-- | debian/mongod.upstart | 22 |
1 files changed, 21 insertions, 1 deletions
diff --git a/debian/mongod.upstart b/debian/mongod.upstart index ebfa006ad8b..b76746123ca 100644 --- a/debian/mongod.upstart +++ b/debian/mongod.upstart @@ -22,6 +22,26 @@ stop on runlevel [06] script ENABLE_MONGOD="yes" + CONF=/etc/mongod.conf + DAEMON=/usr/bin/mongod + DAEMONUSER=${DAEMONUSER:-mongodb} + if [ -f /etc/default/mongod ]; then . /etc/default/mongod; fi - if [ "x$ENABLE_MONGOD" = "xyes" ]; then exec start-stop-daemon --start --quiet --chuid mongodb --exec /usr/bin/mongod -- --config /etc/mongod.conf; fi + + # Handle NUMA access to CPUs (SERVER-3574) + # This verifies the existence of numactl as well as testing that the command works + NUMACTL_ARGS="--interleave=all" + if which numactl >/dev/null 2>/dev/null && numactl $NUMACTL_ARGS ls / >/dev/null 2>/dev/null + then + NUMACTL="$(which numactl) -- $NUMACTL_ARGS" + DAEMON_OPTS=${DAEMON_OPTS:-"--config $CONF"} + else + NUMACTL="" + DAEMON_OPTS="-- "${DAEMON_OPTS:-"--config $CONF"} + fi + + if [ "x$ENABLE_MONGOD" = "xyes" ] + then + exec start-stop-daemon --start --chuid $DAEMONUSER --exec $NUMACTL $DAEMON $DAEMON_OPTS + fi end script |