The Samba-Bugzilla – Bug 10748
3.1.0 and 3.1.1 create all dirs on target even with --prune-empty-dirs
Last modified: 2014-07-29 05:38:04 UTC
I'm doing an rsync from a snapshot to an empty "diffdir"
**minus** the basedir, as in "--compare-dest" in below
<rsync command> arglist = qw( --8-bit-output --acls
--archive --hard-links --human-readable --no-inc-recursive
--one-file-system --prune-empty-dirs --whole-file --xattrs ),
"--compare-dest=$base_lvh->fs_mp/.") <snapshotdir> <diffdir>
Unfortunately, it's creating *ALL* of the dirs on the source,
changed or not.
After the above was run, the "diffdir" contained 560515 dirs,
of which 386220 were empty. Deleting them freed up almost
300MB on a 600MB "diff". *ouch*.
This breaks (I'm working on a hack-around) my snapshot
script as it does a "du" of the source and expects
that the copied files should fit in a sized-to-fit
volume that is 125% of the original sources (but doesn't
when a bunch are dirs).
Anyway... only 31% of the directories it copied were
needed -- 69% of the directories were empty.
What happened? It didn't used to create such an excess...