From eaab7ce087d82986f863a3eaac2fefc3a3bce01e Mon Sep 17 00:00:00 2001
From: miker <miker@dcc99617-32d9-48b4-a31d-7c20da2025e4>
Date: Sat, 27 Mar 2010 21:04:01 +0000
Subject: [PATCH] set an upper limit using the same value as the
 per-index-matchpoint search limit (effective upper limit) for safer sort-only
 browse

git-svn-id: svn://svn.open-ils.org/ILS/trunk@16028 dcc99617-32d9-48b4-a31d-7c20da2025e4
---
 .../src/perlmods/OpenILS/Application/Storage/Driver/Pg/QueryParser.pm  | 3 +++
 1 file changed, 3 insertions(+)

diff --git a/Open-ILS/src/perlmods/OpenILS/Application/Storage/Driver/Pg/QueryParser.pm b/Open-ILS/src/perlmods/OpenILS/Application/Storage/Driver/Pg/QueryParser.pm
index ace362a22e..5e265e22dd 100644
--- a/Open-ILS/src/perlmods/OpenILS/Application/Storage/Driver/Pg/QueryParser.pm
+++ b/Open-ILS/src/perlmods/OpenILS/Application/Storage/Driver/Pg/QueryParser.pm
@@ -521,6 +521,8 @@ sub toSQL {
         $between = '';
     }
 
+    my $core_limit = $self->QueryParser->core_limit || 25000;
+
     my $sql = <<SQL;
 SELECT  $key AS id,
         ARRAY_ACCUM(DISTINCT m.source) AS records,
@@ -545,6 +547,7 @@ SELECT  $key AS id,
         AND $$flat_plan{where}
   GROUP BY 1
   ORDER BY 4 $desc, 5 DESC, 3 DESC
+  LIMIT $core_limit
 SQL
 
     warn $sql if $self->QueryParser->debug;
-- 
2.11.0