def mainWithMovedFromCounter(movedFrom): global movedFromCount si = singleinstance("/tmp/archivematicaMCPTransferDPID") if si.alreadyrunning(): print >>sys.stderr, "Another instance is already running. Killing PID:", si.pid si.kill() movedFromCount = movedFrom main() databaseInterface.reconnect() debugMonitor()
'root': { 'handlers': ['logfile'], 'level': 'INFO', } } if __name__ == '__main__': logging.config.dictConfig(LOGGING_CONFIG) logger = logging.getLogger("archivematica.mcp.server") # Replace exception handler with one that logs exceptions sys.excepthook = _except_hook_log_everything signal.signal(signal.SIGINT, signal_handler) signal.signal(signal.SIGTERM, signal_handler) si = singleinstance(config.get('MCPServer', "singleInstancePIDFile")) if si.alreadyrunning(): logger.warning('Another instance is already running. Killing PID %s', si.pid) si.kill() logger.info('This PID: %s', si.pid) import getpass logger.info('User: %s', getpass.getuser()) os.setuid(getpwnam('archivematica').pw_uid) t = threading.Thread(target=debugMonitor) t.daemon = True t.start() t = threading.Thread(target=flushOutputs)
def cleanupOldDbEntriesOnNewRun(): sql = """DELETE FROM Jobs WHERE Jobs.currentStep = 'Awaiting decision';""" databaseInterface.runSQL(sql) sql = """UPDATE Jobs SET currentStep='Failed' WHERE currentStep='Executing command(s)';""" databaseInterface.runSQL(sql) sql = """UPDATE Tasks SET exitCode=-1, stdError='MCP shut down while processing.' WHERE exitCode IS NULL;""" databaseInterface.runSQL(sql) if __name__ == '__main__': signal.signal(signal.SIGINT, signal_handler) signal.signal(signal.SIGTERM, signal_handler) si = singleinstance(config.get('MCPServer', "singleInstancePIDFile")) if si.alreadyrunning(): print >>sys.stderr, "Another instance is already running. Killing PID:", si.pid si.kill() elif False: #testing single instance stuff while 1: print "psudo run" time.sleep(3) print "This PID: ", si.pid import getpass print "user: ", getpass.getuser() os.setuid(333) t = threading.Thread(target=debugMonitor) t.daemon = True