[Bug 8308] rsync: exclude.c:532: change_local_filter_dir: Assertion `dir_depth < 4096/2+1' failed

samba-bugs at samba.org samba-bugs at samba.org
Sun Apr 20 15:17:59 MDT 2014


Wayne Davison <wayned at samba.org> changed:

           What    |Removed                     |Added
             Status|NEW                         |ASSIGNED

--- Comment #8 from Wayne Davison <wayned at samba.org> 2014-04-20 21:17:58 UTC ---
The per-file data structure is a combination of a C struct and an array of
extra (32-bit) values that are stored right before the struct.  The array of
values allows the size to vary based on the options, which saves memory for a
really large file list.

I added a patch to the bug with a guess at what might be wrong.  See if that
makes any difference.  If it does not, I'm going to attach a debugging patch
that will allow us to see if the depth values are getting corrupted by the
pruning code (since it abuses the DEPTH value when figuring out if a directory
chain should be removed or not).  Note that it uses fprintf(stderr, ...) calls
instead of rprintf(), which helps them to get output even if rsync dies (your
early debugging that uses rprintf() probably left the overflow output into the
protocol buffers when the assert caused rsync to die).

Configure bugmail: https://bugzilla.samba.org/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are the QA contact for the bug.

More information about the rsync mailing list