diff --git a/atdb/atdb/settings/dev.py b/atdb/atdb/settings/dev.py index d2998259833ca63c52795f8d26fd788df57d5436..fbbded20d0fe15e2470edb5ca18ffbb6513f50a3 100644 --- a/atdb/atdb/settings/dev.py +++ b/atdb/atdb/settings/dev.py @@ -14,7 +14,7 @@ DATABASES = { 'USER': 'atdb_admin', 'PASSWORD': 'atdb123', #'NAME': 'atdb_ldv_19jan2024', - 'NAME': 'atdb_ldv_9feb2024', + 'NAME': 'atdb_ldv_16feb2024', 'HOST': 'localhost', 'PORT': '5432', }, diff --git a/atdb/taskdatabase/models.py b/atdb/taskdatabase/models.py index 9142b20908800a72fbcdf8f49c26bf7f12d69245..fd330201c6934b9bd1b4574987adce12a542192e 100644 --- a/atdb/taskdatabase/models.py +++ b/atdb/taskdatabase/models.py @@ -204,7 +204,7 @@ class Task(models.Model): # make sure that every task has an activity (backward compatibility) # TODO: uncomment to enable SDC-1188 functionality for deploy STEP 2 - # associate_task_with_activity(self) + associate_task_with_activity(self) # remark: # a post_save signal is triggered by this save() diff --git a/atdb/taskdatabase/services/signals.py b/atdb/taskdatabase/services/signals.py index e63db228a7d30bd74a688366c2520f5560ecb699..ef36178a3ae995eabf030bba7d20bc8f9ec2bd86 100644 --- a/atdb/taskdatabase/services/signals.py +++ b/atdb/taskdatabase/services/signals.py @@ -66,7 +66,7 @@ def handle_post_save(sender, **kwargs): task = kwargs.get('instance') # TODO: uncomment to enable SDC-1188 functionality - # update_activity(task) + update_activity(task) def connect_signals(): diff --git a/atdb/taskdatabase/templates/taskdatabase/index.html b/atdb/taskdatabase/templates/taskdatabase/index.html index cc62ceac35eac1ef4d22ab7c770b7de7088926ce..f4fb3278583426d1aef9b3cb9603ff1be856b9d6 100644 --- a/atdb/taskdatabase/templates/taskdatabase/index.html +++ b/atdb/taskdatabase/templates/taskdatabase/index.html @@ -31,7 +31,7 @@ {% include 'taskdatabase/pagination.html' %} </div> </div> - <p class="footer"> Version 15 Feb 2024 + <p class="footer"> Version 16 Feb 2024 (7:00) </div> {% include 'taskdatabase/refresh.html' %} diff --git a/atdb/taskdatabase/urls.py b/atdb/taskdatabase/urls.py index 9f0f72075654e187930c81d6e50b4fcc7d8c3f29..bf8ed0a4087b273b865f695267985371d1a628f7 100644 --- a/atdb/taskdatabase/urls.py +++ b/atdb/taskdatabase/urls.py @@ -134,6 +134,6 @@ urlpatterns = [ path('tasks/repair/associate-activities/', views.AssociateActivities, name='associate-activities'), path('tasks/repair/update-all-activities/', views.UpdateAllActivities, name='update-all-activities'), path('tasks/repair/update-failed-tasks/', views.UpdateFailedTasks, name='update-failed-tasks'), - path('tasks/repair/update-ingestq-tasks/', views.UpdateIngestQTasks, name='update-ingestq-tasks'), + path('tasks/repair/update-ingestq-tasks/<batch_size>', views.UpdateIngestQTasks, name='update-ingestq-tasks'), path('tasks/repair/update-finished-tasks/', views.UpdateFinishedTasks, name='update-finished-tasks'), ] diff --git a/atdb/taskdatabase/views.py b/atdb/taskdatabase/views.py index adeed488acbd5660340cd9510b53137a08d271fc..44a6189a7dd9f47e7837e34d31ca7984c0a8017b 100644 --- a/atdb/taskdatabase/views.py +++ b/atdb/taskdatabase/views.py @@ -23,7 +23,6 @@ from rest_framework.request import Request from django.conf import settings from .models import Activity, Task, Workflow, LogEntry, Configuration, Job, PostProcessingRule, Monitor, LatestMonitor -from .models import associate_task_with_activity from .services.common import State from .services.signals import disconnect_signals, connect_signals from .tables import TaskTable @@ -72,6 +71,7 @@ class TaskFilter(filters.FilterSet): 'predecessor': ['isnull'], 'predecessor__status': ['exact', 'icontains', 'in', 'startswith'], 'activity__id': ['exact'], + 'activity__ingested_fraction' : ['exact','lt', 'lte', 'gt', 'gte','isnull'], } @@ -1685,7 +1685,7 @@ def AssociateActivities(request): # disconnect the signals to avoid save recursion disconnect_signals() - #tasks = Task.objects.all().only('sas_id') + #tasks = Task.objects.filter(activity__isnull=True)[:10000] tasks = Task.objects.filter(activity__isnull=True) total = tasks.count() i = 0 @@ -1713,7 +1713,7 @@ def UpdateAllActivities(request): try: i += 1 task = Task.objects.filter(sas_id=activity.sas_id)[0] - activities.update_activity(task) + activities_handler.update_activity(task) logger.info(f'{i} of {total}') except Exception as error: logger.error(error) @@ -1736,24 +1736,25 @@ def UpdateFailedTasks(request): i = 0 for task in tasks: i+=1 - activities.update_activity(task) + activities_handler.update_activity(task) logger.info(f'{i} of {total}') return redirect('index') @staff_member_required -def UpdateIngestQTasks(request): +def UpdateIngestQTasks(request, batch_size): tasks = Task.objects.only('sas_id').filter( Q(status__icontains=State.SCRUBBED.value) | Q(status__icontains=State.ARCHIVING.value) | Q(status__icontains=State.ARCHIVED.value) | - Q(status__icontains=State.FINISHING.value)) + Q(status__icontains=State.FINISHING.value)).filter(activity__ingested_fraction__isnull=True)[:int(batch_size)] total = tasks.count() i = 0 for task in tasks: i+=1 - activities.update_activity(task) + + activities_handler.update_activity(task) logger.info(f'{i} of {total}') return redirect('index') @@ -1765,7 +1766,7 @@ def UpdateFinishedTasks(request): i = 0 for task in tasks: i+=1 - activities.update_activity(task) + activities_handler.update_activity(task) logger.info(f'{i} of {total}') return redirect('index') \ No newline at end of file