From 63d6e963c273dc8d61f783f07751ecde8b6399ec Mon Sep 17 00:00:00 2001 From: Thomas S Hatch Date: Sat, 28 Jul 2012 21:22:00 -0600 Subject: [PATCH] Take stdout redirection out of daemonization for #1096 --- salt/utils/__init__.py | 12 ++++++++---- 1 file changed, 8 insertions(+), 4 deletions(-) diff --git a/salt/utils/__init__.py b/salt/utils/__init__.py index 6d2ccf6e5040..f68096a38d96 100644 --- a/salt/utils/__init__.py +++ b/salt/utils/__init__.py @@ -179,10 +179,14 @@ def daemonize(): log.error(msg.format(exc.errno, exc.strerror)) sys.exit(1) - dev_null = open('/dev/null', 'rw') - os.dup2(dev_null.fileno(), sys.stdin.fileno()) - os.dup2(dev_null.fileno(), sys.stdout.fileno()) - os.dup2(dev_null.fileno(), sys.stderr.fileno()) + # A normal daemonization redirects the process output to /dev/null. + # Unfortunately when a python multiprocess is called the output is + # not cleanly redirected and the parent process dies when the + # multiprocessing process attemps to access stdout or err. + #dev_null = open('/dev/null', 'rw') + #os.dup2(dev_null.fileno(), sys.stdin.fileno()) + #os.dup2(dev_null.fileno(), sys.stdout.fileno()) + #os.dup2(dev_null.fileno(), sys.stderr.fileno()) def daemonize_if(opts, **kwargs):