[Koha] Search feature is not working

nemecle at riseup.net nemecle at riseup.net
Thu Jan 17 07:18:50 NZDT 2019


Hi,
We are having issues with a server we are building for a non-profit
organization: to put it simply, the server works but no search result
(on books or users) comes up and there is no error message (only "No
result").
However, it is still possible to access a resource with the direct link
or to list them all with "Home > Search the Catalog" (originally in
french due to project constraints, translations will be approximated)
and by doing an empty search.
Moreover, the database seems to contain the entries.
There is a lot of documentation online about this issue but none of the
solutions worked out.
An additional difficulty is that despite being a system administrator I
have no prior knowledge in ILSs and the other persons on the project who
work in libraries have no technical knowledge.

Context:
Server: OVH's VPS, Debian 9.6
Documentation used: [1] (links at the end of the mail)
Koha: version 18.05 (and 17.11 tested as well)
language setting: fr-FR
format: unimarc ("unimarc-complet", no documentation on that
specificity)
Database: MariaDB 10.1.37
Search: Zebra (tried to switch to ElasticSearch, without success)
Authority used: French National Library (Z39.50)
Apache configuration: slightly tuned to fit technical constraints,
intranet port moved to 8081

We originally tried the 18.05 but following an advice from someone
working in a library with Koha we tried to test again with the 17.11,
without success.

Result of this answer [2]:
<site>-koha@<server>:~$ export PERL5LIB=/usr/share/koha/lib
<site>-koha@<server>:~$ export
KOHA_CONF=/etc/koha/sites/<site>/koha-conf.xml
<site>-koha@<server>:~$
/usr/share/koha/bin/migration_tools/rebuild_zebra.pl -b -r -v
Zebra configuration information

-------------------------

Zebra biblio directory      = /var/lib/koha/<site>/biblios
Zebra authorities directory = /var/lib/koha/<site>/authorities
Koha directory              = /usr/share/koha/intranet/cgi-bin
Lockfile                    =
/var/lock/koha/<site>/rebuild/rebuild..LCK
BIBLIONUMBER in :     001$@
BIBLIOITEMNUMBER in : 090$a

-------------------------

skipping authorities

-------------------------

exporting biblio

-------------------------

1item-level_itypes set but no itemtype set for item (1) at
/usr/share/koha/lib/Koha/Schema/Result/Item.pm line 698.

Records exported: 1

-------------------------

REINDEXING zebra

-------------------------

19:20:06-09/01 zebraidx(752) [warn] Record didn't contain match fields
in (bib1,Local-number)

-------------------------

CLEANING

-------------------------


Results:
- No findings for the "1item-level_itypes" error;
- No issue with the permissions on the index files created during the
rebuild, command was launched with the dedicated koha user and not with
root
- the "zebraidx" warning seems to link to an anomaly with the
biblio.biblionumber and biblioitems.biblioitemnumber, as well as the
checkmarc.pl page (Home > Administration > MARC validation), but they
actually seem ok (respectively 001_@ and 090_a, an answer [3] seems to
indicate a false alarm).

The zebra "indexer-output.log" file (and not error.log, strangely)
contains exceptions that appear for each search:
<site>-koha@<server>:~$ cat /var/log/koha/<site>/zebra-output.log
23:44:44-08/01 zebrasrv(1) [warn] ir_session (exception)
23:45:47-08/01 zebrasrv(2) [warn] ir_session (exception)
23:48:12-08/01 zebrasrv(3) [warn] ir_session (exception)
23:49:59-08/01 zebrasrv(4) [warn] ir_session (exception)
23:53:14-08/01 zebrasrv(5) [warn] ir_session (exception)
23:53:25-08/01 zebrasrv(6) [warn] ir_session (exception)
23:54:19-08/01 zebrasrv(7) [warn] ir_session (exception)
23:54:33-08/01 zebrasrv(8) [warn] ir_session (exception)
23:56:54-08/01 zebrasrv(9) [warn] ir_session (exception)
23:59:29-08/01 zebrasrv(10) [warn] ir_session (exception)
23:59:43-08/01 zebrasrv(11) [warn] ir_session (exception)
00:01:38-09/01 zebrasrv(12) [warn] ir_session (exception)
00:03:48-09/01 zebrasrv(13) [warn] ir_session (exception)
00:08:38-09/01 zebrasrv(14) [warn] ir_session (exception)
00:14:32-09/01 zebrasrv(15) [warn] ir_session (exception)
00:20:41-09/01 zebrasrv(16) [warn] ir_session (exception)
00:20:52-09/01 zebrasrv(17) [warn] ir_session (exception)
00:22:36-09/01 zebrasrv(18) [warn] ir_session (exception)
13:21:20-09/01 zebrasrv(19) [warn] ir_session (exception)
15:01:56-09/01 zebrasrv(20) [warn] ir_session (exception)
17:04:13-09/01 zebrasrv(21) [warn] ir_session (exception)

But I have not found the origin

The indexer-output.log is filled with SQL errors as well,
<site>-koha@<server>:~$ cat /var/log/koha/<site>/indexer-output.log
DBD::mysql::st execute failed: Table 'koha_<site>.zebraqueue'
doesn't exist [for Statement "SELECT COUNT(*) FROM zebraqueue WHERE
done
= 0;"] at /usr/share/koha/bin/migration_tools/rebuild_zebra.pl [1]
line 326.
DBD::mysql::st fetchrow_arrayref failed: fetch() without execute()
[for
Statement "SELECT COUNT(*) FROM zebraqueue WHERE done = 0;"] at
/usr/share/koha/bin/migration_tools/rebuild_zebra.pl [1] line 327.

But said table exists (despite being empty):
root@<server>:~# mysql
MariaDB [(none)]> use koha_<site>;
MariaDB [koha_<site>]> SELECT COUNT(*) FROM
koha_<site>.zebraqueue WHERE done = 0;
+----------+
| COUNT(*) |
+----------+
|        0 |
+----------+
1 row in set (0.00 sec)

I tried to directly use zebra but no result (and no error):
<site>-koha@<serveur>:~$ yaz-client -c
/etc/koha/<site>/ccl.properties
unix:/var/run/koha/<site>/bibliosocket
Connecting...OK.
Sent initrequest.
Connection accepted by v3 target.
ID     : 81
Name   : Zebra Information Server/GFS/YAZ
Version: 4.2.30 98864b44c654645bc16b2c54f822dc2e45a93031
Options: search present delSet triggerResourceCtrl scan sort
extendedServices namedResultSets
Elapsed: 0.002458
Z> base biblios
Z> f naissance
Sent searchRequest.
Received SearchResponse.
Search was a success.
Number of hits: 0, setno 1
SearchResult-1: term=naissance cnt=0
records returned: 0
Elapsed: 0.010326
Z>

Finally, the original installation had a mismatch between the site
(unimarc) and zebra (marc21), but a full reinstallation with the proper
settings did not fixed the issue
I am out of solutions to triy and trying strace some processes as a last
stand did not helped either

Do you have an idea on the source of the problem, or at least a lead? It
seems to be related to Zebra and/or the indexation, but the service was
installed as provided without trailing out of the tutorials

Thank you in advance for your help,
Freely,


[1] https://wiki.koha-community.org/wiki/Koha_on_Debian
[2]
https://koha-community.org/faqs/zebra-indexing-wont-work-fix-it-aka-search-stuff-up-help/
[3] https://lists.katipo.co.nz/public/koha/2016-August/046107.html


More information about the Koha mailing list