From 4364f9b4d13b1ad230a7a8e200aa2e97722bc3f8 Mon Sep 17 00:00:00 2001
From: Agate <me@agate.blue>
Date: Mon, 4 May 2020 12:13:58 +0200
Subject: [PATCH] Fix #1096: Fixed wrong album and track count in admin artist
 API

---
 api/funkwhale_api/manage/views.py | 4 ++--
 changes/changelog.d/1096.bugfix   | 1 +
 2 files changed, 3 insertions(+), 2 deletions(-)
 create mode 100644 changes/changelog.d/1096.bugfix

diff --git a/api/funkwhale_api/manage/views.py b/api/funkwhale_api/manage/views.py
index 0f0f16ce04..adb7128e26 100644
--- a/api/funkwhale_api/manage/views.py
+++ b/api/funkwhale_api/manage/views.py
@@ -84,8 +84,8 @@ class ManageArtistViewSet(
         music_models.Artist.objects.all()
         .order_by("-id")
         .select_related("attributed_to", "attachment_cover", "channel")
-        .annotate(_tracks_count=Count("tracks"))
-        .annotate(_albums_count=Count("albums"))
+        .annotate(_tracks_count=Count("tracks", distinct=True))
+        .annotate(_albums_count=Count("albums", distinct=True))
         .prefetch_related(music_views.TAG_PREFETCH)
     )
     serializer_class = serializers.ManageArtistSerializer
diff --git a/changes/changelog.d/1096.bugfix b/changes/changelog.d/1096.bugfix
new file mode 100644
index 0000000000..81ffb284d9
--- /dev/null
+++ b/changes/changelog.d/1096.bugfix
@@ -0,0 +1 @@
+Fixed wrong album and track count in admin artist API (#1096)
-- 
GitLab