Skip to content

Always Incremental: address early prune problem when vol retentions are too small#423

Merged
pstorz merged 4 commits intomasterfrom
dev/pstorz/master/ai-prune-problem
Mar 3, 2020
Merged

Always Incremental: address early prune problem when vol retentions are too small#423
pstorz merged 4 commits intomasterfrom
dev/pstorz/master/ai-prune-problem

Conversation

@pstorz
Copy link
Member

@pstorz pstorz commented Feb 14, 2020

No description provided.

@pstorz pstorz changed the title ai prune problem Always Incremental: address early prune problem when vol retentions are too small Feb 17, 2020
@pstorz pstorz requested a review from franku February 20, 2020 11:03
Copy link
Member

@arogge arogge left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Some minor improvements in the C++ code possible, testrunner needs more explanation. What is tested here? When will it fail?

Comment on lines +888 to +889
int NumJobsToBePruned = 0;
utime_t now, VolRetention;
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

this declaration can be deferred, too

Comment on lines +218 to +221
When performing the always incremental scheme, the jobs are **never** pruned
by the volume pruning mechanism. The jobs are pruned from the volumes after
they have been successfully consolidated, so that the volume pruning
mechanism should **not trigger at all**.
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Doesn't that imply that the volume itself will never be pruned?

Comment on lines +2 to +6
#
# Run a simple backup
# then restore it.
#
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I don't really understand what this test does, and this comment doesn't describe it.

Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Good point

pstorz and others added 4 commits March 3, 2020 12:29
The pruning code now prints information about what jobids
are pruned during volume pruning. Before, this information
was not visible.
This system tests configures a very short volume retention and checks if
the volume pruning is executed as expected.
Always incremental: when using relatively short values for
"volume retention" in the pools, backup jobs can be pruned
prematurely. This commit adds a warning and an explanation.
Co-Authored-By: Andreas Rogge <andreas.rogge@bareos.com>
@pstorz pstorz force-pushed the dev/pstorz/master/ai-prune-problem branch from ab08312 to 79e04c6 Compare March 3, 2020 11:50
@pstorz pstorz merged commit 4d45f39 into master Mar 3, 2020
@pstorz pstorz deleted the dev/pstorz/master/ai-prune-problem branch March 3, 2020 14:06

if (!VolumeIsNowEmtpy) {
Jmsg(ua->jcr, M_INFO, 0,
_("Volume \"%s\" still contains jobs after pruning.\n"));
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

How did I miss this bug?
This is btw. why we want a modern formatting library that would have detected this at compile-time...

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants