I am having trouble with Base Jobs. I have created the basejob, and run
it, but when I run the full that is supposed to use the base job, it
backs up all of the files anyway, without any deduplication. I've run
the fd in debug mode, and noticed that it is complaining that st_mtime
differs (it does), but, in the fileset for both the base and full jobs,
i have basejob = ps1 and accurate = ps1 so it should only be comparing
permissions, file size, and sha1 hash, but it still compares the
st_mtime anyway.

I made a few debugging changes to src/filed/accurate.c to try to see
what was going on, and found the following:

in src/filed/accurate.c accurate_check_file()
ff_pkt->BaseJobOpts = J:mspug5Jps1
ff_pkt->AccurateOpts = C:mcsCps1

It seems that my options (ps1) are being appended to the default options
(mspug5) and having an undesirable effect.

I traced this problem to:

in src/findlib/find.c find_files()

      strcpy(ff->AccurateOpts, "C:mcs"); /* mtime+ctime+size by default */
      strcpy(ff->BaseJobOpts, "J:mspug5"); /*
mtime+size+perm+user+group+chk  */

...

            bstrncat(ff->AccurateOpts, fo->AccurateOpts,
sizeof(ff->AccurateOpts));
            bstrncat(ff->BaseJobOpts, fo->BaseJobOpts,
sizeof(ff->BaseJobOpts));


This seems to make it impossible to do a basejob without comparing the
st_mtime which in my setup, is different for each of the 20 machines
(the install date), even though the files are identical (hense comparing
the sha1 hash)


-Allan Jude

------------------------------------------------------------------------------

_______________________________________________
Bacula-devel mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/bacula-devel

Reply via email to