Diff for /db/prgsrc/updateRS1.pl between versions 1.6 and 1.10

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

Removed from v.1.6  
changed lines
  Added in v.1.10


FreeBSD-CVSweb <freebsd-cvsweb@FreeBSD.org>