Koha-clms/Koha/SearchEngine
Fridolin Somers fb083813a8
Bug 23630: Do not remove field 999 in Elasticsearch indexing
Elasticsearch indexing uses 999$c to store record id by deleting the all field first !
So you can not store anything in field 999, even in UNIMARC and even in authorities records.

Looks like it is quick fix code added to start Elasticsearch use.

This behavior is disturbing and very strange for UNIMARC flavour.

This patch corrects by defining record ids mandatory in Koha::SearchEngine::Elasticsearch::Indexer::update_index().
This ids array is actually always given (except in UT).
I think it is useless to allow adding a record without its id.

Test plan :
1) Use Elasticsearch as SearchEngine
2) Create a subfield 999$z in default framework
3) Create a record with default framework
4) Enter a random string (never used in catalog) like "tototata" in 999$z
5) In Search engine configuration, define search field "subject" for 999$z
6) Rebuild record : misc/search_tools/rebuild_elasticsearch.pl -b -bn <biblionumber> -v
7) Search for the random string => You get a result
8) Optionnaly look at records in ES : <es server>:9200/<es index name>/data/<biblionumber>

Signed-off-by: Nick Clemens <nick@bywatersolutions.com>
Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>
2019-10-29 12:13:58 +00:00
..
Elasticsearch Bug 23630: Do not remove field 999 in Elasticsearch indexing 2019-10-29 12:13:58 +00:00
Zebra Bug 19365: Fix several issues with the Elasticsearch code 2018-11-26 16:11:01 +00:00
Elasticsearch.pm Bug 23630: Do not remove field 999 in Elasticsearch indexing 2019-10-29 12:13:58 +00:00
QueryBuilder.pm Bug 12478: allow more granular sorting configuration 2016-04-26 20:20:08 +00:00
Search.pm Bug 22721: Remove frameworkcode parameter in GetMarcFromKohaField calls 2019-07-15 11:28:08 +01:00