Ticket #285: fuzzy-find_tlyons.mysql-basic.patch

File fuzzy-find_tlyons.mysql-basic.patch, 2.6 kB (added by mrballcb, 2 years ago)
  • fuzzy-find

    old new  
    33use DBI; 
    44use MLDBM qw(DB_File Storable); 
    55my %Files = ( 
    6     db_hash => '/etc/mail/spamassassin/FuzzyOcr.db', 
    7     db_safe => '/etc/mail/spamassassin/FuzzyOcr.safe.db', 
     6    db_hash => '/var/lib/fuzzyocr/FuzzyOcr.db', 
     7    db_safe => '/var/lib/fuzzyocr/FuzzyOcr.safe.db', 
    88    );   
    99 
    1010my %MySQL = ( 
     
    252252        } elsif ($App{hashing_type} == 3) { 
    253253            my $ddb = get_ddb(); 
    254254            if ($ddb) { 
     255                my $basic = join(':',@data); 
    255256                foreach my $ff (sort keys %Files) { 
    256257                    my $sql; 
    257                     if ($delete) { 
    258                         $sql = "DELETE FROM $ff WHERE $MySQL{$tab}.key=?"; 
    259                         $ddb->do($sql,undef,$key); 
    260                     } else { 
    261                         my $tab = $ff; $tab =~ s/db_//; 
    262                         $sql = "SELECT * FROM $MySQL{$tab} where $MySQL{$tab}.key=?"; 
    263                         my @data = $ddb->selectrow_array($sql,undef,$key); 
    264                         if (scalar(@data)) { 
    265                             printf "ImageInfo  : %9d:%d:%d:%d\n",split(':',$data[1]); 
    266                             printf "Matched    : %4d Time(s)\n",$data[5]; 
    267                             printf "Calc.Score : %9.3f\n",$data[8]; 
    268                             printf "in DB since: %s\n",scalar(localtime($data[6])); 
    269                             printf "Last Match : %s\n",scalar(localtime($data[7])); 
    270                         } 
     258                    $ff =~ s/db_//; 
     259                    $sqlbase = "FROM $MySQL{$ff} WHERE $MySQL{$ff}.basic=?"; 
     260                    $sql = "SELECT * $sqlbase"; 
     261                    my @data = $ddb->selectrow_array($sql,undef,$basic); 
     262                    if (scalar(@data)) { 
     263                        printf "Found HASH in Table %s\n",$MySQL{$ff}; 
     264                    } 
     265                    if ($delete && scalar @data) { 
     266                        $sql = "DELETE $sqlbase"; 
     267                        printf "Delete HASH in Table %s\n",$MySQL{$ff}; 
     268                        $ddb->do($sql,undef,$basic); 
     269                    }  
     270                    if (!$delete && scalar(@data)) { 
     271                        printf "ImageInfo  : %9d:%d:%d:%d\n",split(':',$data[1]); 
     272                        printf "Matched    : %4d Time(s)\n",$data[5]; 
     273                        printf "Calc.Score : %9.3f\n",$data[8]; 
     274                        printf "in DB since: %s\n",scalar(localtime($data[6])); 
     275                        printf "Last Match : %s\n",scalar(localtime($data[7])); 
    271276                    } 
    272277                } 
    273278                $ddb->disconnect;