Lines 71-76
Usage: $0 [-h|--help] [--confirm] [--sessions] [--sessdays DAYS] [-v|--verbose]
Link Here
|
71 |
Defaults to 30 days if no days specified. |
71 |
Defaults to 30 days if no days specified. |
72 |
-m --mail DAYS purge items from the mail queue that are older than DAYS days. |
72 |
-m --mail DAYS purge items from the mail queue that are older than DAYS days. |
73 |
Defaults to 30 days if no days specified. |
73 |
Defaults to 30 days if no days specified. |
|
|
74 |
--keep-lc LC[,LC]* only used in conjunction with -m/--mail. |
75 |
Keeps certain emails in the message_queue based on a |
76 |
comma-separated list of LETTER_CODES |
74 |
--merged purged completed entries from need_merge_authorities. |
77 |
--merged purged completed entries from need_merge_authorities. |
75 |
--messages DAYS purge entries from messages table older than DAYS days. |
78 |
--messages DAYS purge entries from messages table older than DAYS days. |
76 |
Defaults to 365 days if no days specified. |
79 |
Defaults to 365 days if no days specified. |
Lines 136-141
my $sess_days;
Link Here
|
136 |
my $verbose; |
139 |
my $verbose; |
137 |
my $zebraqueue_days; |
140 |
my $zebraqueue_days; |
138 |
my $mail; |
141 |
my $mail; |
|
|
142 |
my $letter_codes; |
139 |
my $purge_merged; |
143 |
my $purge_merged; |
140 |
my $pImport; |
144 |
my $pImport; |
141 |
my $pLogs; |
145 |
my $pLogs; |
Lines 181-186
GetOptions(
Link Here
|
181 |
'sessdays:i' => \$sess_days, |
185 |
'sessdays:i' => \$sess_days, |
182 |
'v|verbose' => \$verbose, |
186 |
'v|verbose' => \$verbose, |
183 |
'm|mail:i' => \$mail, |
187 |
'm|mail:i' => \$mail, |
|
|
188 |
'keep-lc:s' => \$letter_codes, |
184 |
'zebraqueue:i' => \$zebraqueue_days, |
189 |
'zebraqueue:i' => \$zebraqueue_days, |
185 |
'merged' => \$purge_merged, |
190 |
'merged' => \$purge_merged, |
186 |
'import:i' => \$pImport, |
191 |
'import:i' => \$pImport, |
Lines 350-369
if ($zebraqueue_days) {
Link Here
|
350 |
if ($mail) { |
355 |
if ($mail) { |
351 |
my $count = 0; |
356 |
my $count = 0; |
352 |
print "Mail queue purge triggered for $mail days.\n" if $verbose; |
357 |
print "Mail queue purge triggered for $mail days.\n" if $verbose; |
353 |
$sth = $dbh->prepare( |
358 |
print "Not deleting emails of type $letter_codes.\n" if ($verbose && $letter_codes); |
354 |
q{ |
359 |
my $query = q{ |
355 |
DELETE FROM message_queue |
360 |
DELETE FROM message_queue |
356 |
WHERE time_queued < date_sub(curdate(), INTERVAL ? DAY) |
361 |
WHERE time_queued < date_sub(curdate(), INTERVAL ? DAY) |
357 |
} |
362 |
}; |
358 |
); |
363 |
my @bind_params = ($mail); |
359 |
if ($confirm) { |
364 |
if ($letter_codes) { |
360 |
$sth->execute($mail) or die $dbh->errstr; |
365 |
$letter_codes =~ s/ //g; |
|
|
366 |
my @codes = map { "$_" } split(',', $letter_codes); |
367 |
$query .= " AND letter_code NOT IN ( ".(join ",", ("?") x @codes)." )"; |
368 |
push @bind_params, @codes; |
369 |
} |
370 |
$sth = $dbh->prepare($query); |
371 |
if ( $confirm ) { |
372 |
$sth->execute(@bind_params) or die $dbh->errstr; |
361 |
$count = $sth->rows; |
373 |
$count = $sth->rows; |
362 |
} |
374 |
} |
363 |
if ($verbose) { |
375 |
if ( $verbose ) { |
364 |
say $confirm |
376 |
say $confirm ? "$count messages were deleted from the mail queue." : "Message from message_queue would have been deleted"; |
365 |
? "$count messages were deleted from the mail queue." |
|
|
366 |
: "Message from message_queue would have been deleted"; |
367 |
say "Done with message_queue purge."; |
377 |
say "Done with message_queue purge."; |
368 |
} |
378 |
} |
369 |
} |
379 |
} |
370 |
- |
|
|