From: Dobrica Pavlinusic Date: Sun, 9 Jan 2011 18:26:33 +0000 (+0000) Subject: handle exists for first_time_indexing X-Git-Url: http://git.rot13.org/?p=BackupPC.git;a=commitdiff_plain;h=a533d7e84363f1c0400b93fa522322044da1a96c;ds=inline handle exists for first_time_indexing --- diff --git a/lib/BackupPC/Search/KinoSearch.pm b/lib/BackupPC/Search/KinoSearch.pm index 3efcf8c..dcbb749 100644 --- a/lib/BackupPC/Search/KinoSearch.pm +++ b/lib/BackupPC/Search/KinoSearch.pm @@ -17,7 +17,10 @@ sub new { my $index_path = $Conf{KinoPath} || die "no KinoPath"; - my $self = bless { index => $index_path }, $class; + my $self = bless { + index => $index_path, + first_time_indexing => ! -d $index_path, + }, $class; warn "# ",dump($self); return $self; } @@ -64,8 +67,6 @@ sub indexer { create => 1, ); - $indexer->commit; # make sure that index exists - warn "# created indexer"; return $self->{_indexer} = $indexer; @@ -83,8 +84,14 @@ sub searcher { sub exists { my ($self,$row) = @_; + return 0 if $self->{first_time_indexing}; + my $uri = $row->{hname} . ':' . $row->{sname} . '#' . $row->{backupnum} . ' ' . $row->{filepath}; my $hits = $self->searcher->hits( query => "_uri:$uri" ); + + + $self->{stat}->{exists}->{ $hits->total_hits }++; + return $hits->total_hits; } @@ -98,6 +105,8 @@ sub add_doc { warn "XXX ",dump($row) if $ENV{DEBUG}; + $self->{stats}->{add_doc}++; + $self->indexer->add_doc( $row ); } @@ -105,7 +114,7 @@ sub add_doc { sub commit { my $self = shift; $self->indexer->commit; - warn "# commit index"; + warn "# commit index ", dump($self->{stats}); } sub search {