From a050d4a1462e75fcaa8b45bdef0680d475b848c6 Mon Sep 17 00:00:00 2001 From: Erwan Rouchet <rouchet@teklia.com> Date: Thu, 22 Oct 2020 11:02:56 +0200 Subject: [PATCH] Fix 4 stale reads in CreateClassification Closes #507 --- arkindex/documents/serializers/ml.py | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/arkindex/documents/serializers/ml.py b/arkindex/documents/serializers/ml.py index e6429abdd1..40ef2f086a 100644 --- a/arkindex/documents/serializers/ml.py +++ b/arkindex/documents/serializers/ml.py @@ -112,6 +112,8 @@ class ClassificationCreateSerializer(serializers.ModelSerializer): """ Serializer to create a single classification, defaulting to manual """ + element = serializers.PrimaryKeyRelatedField(queryset=Element.objects.using('default')) + ml_class = serializers.PrimaryKeyRelatedField(queryset=MLClass.objects.using('default')) worker_version = serializers.PrimaryKeyRelatedField(queryset=WorkerVersion.objects.all(), default=None) confidence = serializers.FloatField( min_value=0, @@ -143,11 +145,11 @@ class ClassificationCreateSerializer(serializers.ModelSerializer): read_only_fields = ('id', 'state') validators = [ UniqueTogetherValidator( - queryset=Classification.objects.filter(worker_version__isnull=False, source_id__isnull=True), + queryset=Classification.objects.using('default').filter(worker_version__isnull=False, source_id__isnull=True), fields=['element', 'worker_version', 'ml_class'] ), UniqueTogetherValidator( - queryset=Classification.objects.filter(worker_version__isnull=True, source_id__isnull=True), + queryset=Classification.objects.using('default').filter(worker_version__isnull=True, source_id__isnull=True), fields=['element', 'ml_class'] ) ] -- GitLab