[Koha-patches] [PATCH] Bug 7246 - rebuild_zebra.pl --limit number for partial reindexing

Dobrica Pavlinusic dpavlin at rot13.org
Sat Nov 19 12:30:00 CET 2011


Partial re-indexing is mostly useful when experimenting with Zebra
configuration and your test database is too large to be re-indexed for each
trial.

I'm submitting it after I added this twice to source code of rebuild_zebra.pl
and I hope it might prove useful to others also.

Test scenario:
1. pick koha instance for which you don't mind truncating results in search
2. re-run rebuild_zebra.pl and add --limit 1000

http://bugs.koha-community.org/show_bug.cgi?id=7246
---
 misc/migration_tools/rebuild_zebra.pl |    3 +++
 1 files changed, 3 insertions(+), 0 deletions(-)

diff --git a/misc/migration_tools/rebuild_zebra.pl b/misc/migration_tools/rebuild_zebra.pl
index 6fa6501..be0ceb7 100755
--- a/misc/migration_tools/rebuild_zebra.pl
+++ b/misc/migration_tools/rebuild_zebra.pl
@@ -35,6 +35,7 @@ my $as_xml;
 my $process_zebraqueue;
 my $do_not_clear_zebraqueue;
 my $verbose_logging;
+my $limit;
 my $zebraidx_log_opt = " -v none,fatal,warn ";
 my $result = GetOptions(
     'd:s'           => \$directory,
@@ -52,6 +53,7 @@ my $result = GetOptions(
     'y'             => \$do_not_clear_zebraqueue,
     'z'             => \$process_zebraqueue,
     'v'             => \$verbose_logging,
+    'l|limit:i'     => \$limit,
 );
 
 
@@ -313,6 +315,7 @@ sub export_marc_records_from_sth {
     my $i = 0;
     my ( $itemtag, $itemsubfield ) = GetMarcFromKohaField("items.itemnumber",'');
     while (my ($record_number) = $sth->fetchrow_array) {
+        last if defined $limit && $i >= $limit;
         print "." if ( $verbose_logging );
         print "\r$i" unless ($i++ %100 or !$verbose_logging);
         if ( $nosanitize ) {
-- 
1.7.2.5



More information about the Koha-patches mailing list