[Erp5-report] r24537 - /erp5/trunk/products/TIDStorage/bin/server.py

nobody at svn.erp5.org nobody at svn.erp5.org
Mon Nov 10 11:11:19 CET 2008


Author: vincent
Date: Mon Nov 10 11:11:19 2008
New Revision: 24537

URL: http://svn.erp5.org?rev=24537&view=rev
Log:
Move logfile and pidfile opening to first process, to let user view errors when those fiels cannot be opened.

Modified:
    erp5/trunk/products/TIDStorage/bin/server.py

Modified: erp5/trunk/products/TIDStorage/bin/server.py
URL: http://svn.erp5.org/erp5/trunk/products/TIDStorage/bin/server.py?rev=24537&r1=24536&r2=24537&view=diff
==============================================================================
--- erp5/trunk/products/TIDStorage/bin/server.py [utf8] (original)
+++ erp5/trunk/products/TIDStorage/bin/server.py [utf8] Mon Nov 10 11:11:19 2008
@@ -734,17 +734,20 @@
 signal.signal(signal.SIGTERM, TERMHandler)
 
 if options.fork:
+  os.chdir('/')
+  os.umask(027)
+  logfile = LogFile(options.logfile_name)
+  pidfile = open(options.pidfile_name, 'w')
   pid = os.fork()
   if pid == 0:
-    os.umask(027)
     os.setsid()
     pid = os.fork()
     if pid == 0:
+      pidfile.close()
       os.close(0)
       os.close(1)
       os.close(2)
-      sys.stdout = sys.stderr = LogFile(options.logfile_name)
-      os.chdir('/')
+      sys.stdout = sys.stderr = logfile
       try:
         main(options.address, options.port)
       except:
@@ -755,12 +758,10 @@
       else:
         log('Exited normaly.')
     else:
-      pidfile = open(options.pidfile_name, 'w')
       pidfile.write(str(pid))
       pidfile.close()
       os._exit(0)
   else:
-    # TODO: monitor child startup to make it easier to use.
     os._exit(0)
 else:
   main(options.address, options.port)




More information about the Erp5-report mailing list