From 5eb36ad98e95147a937422f5e15f72c352b6edaa Mon Sep 17 00:00:00 2001 From: Nick Clemens Date: Thu, 7 Nov 2019 19:38:24 +0000 Subject: [PATCH] Bug 23986: Pass strings to Catmandu for deletion The deletion subroutine expects to get a string, this is fine in most places, but when we sort our records for batch deletion they are cast to numbers and the delete is not processed. This patch quotes the biblionumbers as strings before passing them to Catmandu To aid in detecting orphaned records you can use the patches on bug 22831 To test: 1 - Have or create a bib 2 - Go to Tools->Batch record deletion 3 - Click 'Enter a list of record numbers' 4 - Enter the biblionumber' 5 - Confirm deletion 6 - Search for the record, it still appears 7 - Apply patch, restart all the things 8 - Repeat 1-6 9 - This time the record is deleted 10 - Test other methods of record deletion to confirm the record is removed Signed-off-by: Jonathan Druart Signed-off-by: Martin Renvoize (cherry picked from commit cdea121ddb5c3e609ce698171a8dc319593a7780) Signed-off-by: Fridolin Somers --- Koha/SearchEngine/Elasticsearch/Indexer.pm | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Koha/SearchEngine/Elasticsearch/Indexer.pm b/Koha/SearchEngine/Elasticsearch/Indexer.pm index 3610f0191d..504ccc5856 100644 --- a/Koha/SearchEngine/Elasticsearch/Indexer.pm +++ b/Koha/SearchEngine/Elasticsearch/Indexer.pm @@ -303,7 +303,7 @@ sub delete_index { ) ); } - $self->store->bag->delete($_) foreach @$biblionums; + $self->store->bag->delete("$_") foreach @$biblionums; $self->store->bag->commit; } -- 2.39.5