From: Eric Bollengier Date: Fri, 10 Feb 2012 16:32:10 +0000 (+0100) Subject: Remove bad optimization from Accurate code X-Git-Tag: Release-7.0.0~288 X-Git-Url: https://git.sur5r.net/?a=commitdiff_plain;h=148ff30ec483807fb87464bfe2d53453617c2d7e;p=bacula%2Fbacula Remove bad optimization from Accurate code By returning "already seen", we didn't reply to the original question: has the file changed (must be backed up)? If your fileset contains two Include {} sections the second Include may ask for the same files than the first Include, and depending on Exclude, Wild, etc.. the answer may be "Already Seen" even if the file needs to be saved. From what I can see, Wild/Exclude are called after the accurate check. --- diff --git a/bacula/src/filed/accurate.c b/bacula/src/filed/accurate.c index 6a2c9e6738..04bbfe43ab 100644 --- a/bacula/src/filed/accurate.c +++ b/bacula/src/filed/accurate.c @@ -282,11 +282,6 @@ bool accurate_check_file(JCR *jcr, FF_PKT *ff_pkt) ff_pkt->accurate_found = true; ff_pkt->delta_seq = elt.delta_seq; - if (elt.seen) { /* file has been seen ? */ - Dmsg1(dbglvl, "accurate %s (already seen)\n", fname); - goto bail_out; - } - decode_stat(elt.lstat, &statc, sizeof(statc), &LinkFIc); /* decode catalog stat */ if (!jcr->rerunning && (jcr->getJobLevel() == L_FULL)) {