From: miker Date: Wed, 3 Oct 2007 17:22:26 +0000 (+0000) Subject: backporting critical SQL fix for patron search X-Git-Url: https://old-git.evergreen-ils.org/?a=commitdiff_plain;h=5721bcceb785ca6e595d4ae209b8abee24dcca4d;p=Evergreen.git backporting critical SQL fix for patron search git-svn-id: svn://svn.open-ils.org/ILS/branches/rel_1_2@7856 dcc99617-32d9-48b4-a31d-7c20da2025e4 --- diff --git a/Open-ILS/src/perlmods/OpenILS/Application/Storage/Publisher/actor.pm b/Open-ILS/src/perlmods/OpenILS/Application/Storage/Publisher/actor.pm index 2234a27746..cc1d3ec090 100644 --- a/Open-ILS/src/perlmods/OpenILS/Application/Storage/Publisher/actor.pm +++ b/Open-ILS/src/perlmods/OpenILS/Application/Storage/Publisher/actor.pm @@ -508,7 +508,7 @@ sub patron_search { my $clone_select = ''; $clone_select = "JOIN (SELECT cu.id as id FROM $a_table ca ". "JOIN $u_table cu ON (cu.mailing_address = ca.id OR cu.billing_address = ca.id) ". - "WHERE $addr_where) AS clone USING (id)" if ($addr_where); + "WHERE $addr_where) AS clone ON (clone.id = users.id)" if ($addr_where); my $select = ''; if ($usr_where) { @@ -533,7 +533,7 @@ sub patron_search { } if (!$ws_ou) { # XXX This should be required!! - $ws_ou = actor::org_unit->search( { parent_ou => undef } )->[0]->id; + $ws_ou = actor::org_unit->search( { parent_ou => undef } )->next->id; } my $opt_in_join = ''; @@ -548,7 +548,7 @@ sub patron_search { $select = <<" SQL"; SELECT DISTINCT $distinct_list FROM $u_table AS users - JOIN ($select) AS search USING (id) + JOIN ($select) AS search ON (search.id = users.id) JOIN $descendants d ON (d.id = users.home_ou) $opt_in_join $clone_select