Philip Martin wrote: > $ svnadmin create repo > $ valgrind -q --num-callers=20 subversion/svn/.libs/lt-svn import -mm > subversion/tests/cmdline/theta.bin file://`pwd`/repo/f1 > ==15201== Syscall param write(buf) points to uninitialised byte(s)
Yup, similar result here running a recent trunk build. (First I had to move 'theta.bin' to a directory that's not under version control, otherwise it errored with "Repository UUID 'XXX' doesn't match expected UUID 'YYY'.") - Julian > ==15201== at 0x641175B: (within /usr/lib/debug/libpthread-2.7.so) > ==15201== by 0x5DA5254: apr_file_flush_locked (readwrite.c:317) > ==15201== by 0x5DA5960: setptr (seek.c:25) > ==15201== by 0x5DA5B39: apr_file_seek (seek.c:70) > ==15201== by 0x592BCAC: svn_io_file_seek (io.c:2755) > ==15201== by 0x93F955F: get_file_offset (fs_fs.c:860) > ==15201== by 0x94030E8: rep_write_contents_close (fs_fs.c:5012) > ==15201== by 0x593DC9C: svn_stream_close (stream.c:116) > ==15201== by 0x940FF0C: window_consumer (tree.c:2402) > ==15201== by 0x54F4569: svn_txdelta_send_txstream (text_delta.c:838) > ==15201== by 0x54F44BD: svn_txdelta_send_stream (text_delta.c:806) > ==15201== by 0x4E38CD3: send_file_contents (commit.c:160) > ==15201== by 0x4E3900E: import_file (commit.c:253) > ==15201== by 0x4E399CD: import (commit.c:562) > ==15201== by 0x4E3A33D: svn_client_import3 (commit.c:789) > ==15201== by 0x40B5A2: svn_cl__import (import-cmd.c:114) > ==15201== by 0x411B37: main (main.c:2119) > ==15201== Address 0xa8c53ac is 76 bytes inside a block of size 4,096 alloc'd > ==15201== at 0x4C2260E: malloc (vg_replace_malloc.c:207) > ==15201== by 0x5DAB19C: pool_alloc (apr_pools.c:1324) > ==15201== by 0x5DAB30B: apr_palloc_debug (apr_pools.c:1364) > ==15201== by 0x5DA7A0E: apr_file_open (open.c:168) > ==15201== by 0x5926FB7: file_open (io.c:247) > ==15201== by 0x592B9C8: svn_io_file_open (io.c:2657) > ==15201== by 0x93F92BA: get_writable_proto_rev_body (fs_fs.c:780) > ==15201== by 0x93F8B17: with_txnlist_lock (fs_fs.c:502) > ==15201== by 0x93F94CA: get_writable_proto_rev (fs_fs.c:828) > ==15201== by 0x9402DE8: rep_write_get_baton (fs_fs.c:4946) > ==15201== by 0x9403494: set_representation (fs_fs.c:5083) > ==15201== by 0x9403568: svn_fs_fs__set_contents (fs_fs.c:5102) > ==15201== by 0x93F6C47: svn_fs_fs__dag_get_edit_stream (dag.c:997) > ==15201== by 0x941019F: apply_textdelta (tree.c:2461) > ==15201== by 0x941038C: fs_apply_textdelta (tree.c:2516) > ==15201== by 0x71DD57B: svn_fs_apply_textdelta (fs-loader.c:1080) > ==15201== by 0x6FAE6BC: apply_textdelta (commit.c:412) > ==15201== by 0x4E38AE6: send_file_contents (commit.c:109) > ==15201== by 0x4E3900E: import_file (commit.c:253) > ==15201== by 0x4E399CD: import (commit.c:562) > > It seems to happen for some binary files, but not all, and I haven't > managed to trigger it for a text file. The file does not need a > binary mime type: > > $ svnadmin create repo > $ svn co file://`pwd`/repo wc > $ touch wc/foo > $ svn add wc/foo # it's a text file > $ cp subversion/tests/cmdline/theta.bin wc/foo > $ svn ci -mm wc # triggers the warning > > The warning looks serious but I've not yet managed to corrupt a > repository, so I can't rule out a valgrind false alarm. > > Can anyone else reproduce this? >