Comment 14 for bug 1017990

Revision history for this message
Jason Stephenson (jstephenson) wrote :

With the branch from comment #11 installed and rebased on master, placing holds from the staff client is broken.

1. When placing a hold from the Holds tab of the Patron record, the patron's barcode is not autofilled in.

2. When placing a hold for a patron from the web staff client, and internal server error is generated:

Aug 1 10:48:48 buster apache2[12525]: [perl:warn] [pid 12525] [client ::1:54680
] 0 : HASH(0x5611cb097310), referer: https://buster.sigio.com/eg/opac/place_hold
?detail_record_view=0;locg=1;pubdate=is;hold_target=96;query=vivaldi;hold_source
_page=%2Feg%2Fopac%2Fresults%3Fbool%3Dand%3Bbool%3Dand%3Bbool%3Dand%3Bqtype%3Dke
yword%3Bqtype%3Dtitle%3Bqtype%3Dauthor%3Bcontains%3Dcontains%3Bcontains%3Dcontai
ns%3Bcontains%3Dcontains%3Bquery%3Dvivaldi%3Bquery%3D%3Bquery%3D%3B_adv%3D1%3Bde
tail_record_view%3D0%3Blocg%3D1%3Bpubdate%3Dis;hold_type=T
Aug 1 10:48:48 buster apache2[12525]: [perl:error] [pid 12525] [client ::1:5468
0] egweb: Context Loader error: Can't locate object method "content" via package
 "OpenSRF::DomainObject::oilsMethodException" at /usr/local/share/perl/5.28.1/Op
enILS/WWW/EGCatLoader/Account.pm line 1411.\n, referer: https://buster.sigio.com
/eg/opac/place_hold?detail_record_view=0;locg=1;pubdate=is;hold_target=96;query=
vivaldi;hold_source_page=%2Feg%2Fopac%2Fresults%3Fbool%3Dand%3Bbool%3Dand%3Bbool
%3Dand%3Bqtype%3Dkeyword%3Bqtype%3Dtitle%3Bqtype%3Dauthor%3Bcontains%3Dcontains%
3Bcontains%3Dcontains%3Bcontains%3Dcontains%3Bquery%3Dvivaldi%3Bquery%3D%3Bquery
%3D%3B_adv%3D1%3Bdetail_record_view%3D0%3Blocg%3D1%3Bpubdate%3Dis;hold_type=T
Aug 1 10:48:48 buster root: ::1 - - [01/Aug/2019:10:48:48 -0400] "POST /eg/opac/place_hold?detail_record_view=0;locg=1;pubdate=is;hold_target=96;query=vivaldi;hold_source_page=%2Feg%2Fopac%2Fresults%3Fbool%3Dand%3Bbool%3Dand%3Bbool%3Dand%3Bqtype%3Dkeyword%3Bqtype%3Dtitle%3Bqtype%3Dauthor%3Bcontains%3Dcontains%3Bcontains%3Dcontains%3Bcontains%3Dcontains%3Bquery%3Dvivaldi%3Bquery%3D%3Bquery%3D%3B_adv%3D1%3Bdetail_record_view%3D0%3Blocg%3D1%3Bpubdate%3Dis;hold_type=T HTTP/1.0" 500 1086

There is no corresponding error in osrfsys.log.

Going to view a patron's holds in the OPAC leads to a 500 Internal Server Error:

Aug 1 10:56:54 buster apache2[12498]: [perl:error] [pid 12498] [client ::1:54762] egweb: Context Loader error: Exception: OpenSRF::EX::ERROR 2019-08-01T10:56:54 OpenILS::WWW::EGWeb /usr/local/share/perl/5.28.1/OpenILS/WWW/EGWeb.pm:185 System ERROR: Exception: OpenSRF::DomainObject::oilsMethodException 2019-08-01T10:56:54 OpenSRF::AppRequest /usr/local/share/perl/5.28.1/OpenSRF/AppSession.pm:1159 <404> Method [open-ils.circ.holds.id_list.retrieve.authoritative] not found for OpenILS::Application::Circ\n\n, referer: https://buster.sigio.com/eg/opac/myopac/main
Aug 1 10:56:54 buster root: ::1 - - [01/Aug/2019:10:56:54 -0400] "GET /eg/opac/myopac/holds HTTP/1.0" 500 1086

There is a corresponding error in the osrfsys.log:

[2019-08-01 10:56:54] open-ils.circ [INFO:12420:Application.pm:159:15646708191249887] CALL: open-ils.circ open-ils.circ.holds.id_list.retrieve.authoritative e3c6b07e71a59057f8c654961f6790de, 71, 0
[2019-08-01 10:56:54] open-ils.circ [INFO:12420:Transport.pm:163:15646708191249887] Message processing duration: 0.001
[2019-08-01 10:56:54] /usr/sbin/apache2 [ERR :12498:EX.pm:66:15646708191249887] Exception: OpenSRF::EX::ERROR 2019-08-01T10:56:54 OpenSRF::Utils::Logger /usr/local/share/perl/5.28.1/OpenSRF/Utils/Logger.pm:243 System ERROR: Exception: OpenSRF::DomainObject::oilsMethodException 2019-08-01T10:56:54 OpenSRF::AppRequest /usr/local/share/perl/5.28.1/OpenSRF/AppSession.pm:1159 <404> Method [open-ils.circ.holds.id_list.retrieve.authoritative] not found for OpenILS::Application::Circ

perl -c /usr/local/share/perl/5.28.1/OpenILS/Application/Circ/Holds.pm

Produces the following output:

Global symbol "$conn" requires explicit package name (did you forget to declare "my $conn"?) at /usr/local/share/perl/5.28.1/OpenILS/Application/Circ/Holds.pm line 393.
Compilation failed in require at /usr/local/share/perl/5.28.1/OpenILS/Application/Circ/Transit.pm line 11.
BEGIN failed--compilation aborted at /usr/local/share/perl/5.28.1/OpenILS/Application/Circ/Transit.pm line 11.
Compilation failed in require at /usr/local/share/perl/5.28.1/OpenILS/Application/Circ/Holds.pm line 32.
BEGIN failed--compilation aborted at /usr/local/share/perl/5.28.1/OpenILS/Application/Circ/Holds.pm line 32.

None of these occur with the master branch. It looks like this commit breaks the syntax of Holds.pm.