--- nfo/perl/libs/Data/Transfer/Sync.pm 2002/12/16 07:02:34 1.9 +++ nfo/perl/libs/Data/Transfer/Sync.pm 2002/12/23 07:10:59 1.11 @@ -1,4 +1,4 @@ -## $Id: Sync.pm,v 1.9 2002/12/16 07:02:34 jonen Exp $ +## $Id: Sync.pm,v 1.11 2002/12/23 07:10:59 joko Exp $ ## ## Copyright (c) 2002 Andreas Motl ## @@ -6,6 +6,12 @@ ## ## ---------------------------------------------------------------------------------------- ## $Log: Sync.pm,v $ +## Revision 1.11 2002/12/23 07:10:59 joko +## + using MD5 for checksum generation again - the 32-bit integer hash from DBI seems to be too lazy +## +## Revision 1.10 2002/12/19 01:07:16 joko +## + fixed output done via $logger +## ## Revision 1.9 2002/12/16 07:02:34 jonen ## + added comment ## @@ -124,7 +130,7 @@ $opts->{erase} ||= 0; #$opts->{import} ||= 0; - $logger->info( __PACKAGE__ . "->prepareOptions( source_node $opts->{source_node} mode $opts->{mode} erase $opts->{erase} prepare $opts->{prepare} )"); + $logger->notice( __PACKAGE__ . "->prepareOptions( source_node $opts->{source_node} mode $opts->{mode} erase $opts->{erase} prepare $opts->{prepare} )"); if (!$opts->{mapping} || !$opts->{mapping_module}) { $logger->warning( __PACKAGE__ . "->prepareOptions: No mapping supplied - please check key 'mappings' in BizWorks/Config.pm"); @@ -712,10 +718,15 @@ #$logger->dump( __PACKAGE__ . ": " . $dump ); # calculate checksum from dump + # note: the 32-bit integer hash from DBI seems + # to generate duplicates with small payloads already in ranges of hundreds of items/rows!!! + # try to avoid to use it or try to use it only for payloads greater than, hmmm, let's say 30 chars? + # (we had about 15 chars average per item (row)) + # md5-based fingerprint, base64 encoded (from Digest::MD5) - #my $checksum_cur = md5_base64($objdump) . '=='; + $self->{node}->{$descent}->{checksum} = md5_base64($dump) . '=='; # 32-bit integer "hash" value (maybe faster?) (from DBI) - $self->{node}->{$descent}->{checksum} = DBI::hash($dump, 1); + #$self->{node}->{$descent}->{checksum} = DBI::hash($dump, 1); # signal good return 1;