mirror of https://github.com/digint/btrbk
btrbk: action_archive: honor archive_exclude_older in backup step
parent
d12241fcfc
commit
ac0f7e3b91
11
btrbk
11
btrbk
|
@ -6808,17 +6808,22 @@ MAIN:
|
||||||
if(scalar @schedule)
|
if(scalar @schedule)
|
||||||
{
|
{
|
||||||
DEBUG "Checking schedule for backup candidates";
|
DEBUG "Checking schedule for backup candidates";
|
||||||
|
my $last_dvol_date; # oldest present archive (by btrbk_date)
|
||||||
|
|
||||||
# Add all present backups as informative_only: these are needed for correct results of schedule().
|
# Add all present backups as informative_only: these are needed for correct results of schedule().
|
||||||
# Note that we don't filter readonly here, in order to also get garbled targets.
|
# Note that we don't filter readonly here, in order to also get garbled targets.
|
||||||
foreach my $vol (@{vinfo_subvol_list($droot, btrbk_direct_leaf => $snapshot_basename)}) {
|
foreach my $dvol (@{vinfo_subvol_list($droot, btrbk_direct_leaf => $snapshot_basename)}) {
|
||||||
|
my $btrbk_date = $dvol->{node}{BTRBK_DATE};
|
||||||
push(@schedule, { informative_only => 1,
|
push(@schedule, { informative_only => 1,
|
||||||
value => $vol,
|
value => $dvol,
|
||||||
btrbk_date => $vol->{node}{BTRBK_DATE},
|
btrbk_date => $dvol->{node}{BTRBK_DATE},
|
||||||
});
|
});
|
||||||
|
$last_dvol_date = $btrbk_date if(!defined($last_dvol_date) || cmp_date($btrbk_date, $last_dvol_date) > 0);
|
||||||
}
|
}
|
||||||
my ($preserve, undef) = schedule(
|
my ($preserve, undef) = schedule(
|
||||||
schedule => \@schedule,
|
schedule => \@schedule,
|
||||||
preserve => config_preserve_hash($droot, $action_archive ? "archive" : "target"),
|
preserve => config_preserve_hash($droot, $action_archive ? "archive" : "target"),
|
||||||
|
preserve_threshold_date => ($action_archive && config_key($droot, "archive_exclude_older") ? $last_dvol_date : undef),
|
||||||
);
|
);
|
||||||
my @resume = grep defined, @$preserve; # remove entries with no value from list (target subvolumes)
|
my @resume = grep defined, @$preserve; # remove entries with no value from list (target subvolumes)
|
||||||
$resume_total = scalar @resume;
|
$resume_total = scalar @resume;
|
||||||
|
|
Loading…
Reference in New Issue