From tonnesen@users.sourceforge.net Fri Feb 1 10:00:32 2002 From: Steve Tonnesen To: koha-devel@lists.koha-community.org Subject: [Koha-devel] CVS: koha/acqui.simple marcimport.pl,1.5,1.6 processz3950queue,1.2,1.3 Date: Fri, 01 Feb 2002 10:02:12 +0000 Message-ID: MIME-Version: 1.0 Content-Type: multipart/mixed; boundary="===============6002830535456968339==" --===============6002830535456968339== Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: quoted-printable Update of /cvsroot/koha/koha/acqui.simple In directory usw-pr-cvs1:/tmp/cvs-serv32238/koha/acqui.simple Modified Files: marcimport.pl processz3950queue=20 Log Message: Changes from a long time ago that I don't even remember anymore. :) Index: marcimport.pl =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D RCS file: /cvsroot/koha/koha/acqui.simple/marcimport.pl,v retrieving revision 1.5 retrieving revision 1.6 diff -C2 -r1.5 -r1.6 *** marcimport.pl 2001/11/06 18:13:59 1.5 --- marcimport.pl 2002/02/01 18:00:28 1.6 *************** *** 829,839 **** ($author) && ($author=3D"by $author"); if ($isbn) { ! print "
  • $title$subtitle $author $donetext
    \n"; } elsif ($lccn) { ! print "
  • $title$subtitle $author $donetext
    \n"; } elsif ($issn) { ! print "
  • $title$subtitle $author
    $donetext\n"; } elsif ($controlnumber) { ! print "
  • $title $author
    $donetext\n"; } else { print "Error: Contact steve regarding $title by $author
    \n"; --- 829,839 ---- ($author) && ($author=3D"by $author"); if ($isbn) { ! print "
  • $title $subtitle $author $donetext
    \n"; } elsif ($lccn) { ! print "
  • $title $subtitle $author $donetext
    \n"; } elsif ($issn) { ! print "
  • $title $subtitle $author
    $donetext\n"; } elsif ($controlnumber) { ! print "
  • $title $subtitle $author
    $don= etext\n"; } else { print "Error: Contact steve regarding $title by $author
    \n"; Index: processz3950queue =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D RCS file: /cvsroot/koha/koha/acqui.simple/processz3950queue,v retrieving revision 1.2 retrieving revision 1.3 diff -C2 -r1.2 -r1.3 *** processz3950queue 2001/11/06 18:13:59 1.2 --- processz3950queue 2002/02/01 18:00:28 1.3 *************** *** 25,29 **** my $now=3Dtime(); $stk=3D$dbh->prepare("select id,server,startdate,enddate,numrecords,activ= e from z3950results where queryid=3D$id"); ! $stk->execute; my %serverdone; unless ($stk->rows) { --- 25,29 ---- my $now=3Dtime(); $stk=3D$dbh->prepare("select id,server,startdate,enddate,numrecords,activ= e from z3950results where queryid=3D$id"); ! ($stk->execute) || (next); my %serverdone; unless ($stk->rows) { *************** *** 82,88 **** ($resultsid) =3D $stj->fetchrow; } else { ! my $stj=3D$dbi->prepare("insert into z3950results (server, queryid, = startdate) values ($q_serverinfo, $id, $now)"); $stj->execute; ! $resultsid=3D$dbi->{'mysql_insertid'}; } my $stj=3D$dbh->prepare("update z3950results set active=3D1 where id=3D$= resultsid"); --- 82,93 ---- ($resultsid) =3D $stj->fetchrow; } else { ! my $stj=3D$dbi->prepare("select id from z3950results where server=3D= $q_serverinfo and queryid=3D$id"); $stj->execute; ! ($resultsid) =3D $stj->fetchrow; ! unless ($resultsid) { ! my $stj=3D$dbi->prepare("insert into z3950results (server, queryid, sta= rtdate) values ($q_serverinfo, $id, $now)"); ! $stj->execute; ! $resultsid=3D$dbi->{'mysql_insertid'}; ! } } my $stj=3D$dbh->prepare("update z3950results set active=3D1 where id=3D$= resultsid"); *************** *** 90,168 **** my $conn; my $noconnection=3D0; if ($user) { eval { $conn=3D new Net::Z3950::Connection($servername, $port, datab= aseName =3D> $database, user =3D> $user, password =3D> $password); }; if ($@) { $noconnection=3D1; } - pe(); } else { eval { $conn=3D new Net::Z3950::Connection($servername, $port, datab= aseName =3D> $database); }; if ($@) { $noconnection=3D1; } - pe(); } ! if ($noconnection) { } else { my $rs=3D$conn->search($query); - pe(); - $rs->option(preferredRecordSyntax =3D> Net::Z3950::RecordSyntax::USM= ARC); - pe(); - my $numresults=3D$rs->size(); pe(); ! my $i; ! my $result=3D''; ! my $scantimerstart=3Dtime(); ! for ($i=3D1; $i<=3D(($numresults<80) ? ($numresults) : (80)); $i++) { ! my $rec=3D$rs->record($i); ! my $marcdata=3D$rec->rawdata(); ! $result.=3D$marcdata; ! } ! my $scantimerend=3Dtime(); ! my $numrecords; ! ($numresults<80) ? ($numrecords=3D$numresults) : ($numrecords=3D80); ! my $elapsed=3D$scantimerend-$scantimerstart; ! if ($elapsed) { ! my $speed=3Dint($numresults/$elapsed*100)/100; ! print " SPEED: $speed $server done $numrecords\n"; ! } =20 ! my $q_result=3D$dbi->quote($result); ! ($q_result) || ($q_result=3D'""'); ! $now=3Dtime(); ! my $task=3D"update z3950results set numrecords=3D$numresults,numdown= loaded=3D$numrecords,highestseen=3D0,results=3D$q_result,enddate=3D$now where= id=3D$resultsid"; ! my $stj=3D$dbi->prepare($task); ! $stj->execute; ! my $counter=3D0; ! while ($counter<60 && $numrecords<$numresults) { ! $counter++; ! my $stj=3D$dbi->prepare("select highestseen from z3950results where id= =3D$resultsid"); $stj->execute; ! my ($highestseen) =3D $stj->fetchrow; ! if ($highestseen>($numrecords-30)) { ! $counter=3D0; ! print " $server rescanning\n"; ! my $scantimerstart=3Dtime(); ! for ($i=3D$numrecords+1; $i<=3D(($numresults<($numrecords+40)) ? ($= numresults) : ($numrecords+40)); $i++) { ! my $rec=3D$rs->record($i); ! my $marcdata=3D$rec->rawdata(); ! $result.=3D$marcdata; ! } ! my $scantimerend=3Dtime(); ! ($numresults<$numrecords+40) ? ($numrecords=3D$numresults) : ($numr= ecords=3D$numrecords+40); ! my $elapsed=3D$scantimerend-$scantimerstart; ! if ($elapsed) { ! my $speed=3Dint($numresults/$elapsed*100)/100; ! print " SPEED: $speed $server done $numrecords\n"; ! } !=20 ! my $q_result=3D$dbi->quote($result); ! ($q_result) || ($q_result=3D'""'); ! $now=3Dtime(); ! my $task=3D"update z3950results set numdownloaded=3D$numrecords,res= ults=3D$q_result where id=3D$resultsid"; ! my $stj=3D$dbi->prepare($task); $stj->execute; } - sleep 5; } } --- 95,181 ---- my $conn; my $noconnection=3D0; + my $error=3D0; if ($user) { eval { $conn=3D new Net::Z3950::Connection($servername, $port, datab= aseName =3D> $database, user =3D> $user, password =3D> $password); }; if ($@) { $noconnection=3D1; + } else { + $error=3Dpe(); } } else { eval { $conn=3D new Net::Z3950::Connection($servername, $port, datab= aseName =3D> $database); }; if ($@) { $noconnection=3D1; + } else { + $error=3Dpe(); } } ! if ($noconnection || $error) { } else { + print "Q: $query\n"; my $rs=3D$conn->search($query); pe(); ! eval { $rs->option(preferredRecordSyntax =3D> Net::Z3950::RecordSynt= ax::USMARC);}; ! if ($@) { ! print "ERROR: $@\n"; ! } else { ! pe(); ! my $numresults=3D$rs->size(); ! pe(); ! my $i; ! my $result=3D''; ! my $scantimerstart=3Dtime(); ! for ($i=3D1; $i<=3D(($numresults<80) ? ($numresults) : (80)); $i++) { ! my $rec=3D$rs->record($i); ! my $marcdata=3D$rec->rawdata(); ! $result.=3D$marcdata; ! } ! my $scantimerend=3Dtime(); ! my $numrecords; ! ($numresults<80) ? ($numrecords=3D$numresults) : ($numrecords=3D80); ! my $elapsed=3D$scantimerend-$scantimerstart; ! if ($elapsed) { ! my $speed=3Dint($numresults/$elapsed*100)/100; ! print " SPEED: $speed $server done $numrecords\n"; ! } =20 ! my $q_result=3D$dbi->quote($result); ! ($q_result) || ($q_result=3D'""'); ! $now=3Dtime(); ! my $task=3D"update z3950results set numrecords=3D$numresults,numdownloa= ded=3D$numrecords,highestseen=3D0,results=3D$q_result,enddate=3D$now where id= =3D$resultsid"; ! my $stj=3D$dbi->prepare($task); $stj->execute; ! my $counter=3D0; ! while ($counter<60 && $numrecords<$numresults) { ! $counter++; ! my $stj=3D$dbi->prepare("select highestseen from z3950results where= id=3D$resultsid"); $stj->execute; + my ($highestseen) =3D $stj->fetchrow; + if ($highestseen>($numrecords-30)) { + $counter=3D0; + print " $server rescanning\n"; + my $scantimerstart=3Dtime(); + for ($i=3D$numrecords+1; $i<=3D(($numresults<($numrecords+40)) ? ($num= results) : ($numrecords+40)); $i++) { + my $rec=3D$rs->record($i); + my $marcdata=3D$rec->rawdata(); + $result.=3D$marcdata; + } + my $scantimerend=3Dtime(); + ($numresults<$numrecords+40) ? ($numrecords=3D$numresults) : ($numreco= rds=3D$numrecords+40); + my $elapsed=3D$scantimerend-$scantimerstart; + if ($elapsed) { + my $speed=3Dint($numresults/$elapsed*100)/100; + print " SPEED: $speed $server done $numrecords\n"; + } +=20 + my $q_result=3D$dbi->quote($result); + ($q_result) || ($q_result=3D'""'); + $now=3Dtime(); + my $task=3D"update z3950results set numdownloaded=3D$numrecords,result= s=3D$q_result where id=3D$resultsid"; + my $stj=3D$dbi->prepare($task); + $stj->execute; + } + sleep 5; } } } *************** *** 174,178 **** exit; sub pe { ! (return) unless ($code); my $code=3D$conn->errcode(); my $msg=3D$conn->errmsg(); --- 187,191 ---- exit; sub pe { ! return 0; my $code=3D$conn->errcode(); my $msg=3D$conn->errmsg(); *************** *** 184,187 **** --- 197,204 ---- =20 EOF + # if ($msg =3D~/not yet available/) { + # return 1; + # } + return 0; } } *************** *** 204,208 **** $lastrun=3Dtime(); } ! sleep 1; } =20 --- 221,225 ---- $lastrun=3Dtime(); } ! sleep 10; } =20 --===============6002830535456968339==--