[Koha] Solved: Z3950 Searches Stopped Working

Ken & Brenda Voelker brenv at voelkerville.com
Mon Mar 22 12:43:44 NZST 2004


Just for the record, I was able to fix the problem, thanks to a message
posted by Mike Taylor (the author of Net::Z3950) to the Net-Z3950 mailing
list (see October 23, 2003).  Don't understand why others haven't run into
this problem, nor do I understand why it appeared so suddenly on my
installation.  In any event, in order to get it captured into this archive,
here's a synopsis:

Problem:  MARC searches suddenly quit working altogether - the ISBN's
remained in the search list, and Koha would continue to query the L.O.C.
servers until the list was manually cleared.  The z3950-daemon log in
/var/log/koha showed an error message of the form:

ERROR: Can't call method "option" on an undefined value at
/var/www/library/koha/intranet/scripts/z3950daemon/processz3950queue
line 163, <KC> line 22.

Here's Mike's reply to someone who ran into the same problem:

>Net::Z3950 is not guilty!  The culprit here is the Library
>of Congress's, <ahem> somewhat eccentric Z39.50 server.
>
>Remember that, as documented, the default record-syntax requested by
>Net::Z3950 programs is GRS-1.  The LoC server doesn't support GRS-1
>records.
>
>To fix your problem, you need to tell Net::Z3950 that you want to
>fetch USMARC records from this connection.

CURE: in the module
/usr/local/koha/intranet/scripts/z3950daemon/processz3950queue, look for the
line that creates the new Z3950 connection:
   eval { $conn= new Net::Z3950::Connection($servername, $port, databaseName
=> $database); };

and modify it to explicitly spell out the record syntax you want, i.e.
USMARC:
   eval { $conn= new Net::Z3950::Connection($servername, $port, databaseName
=> $database, preferredRecordSyntax => 'USMARC'); };

(Actually, you'll make this correction twice, because the command appears in
the module twice, once with and once without password authentication).
Don't forget to halt and re-start the Z3950 daemon, in order for the changes
to take effect.  (Or just reboot).




More information about the Koha mailing list