| Summary: | rebuild_zebra.pl, when recreating Zebra-directory structure, mkdir doesn't fail/error/die | ||
|---|---|---|---|
| Product: | Koha | Reporter: | Olli-Antti Kivilahti <olli-antti.kivilahti> |
| Component: | Searching | Assignee: | Olli-Antti Kivilahti <olli-antti.kivilahti> |
| Status: | Failed QA --- | QA Contact: | Testopia <testopia> |
| Severity: | enhancement | ||
| Priority: | P5 - low | CC: | chris, gitbot, mirko |
| Version: | Main | ||
| Hardware: | All | ||
| OS: | All | ||
| GIT URL: | Initiative type: | --- | |
| Sponsorship status: | --- | Comma delimited list of Sponsors: | |
| Crowdfunding goal: | 0 | Patch complexity: | --- |
| Documentation contact: | Documentation submission: | ||
| Text to go in the release notes: | Version(s) released in: | ||
| Circulation function: | |||
| Attachments: | Bug 14993 - rebuild_zebra.pl, when recreating Zebra-directory structure, mkdir doesn't fail/error/die | ||
Created attachment 43293 [details] [review] Bug 14993 - rebuild_zebra.pl, when recreating Zebra-directory structure, mkdir doesn't fail/error/die This is due to implicit perl programming. Avoid doing this! mkdir $bdir || die "Error $!"; TO REPLICATE: 1. rm -r /home/koha/koha-dev/var/lib/zebradb (or whatever your zebradb location is) 2. run rebuild_zebra.pl -b -a -r -x -v 3. Observe how rebuild_zebra.pl tells that it has rebuilt all the missing directories. 4. cd /home/koha/koha-dev/var/lib/zebradb/biblios 5. No such directory??? 6. You wait for several hours to reindex your zebradb to find that nothing works :( AFTER THIS PATCH: 1. rm -r /home/koha/koha-dev/var/lib/zebradb (or whatever your zebradb location is) 2. run rebuild_zebra.pl -b -a -r -x -v 3. Observe how rebuild_zebra.pl tells that it couldn't create missing directories. A (possibly) better fix would be to recreate the top two directories from the path, but no point patching a dead horse, since ElasticSearch will be here soon :) Comment on attachment 43293 [details] [review] Bug 14993 - rebuild_zebra.pl, when recreating Zebra-directory structure, mkdir doesn't fail/error/die Review of attachment 43293 [details] [review]: ----------------------------------------------------------------- ::: misc/migration_tools/rebuild_zebra.pl @@ -305,4 @@ > my $bdir = $base . $dir; > if (! -d $bdir) { > $needed_repairing = 1; > - mkdir $bdir || die "Unable to create '$bdir': $!\n"; oh my! What a nasty glob'ing issue. Thanks for this fix. Applying: Bug 14993 - rebuild_zebra.pl, when recreating Zebra-directory structure, mkdir doesn't fail/error/die Zebra is not going away any time soon. ES is not going to be a replacement, but an alternative, at least for the foreseeable future. If this is being touched, it should fix the problem by creating the folders instead of failing because they are missing. |
This is due to implicit perl programming. Avoid doing this! mkdir $bdir || die "Error $!"; TO REPLICATE: 1. rm -r /home/koha/koha-dev/var/lib/zebradb (or whatever your zebradb location is) 2. run rebuild_zebra.pl -b -a -r -x -v 3. Observe how rebuild_zebra.pl tells that it has rebuilt all the missing directories. 4. cd /home/koha/koha-dev/var/lib/zebradb/biblios 5. No such directory??? 6. You wait for several hours to reindex your zebradb to find that nothing works :( AFTER THIS PATCH: 1. rm -r /home/koha/koha-dev/var/lib/zebradb (or whatever your zebradb location is) 2. run rebuild_zebra.pl -b -a -r -x -v 3. Observe how rebuild_zebra.pl tells that it couldn't create missing directories. A (possibly) better fix would be to recreate the top two directories from the path, but no point patching a dead horse, since ElasticSearch will be here soon :)