Пример #1
0
 def stop(self):
     MasterManager.bigGranularityLock.acquire()
     for master in MasterManager.masterqueue:
         log.info('start to kill masters')
         process.stop_process(master.get_port())
     MasterManager.masterqueue = deque()
     MasterManager.bigGranularityLock.release()
Пример #2
0
 def stop(self):
     WorkerManager.bigGranularityLock.acquire()
     for worker in WorkerManager.workerqueue:
         log.info('start to kill workers')
         process.stop_process(worker.get_port())
     WorkerManager.workerqueue = deque()
     WorkerManager.workerqueue = deque()
     WorkerManager.bigGranularityLock.release()
Пример #3
0
def stop_s3transfer(isUserCommand=True):
    try:
        s = xmlrpclib.ServerProxy('http://127.0.0.1:'+str(port.ManagerPort.JobManager))
        s.get_status()
        stringForPrint = s.stop()
        if stringForPrint:
            print stringForPrint.strip('\n')
        log.info('start to kill jobmanager')
        process.stop_process(port.ManagerPort.JobManager)
    except Exception,e:
        pass
Пример #4
0
 def deletetask(self, taskID):
     try:
         WorkerManager.bigGranularityLock.acquire()
         log.info('start to delete task:' + taskID)
         for worker in WorkerManager.workerqueue:
             if worker.get_task() and taskID == worker.get_task()['ID']:
                 process.stop_process(worker.get_port())
                 worker.get_task().set_isDeleted(True)
                 break
         log.info('deleted task:' + taskID)
         return True
     except Exception, e:
         log.info(e)
         return False
Пример #5
0
    def deletejob(self, jobID):
        MasterManager.bigGranularityLock.acquire()
        log.info('start to delete job:' + jobID)
        for master in MasterManager.masterqueue:
            job = master.get_job()
            if job and jobID == job['job-ID']:
                if delete_job_from_master(master.get_port(), jobID) == True:
                    process.stop_process(master.get_port())
                    if start_master_with_port(master.get_port()):
                        master.set_status(status.MASTER.ready)
                    else:
                        MasterManager.masterqueue.remove(master)
                break

        log.info('deleted job:' + jobID)
        MasterManager.bigGranularityLock.release()
        return True
Пример #6
0
 def send_message(self, messageAttr):
     try:
         MasterManager.bigGranularityLock.acquire()
         message = Message().with_attribute(messageAttr)
         port = message.get_port()
         log.info('receive message from master:' + str(port) + ', ' +
                  'job:' + str(message.get_ID()) + '')
         log.info(messageAttr)
         isFindFlag = 0
         for master in MasterManager.masterqueue:
             if str(master.get_port()) == str(port) and message.get_ID(
             ) == master.get_job()['job-ID']:
                 isFindFlag = 1
                 if message.get_isSuccess() == False:
                     process.stop_process(master.get_port())
                     MasterManager.masterqueue.remove(master)
                 else:
                     master.set_status(status.MASTER.ready)
                     master.set_job(None)
                 break
         if isFindFlag == 0:
             log.info('we didn\'t have any record of ' + message.get_ID())
     except Exception, e:
         log.info(e)
Пример #7
0
def stop_s3transfer(isUserCommand=True):
    try:
        s = xmlrpclib.ServerProxy('http://127.0.0.1:'+str(port.ManagerPort.JobManager))
        s.get_status()
        stringForPrint = s.stop()
        if stringForPrint:
            print stringForPrint.strip('\n')
        log.info('start to kill jobmanager')
        process.stop_process(port.ManagerPort.JobManager)
    except Exception,e:
        pass
    try:
        s = xmlrpclib.ServerProxy('http://127.0.0.1:'+str(port.ManagerPort.MasterManager))
        s.stop()
        log.info('start to kill mastermanager')
        process.stop_process(port.ManagerPort.MasterManager)
    except Exception, e:
        pass
    try:
        s = xmlrpclib.ServerProxy('http://127.0.0.1:'+str(port.ManagerPort.WorkerManager))
        s.stop()
        log.info('start to kill workermanager')
        process.stop_process(port.ManagerPort.WorkerManager)
    except Exception, e:
        pass
    
    if isUserCommand == True:
        print 's3transfer is closed'

def restart_s3transfer():
    stop_s3transfer()