Commit 12b4c808 authored by Mickaël Desfrênes's avatar Mickaël Desfrênes
Browse files

Revert "perf optim"

This reverts commit 0388de12.
parent a4599bb6
Loading
Loading
Loading
Loading
+1 −14
Original line number Diff line number Diff line
@@ -11,7 +11,7 @@ import pyvips
import unidecode
from deskew import determine_skew as _determine_skew
from django.contrib.auth.models import User
from django.db.models import QuerySet, Count, Q
from django.db.models import QuerySet
from django.db.utils import IntegrityError
from django.utils import timezone

@@ -414,19 +414,6 @@ def collections(
            .annotate(title_binary=Cast("title", output_field=BinaryField()))
            .order_by(order_by)
        )
    query_set = query_set.annotate(
        resources_count=Count(
            "resources", filter=Q(resources__deleted_at__isnull=True), distinct=True
        ),
        children_count=Count(
            "collection", filter=Q(collection__deleted_at__isnull=True), distinct=True
        ),
    ).prefetch_related(
        "tags",
        "metadatacollectionvalue_set",
        "metadatacollectionvalue_set__metadata",
        "metadatacollectionvalue_set__metadata__set",
    )
    if only_published:
        query_set = query_set.filter(public_access=True)
    query_set = query_set[limit_from:limit_to]
+9 −23
Original line number Diff line number Diff line
@@ -42,11 +42,7 @@ def metadataset(


def metadata(metadata_instance: models.Metadata, cache: SerializerCache = None) -> dict:
    set_instance = metadata_instance._state.fields_cache.get("set")
    if set_instance is None:
        set_instance = get_cache(cache).fetch_obj(
            "metadataset", metadata_instance.set_id
        )
    set_instance = get_cache(cache).fetch_obj("metadataset", metadata_instance.set_id)
    return {
        "object_type": "metadata",
        "id": metadata_instance.id,
@@ -62,10 +58,6 @@ def metadata_collection_value(
    metadata_collection_value_instance: models.MetadataCollectionValue,
    cache: SerializerCache = None,
) -> dict:
    metadata_instance = metadata_collection_value_instance._state.fields_cache.get(
        "metadata"
    )
    if metadata_instance is None:
    metadata_instance = get_cache(cache).fetch_obj(
        "metadata", metadata_collection_value_instance.metadata_id
    )
@@ -98,16 +90,6 @@ def collection(
    only_published: bool = False,
    cache: SerializerCache = None,
) -> dict:
    resources_count = getattr(collection_instance, "resources_count", None)
    if resources_count is None:
        resources_count = collection_instance.resources.filter(
            deleted_at__isnull=True
        ).count()
    children_count = getattr(collection_instance, "children_count", None)
    if children_count is None:
        children_count = (
            collection_instance.children().filter(deleted_at__isnull=True).count()
        )
    tags = []
    for tag_instance in collection_instance.tags.all():
        tags.append(tag(tag_instance, cache=cache))
@@ -115,8 +97,12 @@ def collection(
        "object_type": "collection",
        "id": collection_instance.id,
        "title": collection_instance.title,
        "resources_count": resources_count,
        "children_count": children_count,
        "resources_count": collection_instance.resources.filter(
            deleted_at__isnull=True
        ).count(),
        "children_count": collection_instance.children()
        .filter(deleted_at__isnull=True)
        .count(),
        "parent": collection_instance.parent_id,
        "children": None,
        "project_id": collection_instance.project_id,