projects
/
spider.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
add CTY-3010 prefixes
[spider.git]
/
perl
/
DXDupe.pm
diff --git
a/perl/DXDupe.pm
b/perl/DXDupe.pm
index 851e3a6953eef03450020f399a9efa2b4b17f42f..613a2aec677794ba1cd6fe145ea90c3901b61dac 100644
(file)
--- a/
perl/DXDupe.pm
+++ b/
perl/DXDupe.pm
@@
-9,26
+9,25
@@
package DXDupe;
package DXDupe;
+use strict;
+
use DXDebug;
use DXUtil;
use DXVars;
use DXDebug;
use DXUtil;
use DXVars;
+use DB_File;
use vars qw{$lasttime $dbm %d $default $fn};
$default = 48*24*60*60;
$lasttime = 0;
use vars qw{$lasttime $dbm %d $default $fn};
$default = 48*24*60*60;
$lasttime = 0;
-$fn = "$main::data/dupefile";
+localdata_mv("dupefile");
+$fn = localdata("dupefile");
sub init
{
sub init
{
+ unlink $fn;
$dbm = tie (%d, 'DB_File', $fn);
$dbm = tie (%d, 'DB_File', $fn);
- unless ($dbm) {
- eval { untie %d };
- dbg("Dupefile $fn corrupted, removing...");
- unlink $fn;
- $dbm = tie (%d, 'DB_File', $fn) or confess "can't open dupe file: $fn ($!)";
- confess "cannot open $fn $!" unless $dbm;
- }
+ confess "cannot open $fn $!" unless $dbm;
}
sub finish
}
sub finish
@@
-36,6
+35,7
@@
sub finish
undef $dbm;
untie %d;
undef %d;
undef $dbm;
untie %d;
undef %d;
+ unlink $fn;
}
sub check
}
sub check
@@
-69,7
+69,7
@@
sub process
# once an hour
if ($main::systime - $lasttime >= 3600) {
my @del;
# once an hour
if ($main::systime - $lasttime >= 3600) {
my @del;
- while (($k, $v) = each %d) {
+ while (
my
($k, $v) = each %d) {
push @del, $k if $main::systime >= $v;
}
delete $d{$_} for @del;
push @del, $k if $main::systime >= $v;
}
delete $d{$_} for @del;
@@
-81,7
+81,7
@@
sub get
{
my $start = shift;
my @out;
{
my $start = shift;
my @out;
- while (($k, $v) = each %d) {
+ while (
my
($k, $v) = each %d) {
push @out, $k, $v if !$start || $k =~ /^$start/;
}
return @out;
push @out, $k, $v if !$start || $k =~ /^$start/;
}
return @out;