Bugzilla – Attachment 4390 Details for
Bug 6078
Patron with no checkout Report overload the server
Home
|
New
|
Browse
|
Search
|
[?]
|
Reports
|
Help
|
New Account
|
Log In
[x]
|
Forgot Password
Login:
[x]
[patch]
Signed off Patch
0001-Bug-6078-Request-to-find-borrowers-without-issues-ov.patch (text/plain), 2.00 KB, created by
Chris Cormack
on 2011-06-07 06:41:58 UTC
(
hide
)
Description:
Signed off Patch
Filename:
MIME Type:
Creator:
Chris Cormack
Created:
2011-06-07 06:41:58 UTC
Size:
2.00 KB
patch
obsolete
>From 6a9ad43ad7d5a5018693b7a2353b0b487acfa13c Mon Sep 17 00:00:00 2001 >From: Sophie Meynieux <sophie.meynieux@biblibre.com> >Date: Mon, 28 Feb 2011 16:25:23 +0100 >Subject: [Signed Off] [PATCH] Bug 6078: Request to find borrowers without issues overload the server > >Optimization of the SQL request using NOT EXISTS instead of NOT IN > >BibLibre MT5946 > >Signed-off-by: Chris Cormack <chris@bigballofwax.co.nz> >--- > reports/borrowers_out.pl | 18 ++++++------------ > 1 files changed, 6 insertions(+), 12 deletions(-) > >diff --git a/reports/borrowers_out.pl b/reports/borrowers_out.pl >index 0a135e1..278e412 100755 >--- a/reports/borrowers_out.pl >+++ b/reports/borrowers_out.pl >@@ -230,18 +230,12 @@ sub calculate { > @$filters[0]=~ s/\*/%/g if (@$filters[0]); > $strcalc .= " AND borrowers.categorycode like '" . @$filters[0] ."'" if ( @$filters[0] ); > >- my $strqueryfilter = "SELECT DISTINCT borrowernumber FROM "; >- $strqueryfilter .= "(SELECT borrowernumber from old_issues WHERE borrowernumber IS NOT NULL "; >- if ($filters->[1]){ >- $strqueryfilter .= "AND old_issues.timestamp> '$filters->[1]' "; >- } >- $strqueryfilter .= "UNION SELECT borrowernumber FROM issues WHERE 1 "; >- if ($filters->[1]){ >- $strqueryfilter .= "AND issues.timestamp> '$filters->[1]' "; >- } >- $strqueryfilter .= ") active_borrowers"; >- >- $strcalc .= " AND borrowers.borrowernumber not in ($strqueryfilter)"; >+ $strcalc .= " AND NOT EXISTS (SELECT * FROM issues WHERE issues.borrowernumber=borrowers.borrowernumber "; >+ $strcalc .= " AND issues.timestamp> '" . @$filters[1] . "'" if (@$filters[1]); >+ $strcalc .= ") "; >+ $strcalc .= " AND NOT EXISTS (SELECT * FROM old_issues WHERE old_issues.borrowernumber=borrowers.borrowernumber "; >+ $strcalc .= " AND old_issues.timestamp> '" . @$filters[1] . "'" if (@$filters[1]); >+ $strcalc .= ") "; > $strcalc .= " group by borrowers.borrowernumber"; > $strcalc .= ", $colfield" if ($column); > $strcalc .= " order by $colfield " if ($colfield); >-- >1.7.2.2 >
You cannot view the attachment while viewing its details because your browser does not support IFRAMEs.
View the attachment on a separate page
.
View Attachment As Diff
View Attachment As Raw
Actions:
View
|
Diff
|
Splinter Review
Attachments on
bug 6078
:
3724
|
4390
|
4917