my $dbh = C4::Context->dbh;
my $Zconn;
eval {
$Zconn = new ZOOM::Connection('localhost','2100');
};
if ($@) {
print "Error ", address@hidden>code()," :
",address@hidden>message();"\n";
}
# first, drop Zebra DB
eval {
my $Zpackage = $Zconn->package();
$Zpackage->send("drop");
};
if ($@) {
print "Error dropping /CODE:", address@hidden>code()," /MSG:
",address@hidden>message();"\n";
}
# then recreate it
eval {
my $Zpackage = $Zconn->package();
$Zpackage->option(databaseName => 'Koha');
$Zpackage->send("create");
};
if ($@) {
print "Error creating /CODE:", address@hidden>code(),"
/MSG:",address@hidden>message();"\n\n";
}
my $cgidir = C4::Context->intranetdir ."/cgi-bin";
my $starttime = gettimeofday;
my $sth = $dbh->prepare("select biblionumber from biblio");
$sth->execute;
my $i=0;
while ((my $biblionumber) = $sth->fetchrow) {
my $record = MARCgetbiblio($dbh,$biblionumber);
my $Zpackage = $Zconn->package();
$Zpackage->option(action => "recordInsert");
$Zpackage->option(record => $record->as_usmarc);
eval {
$Zpackage->send("update");
};
if ($@) {
print "Error updating ", address@hidden>code()," =>
",address@hidden>message(),"\n";
}
$Zpackage->destroy;
$i++;
print "\r$i" unless ($i % 100);
}
my $timeneeded = gettimeofday - $starttime;