[Koha] More problems with Koha as Z39.50 server

Magnus Enger magnus at enger.priv.no
Sat Mar 21 00:57:53 NZDT 2009


Dear all,

I'm having some trouble getting Koha to work as a Z39.50 server.

* Background

I'm running Koha 3.01.00.014 on Debian 4.0 (on Amazon EC2). Zebra is
on and searching in the OPAC is working fine. During the Makefile.PL
part of the installation I chose the "single" install, so alle Koha
files are found under /mnt/koha/. I chose the default for all the
ports etc.

* Preparation

I have edited koha-conf.xml from this:
<!-- <listen id="publicserver" >tcp:@:9999</listen> ->
to this:
<listen id="publicserver" >tcp:@:9999</listen>

And I have restarted Zebra with
/etc/init.d/koha-zebra-demon restart

I have also made suer port 9999 is open.

* Symptoms

When I try to access http://kohanor.collib.info:9999/ in a browser, I get this:

YAZ 3.0.36
Error: 404
Description: Not Found

I log on to the server and try with yaz-client, and I get this:

~# yaz-client
Z> open localhost:9999/biblios
Connecting...OK.
Sent initrequest.
Connection rejected by v3 target.
ID     : 81
Name   : GFS/YAZ
Version: 1.128/3.0.36
Init response contains 1 otherInfo unit:
  1: otherInfo unit contains 1 diagnostic:
    1: code=1 (Permanent system error),
        addinfo=''
Options: search present triggerResourceCtrl namedResultSets
Elapsed: 0.002852
Z>

I have tried stopping Zebra and running it from the command line with
/usr/bin/zebrasrv -f /mnt/koha/etc/koha-conf.xml
which gives this output:

10:48:28-20/03 [log] zebra_start 2.0.32 /mnt/koha/etc/zebradb/zebra-biblios.cfg
10:48:28-20/03 [log] Loaded filter module
/usr/lib/idzebra-2.0/modules/mod-dom.so
10:48:28-20/03 [log] Loaded filter module
/usr/lib/idzebra-2.0/modules/mod-alvis.so
10:48:28-20/03 [log] Loaded filter module
/usr/lib/idzebra-2.0/modules/mod-grs-xml.so
10:48:28-20/03 [log] Loaded filter module
/usr/lib/idzebra-2.0/modules/mod-text.so
10:48:28-20/03 [log] Loaded filter module
/usr/lib/idzebra-2.0/modules/mod-grs-marc.so
10:48:28-20/03 [log] Loaded filter module
/usr/lib/idzebra-2.0/modules/mod-grs-regx.so
10:48:28-20/03 [log] zebra_start 2.0.32 /mnt/koha/etc/zebradb/zebra-biblios.cfg
10:48:28-20/03 [log] Loaded filter module
/usr/lib/idzebra-2.0/modules/mod-dom.so
10:48:28-20/03 [log] Loaded filter module
/usr/lib/idzebra-2.0/modules/mod-alvis.so
10:48:28-20/03 [log] Loaded filter module
/usr/lib/idzebra-2.0/modules/mod-grs-xml.so
10:48:28-20/03 [log] Loaded filter module
/usr/lib/idzebra-2.0/modules/mod-text.so
10:48:28-20/03 [log] Loaded filter module
/usr/lib/idzebra-2.0/modules/mod-grs-marc.so
10:48:28-20/03 [log] Loaded filter module
/usr/lib/idzebra-2.0/modules/mod-grs-regx.so
10:48:28-20/03 [log] zebra_start 2.0.32
/mnt/koha/etc/zebradb/zebra-authorities-dom.cfg
10:48:28-20/03 [log] Loaded filter module
/usr/lib/idzebra-2.0/modules/mod-dom.so
10:48:28-20/03 [log] Loaded filter module
/usr/lib/idzebra-2.0/modules/mod-alvis.so
10:48:28-20/03 [log] Loaded filter module
/usr/lib/idzebra-2.0/modules/mod-grs-xml.so
10:48:28-20/03 [log] Loaded filter module
/usr/lib/idzebra-2.0/modules/mod-text.so
10:48:28-20/03 [log] Loaded filter module
/usr/lib/idzebra-2.0/modules/mod-grs-marc.so
10:48:28-20/03 [log] Loaded filter module
/usr/lib/idzebra-2.0/modules/mod-grs-regx.so
10:48:28-20/03 [server] Adding dynamic listener on
unix:/mnt/koha/var/run/zebradb/bibliosocket id=1
10:48:28-20/03 [server] Adding dynamic listener on
unix:/mnt/koha/var/run/zebradb/authoritysocket id=2
10:48:28-20/03 [server] Adding dynamic listener on tcp:@:9999 id=3
10:48:28-20/03 [server] Adding dynamic listener on tcp:@:11001 id=4
10:48:28-20/03 [server] Starting server /usr/bin/zebrasrv pid=25705

Running the "open" command above from the yaz-client gives this output
from zebrasrv:

10:50:02-20/03 zebrasrv(1) [session] Session - OK 1 tcp:::ffff:127.0.0.1 25710
10:50:02-20/03 zebrasrv(1) [request] Auth none
10:50:02-20/03 zebrasrv(1) [request] Init ERROR 1 ID:81 Name:YAZ Version:3.0.36

I have also tried running this:

Z> authentication username/password
Z> open localhost:9999/biblios

(and with "username:password" and "username password"), but they all
give the same error: "Init ERROR 1 ID:81 Name:YAZ Version:3.0.36".

* Hunches

It strikes me as somewhat odd that there are now four listen-elements
in koha-conf.xml:

<listen id="biblioserver" >unix:/mnt/koha/var/run/zebradb/bibliosocket</listen>
<listen id="authorityserver"
>unix:/mnt/koha/var/run/zebradb/authoritysocket</listen>
<listen id="publicserver" >tcp:@:9999</listen>
<listen id="mergeserver">tcp:@:11001</listen>

But only three of them have corresponding server-elements:

<server id="mergeserver"  listenref="mergeserver">
<server id="biblioserver"  listenref="biblioserver">
<server id="authorityserver"  listenref="authorityserver" >

But if this was the problem, I guess nobody else would get Z39.50 to
work either...

* Plea

Does anyone have a clue about what is wrong here? I have (of course)
tried to Google for different parts of the error-messages, but without
finding anything very helpful.

Regards,
Magnus Enger


More information about the Koha mailing list