Skip to content

Commit 80e96e9

Browse files
committed
Merge branch 'hotfix/2.3.2' into develop
2 parents 6ea3381 + 76f9b47 commit 80e96e9

2 files changed

Lines changed: 10 additions & 4 deletions

File tree

share/graphql/work.py

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -59,7 +59,7 @@ def resolve_tags(self, limit=None, offset=None):
5959

6060
@graphene.resolve_only_args
6161
def resolve_total_related_agents(self):
62-
return self.agent_relations.count()
62+
return self.agent_relations.exact_count()
6363

6464
@graphene.resolve_only_args
6565
def resolve_related_agents(self, limit=None, offset=None):
@@ -69,7 +69,7 @@ def resolve_related_agents(self, limit=None, offset=None):
6969

7070
@graphene.resolve_only_args
7171
def resolve_total_incoming_work_relations(self):
72-
return self.incoming_creative_work_relations.count()
72+
return self.incoming_creative_work_relations.exact_count()
7373

7474
@graphene.resolve_only_args
7575
def resolve_incoming_work_relations(self, limit=None, offset=None):
@@ -79,7 +79,7 @@ def resolve_incoming_work_relations(self, limit=None, offset=None):
7979

8080
@graphene.resolve_only_args
8181
def resolve_total_outgoing_work_relations(self):
82-
return self.outgoing_creative_work_relations.count()
82+
return self.outgoing_creative_work_relations.exact_count()
8383

8484
@graphene.resolve_only_args
8585
def resolve_outgoing_work_relations(self, limit=None, offset=None):

share/models/fuzzycount.py

Lines changed: 7 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,11 +1,17 @@
11
from django.db import connections
22
from django.db.models import QuerySet, Manager
3+
from django.db.models.sql.datastructures import EmptyResultSet
34

45

56
class FuzzyCountQuerySet(QuerySet):
67
def count(self):
78
cursor = connections[self.db].cursor()
8-
cursor.execute('SELECT count_estimate(%s);', (cursor.mogrify(*self.query.sql_with_params()).decode(), ))
9+
10+
try:
11+
cursor.execute('SELECT count_estimate(%s);', (cursor.mogrify(*self.query.sql_with_params()).decode(), ))
12+
except EmptyResultSet:
13+
return 0
14+
915
return int(cursor.fetchone()[0])
1016

1117
def exact_count(self):

0 commit comments

Comments
 (0)