diff --git a/backend/projects/tasks.py b/backend/projects/tasks.py index 8a5a971a6..facf689d5 100644 --- a/backend/projects/tasks.py +++ b/backend/projects/tasks.py @@ -212,6 +212,15 @@ def create_tasks_from_dataitems(items, project): field_name = "speaker_" + str(indx) + "_details" task.data[field_name] = stringify_json(task.data["speakers_json"][indx]) indx += 1 + # checking if a task for the data item already exists for batch mode + if project.sampling_mode == BATCH: + existing_task = Task.objects.filter( + input_data=data, + project_id__project_type=project.project_type, + project_id__sampling_mode=BATCH, + ) + if existing_task: + continue tasks.append(task) # Bulk create the tasks Task.objects.bulk_create(tasks)