X-Git-Url: http://git.rot13.org/?p=BackupPC.git;a=blobdiff_plain;f=bin%2FBackupPC_updatedb;h=8bf5041579b6a825cfc233bf3ab997674bc4e8aa;hp=2e9e49c671bf63bffdd04a3ea98916a13beca839;hb=75ad623d0fe56e57a3a49bbf0790d8ae129dfa01;hpb=d592f74873d36eef3fff74e8e8cbddde3f5d9d1c diff --git a/bin/BackupPC_updatedb b/bin/BackupPC_updatedb index 2e9e49c..8bf5041 100755 --- a/bin/BackupPC_updatedb +++ b/bin/BackupPC_updatedb @@ -11,22 +11,10 @@ use Getopt::Std; use Time::HiRes qw/time/; use File::Pid; use POSIX qw/strftime/; -use BackupPC::SearchLib; +use BackupPC::Search; use Cwd qw/abs_path/; use Data::Dump qw(dump); -our $search_module; -BEGIN { - $search_module = "BackupPC::Search::Estraier"; - $search_module = "BackupPC::Search::KinoSearch" if $ENV{KINO}; - eval "use $search_module"; - if ( $@ ) { - warn "ERROR: $search_module: $!"; - } else { - warn "# using $search_module for full-text search"; - } -} - use constant BPC_FTYPE_DIR => 5; use constant EST_CHUNK => 4096; @@ -131,7 +119,7 @@ sub hest_update { my $offset = 0; my $added = 0; - my $search = $search_module->new( $index_node_url ); + my $search = BackupPC::Search->search_module; my $results = 0; @@ -202,6 +190,8 @@ sub hest_update { } while ($results == EST_CHUNK); + $search->commit; + my $dur = (time() - $t) || 1; printf(" [%.2f/s dur: %s]\n", ( $added / $dur ), @@ -598,7 +588,10 @@ foreach my $host_key (@hosts) { fmt_time($dur) ); - hest_update($hostID, $shareID, $backupNum) if ($nf + $nd > 0); + if ($nf + $nd > 0) { + eval { hest_update($hostID, $shareID, $backupNum) }; + warn "ERROR: $@" if $@; + } } }