Commit 570ee723 authored by Mickaël Desfrênes's avatar Mickaël Desfrênes
Browse files

Move post-treatment tasks registering outside db transaction

parent 3e0a35fe
Loading
Loading
Loading
Loading
+3 −3
Original line number Diff line number Diff line
@@ -291,9 +291,9 @@ def handle_uploaded_file(
    file.dump_infos_to_fs()
    logger.info("Added from upload: {} ({})".format(file.title, file.id))
    # always re-run post treatment, in a separate task
    iiif_task(file.pk)
    exif_task(file.pk)
    ocr_task(file.pk)
    # iiif_task(file.pk)
    # exif_task(file.pk)
    # ocr_task(file.pk)
    return file.id


+5 −0
Original line number Diff line number Diff line
@@ -31,6 +31,7 @@ from .fileresponse import RangedFileResponse
from django.views.decorators.gzip import gzip_page
import logging
from functools import lru_cache
from resources.tasks import exif_task, iiif_task, ocr_task


importlib = __import__("importlib")
@@ -312,6 +313,7 @@ def upload_partial(request: HttpRequest) -> HttpResponse:
        try:
            with open(f_name, "rb") as f:
                try:
                    file_id = None
                    with transaction.atomic():
                        file_id = handle_uploaded_file(
                            File(f),
@@ -337,6 +339,9 @@ def upload_partial(request: HttpRequest) -> HttpResponse:
                                    user.username, user.pk, file_id, collection.pk
                                )
                            )
                    iiif_task(file_id)
                    exif_task(file_id)
                    ocr_task(file_id)
                    if not checksum_ok:
                        return HttpResponse(file_id, status=210)  # content different
                    else: