Beispiel #1
0
 def clean_failed_locks(self, backend):
     name = 'local_locks'
     if not self.can_clean(name):
         return
     for lock in FlagLock.objects(backend=backend):
         if not is_pid_running(lock.pid):
             log.warning(_("Found stale lock, removing (app: {name}, pid: "
                           "{pid})").format(name=lock.application.name,
                                            pid=lock.pid))
             self.reset_pending_state(lock)
             lock.delete()
     self.last_clean[name] = datetime.now()
Beispiel #2
0
 def clean_failed_tasks(self, backend):
     name = 'local_tasks'
     if not self.can_clean(name):
         return
     for task in Task.objects(backend=backend,
                              status=TaskStatus.running):
         if not is_pid_running(task.pid):
             log.warning(_(
                 "Found failed task, marking as failed (id: {id}, app: "
                 "{name})").format(id=task.safe_id,
                                   name=task.application.name))
             task.update(set__status=TaskStatus.failed,
                         set__date_finished=datetime.now())
     self.last_clean[name] = datetime.now()