https://bugs.koha-community.org/bugzilla3/show_bug.cgi?id=31009
--- Comment #2 from Thibaud Guillot <[email protected]> --- Comment on attachment 136409 --> https://bugs.koha-community.org/bugzilla3/attachment.cgi?id=136409 Bug 39001: Improve perf to get claims list by vendor >From 7dad0a4dbdf0832020ba80e74e7d7536d7f689c5 Mon Sep 17 00:00:00 2001 >From: Thibaud Guillot <[email protected]> >Date: Tue, 14 Jun 2022 14:54:04 +0200 >Subject: [PATCH] Bug 39001: Improve perf to get claims list by vendor > >To view claims, when clicked, an SQL query is performed to search for >claims by vendor and build a select list. If you have so many claims, it >takes too long or even creates a timeout problem. > >Test plan: > >1) Be sure to have vendors and claims on serials >2) Click on "claims", the more claims you have, the longer it will >take to appear >3) Apply patch >4) Restart step 2 > >https://bugs.koha-community.org/show_bug.cgi?id=31009 >--- > C4/Serials.pm | 3 ++- > serials/claims.pl | 1 - > 2 files changed, 2 insertions(+), 2 deletions(-) > >diff --git a/C4/Serials.pm b/C4/Serials.pm >index 93c8a759d9..c63363f1ad 100644 >--- a/C4/Serials.pm >+++ b/C4/Serials.pm >@@ -134,7 +134,7 @@ sub GetSuppliersWithLateIssues { > my $dbh = C4::Context->dbh; > my $statuses = join(',', ( LATE, MISSING_STATUSES, CLAIMED ) ); > my $query = qq| >- SELECT DISTINCT id, name >+ SELECT COUNT(*) as count, id, name > FROM subscription > LEFT JOIN serial ON > serial.subscriptionid=subscription.subscriptionid > LEFT JOIN aqbooksellers ON subscription.aqbooksellerid = aqbooksellers.id >@@ -144,6 +144,7 @@ sub GetSuppliersWithLateIssues { > OR serial.STATUS IN ( $statuses ) > ) > AND subscription.closed = 0 >+ GROUP BY aqbooksellers.id > ORDER BY name|; > return $dbh->selectall_arrayref($query, { Slice => {} }); > } >diff --git a/serials/claims.pl b/serials/claims.pl >index 5b5479f749..8c8e85f27c 100755 >--- a/serials/claims.pl >+++ b/serials/claims.pl >@@ -47,7 +47,6 @@ my ($template, $loggedinuser, $cookie) > # supplierlist is returned in name order > my $supplierlist = GetSuppliersWithLateIssues(); > for my $s (@{$supplierlist} ) { >- $s->{count} = scalar GetLateOrMissingIssues($s->{id}); > if ($supplierid && $s->{id} == $supplierid) { > $s->{selected} = 1; > } >-- >2.25.1 -- You are receiving this mail because: You are the assignee for the bug. You are watching all bug changes. _______________________________________________ Koha-bugs mailing list [email protected] https://lists.koha-community.org/cgi-bin/mailman/listinfo/koha-bugs website : http://www.koha-community.org/ git : http://git.koha-community.org/ bugs : http://bugs.koha-community.org/
