Commit b743536b by Őry Máté

Merge branch 'feature-cleanup-on-init' into 'master'

Clean up DiskActivities in progress on manager init
parents 08566087 d3ff7402
...@@ -24,6 +24,7 @@ import logging ...@@ -24,6 +24,7 @@ import logging
from os.path import join from os.path import join
import uuid import uuid
from celery.signals import worker_ready
from django.db.models import (Model, CharField, DateTimeField, from django.db.models import (Model, CharField, DateTimeField,
ForeignKey) ForeignKey)
from django.utils import timezone from django.utils import timezone
...@@ -631,3 +632,12 @@ def disk_activity(code_suffix, disk, task_uuid=None, user=None, ...@@ -631,3 +632,12 @@ def disk_activity(code_suffix, disk, task_uuid=None, user=None,
on_abort=None, on_commit=None): on_abort=None, on_commit=None):
act = DiskActivity.create(code_suffix, disk, task_uuid, user) act = DiskActivity.create(code_suffix, disk, task_uuid, user)
return activitycontextimpl(act, on_abort=on_abort, on_commit=on_commit) return activitycontextimpl(act, on_abort=on_abort, on_commit=on_commit)
@worker_ready.connect()
def cleanup(conf=None, **kwargs):
# TODO check if other manager workers are running
for i in DiskActivity.objects.filter(finished__isnull=True):
i.finish(False, "Manager is restarted, activity is cleaned up. "
"You can try again now.")
logger.error('Forced finishing stale activity %s', i)
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or sign in to comment