--- db/prgsrc/updateRS1.pl 2002/01/13 00:32:12 1.6 +++ db/prgsrc/updateRS1.pl 2003/02/13 16:27:32 1.10 @@ -40,9 +40,11 @@ use POSIX qw (locale_h); use lib "../lib"; use chgkfiles; use dbchgk; -open (STDERR,">errors"); +my $DUMPDIR = $ENV{DUMPDIR} || "../dump"; + +open (STDERR,">$DUMPDIR/errors"); my $initime=time; -open TIME, ">time"; +open TIME, ">$DUMPDIR/time"; do "common.pl"; do "chgk.cnf"; @@ -99,10 +101,11 @@ die "No dictionaries found! Check your c print "Getting words...\n"; print TIME "\t\t".(time-$initime)."\n"; +my $broken=0; for my $commonI(1..$times) { - +last if $broken; print "loading nests\n"; @@ -119,8 +122,8 @@ while ((++$sch<=$qlimit) && (($id, @ss) # и вешаем в массив, индексы которого -- словоформы, # а значения -- списки вопросов. { - - print "$sch $id\n" ;#unless (++$sch % 1); + if (-e "RS_stop") {unlink("RS_stop"); $broken=1;last} + print "$sch $id\n" unless ($sch % 10);#unless (++$sch % 1); searchmark($id); if ($forbidden{$id}) {next}; foreach $fieldnumber (0..$#ss) #перебираем поля @@ -143,7 +146,6 @@ foreach $wordnumber(0..$#list) @n= split ' ',$n; $nfkvo{$_}++ foreach @n; my $r=packword($fieldnumber, $id,$wordnumber%256); - print "$word !$r!\n"; $neww2k{$_}.=$r foreach (@n); } else { @@ -173,7 +175,6 @@ foreach $wordnumber(0..$#list) $nfkvo{$nfnumber}++; $a=\$neww2k{$nfnumber}; my $r=packword($fieldnumber, $id,$wordnumber); -print "$word !!$r!\n"; $$a.=$r; if (length $$a>100) {flushw2k($nfnumber)} } @@ -182,7 +183,6 @@ print "$word !!$r!\n"; $nfnumber=addnf(0, $f, $flag,1); $newnf{uc $word}.=" $nfnumber"; my $r=packword($fieldnumber, $id,$wordnumber); -print "$word !!!$r!\n"; $neww2k{$nfnumber}.=$r; } }