]> git.sur5r.net Git - bacula/bacula/commitdiff
Remove bad optimization from Accurate code
authorEric Bollengier <eric@baculasystems.com>
Fri, 10 Feb 2012 16:32:10 +0000 (17:32 +0100)
committerKern Sibbald <kern@sibbald.com>
Sat, 20 Apr 2013 12:50:32 +0000 (14:50 +0200)
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.

bacula/src/filed/accurate.c

index 6a2c9e67385f723141f4f828a6e8188916e30b20..04bbfe43ab168b851f7012710d2d341221a31c57 100644 (file)
@@ -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)) {