--- trunk/scripts/bench.pl 2004/12/29 20:10:59 13 +++ trunk/scripts/bench.pl 2004/12/29 20:11:34 14 @@ -16,6 +16,15 @@ debug => shift @ARGV, ); +my $isis_filter = IsisDB->new ( + isisdb => $isisdb, + debug => shift @ARGV, + hash_filter => sub { + my $v = shift; + return lc($v); + } +); + my $rows = $isis->{'maxmfn'}; my $db = OpenIsis::open( $isisdb ); @@ -28,9 +37,28 @@ IsisDB => sub { $isis->fetch( $mfn++ % $rows + 1 ); }, + IsisDB_hash => sub { + $isis->to_hash( $mfn++ % $rows + 1 ); + }, + IsisDB_hash_filter => sub { + $isis_filter->to_hash( $mfn++ % $rows + 1 ); + }, + OpenIsis => sub { OpenIsis::read( $db, $mfn++ % $rows + 1 ); }, + + OpenIsis_hash => sub { + my $row = OpenIsis::read( $db, $mfn++ % $rows + 1 ); + my $rec; + no strict 'refs'; + foreach my $f (keys %{$row}) { + foreach my $v (@{$row->{$f}}) { + push @{$rec->{$f}}, OpenIsis::subfields($v); + } + } + + }, } ); cmpthese $r;