Johan Corveleyn <jcor...@gmail.com> writes: > ------------------------------------------------------------------------ > r2 | jrandom | 2013-06-03 00:23:00 +0200 (Mon, 03 Jun 2013) | 1 line > > Log message for revision 3 > ------------------------------------------------------------------------ > r1 | jrandom | 2013-06-03 00:22:36 +0200 (Mon, 03 Jun 2013) | 1 line > > Log message for revision 1. > ------------------------------------------------------------------------ > ]]] > > > Looking at guarantee_repos_and_wc, revision 2 should have been this: > > # Revision 2: edit iota > msg=""" Log message for revision 2 > but with multiple lines > to test the code""" > svntest.main.file_write(msg_file, msg) > svntest.main.file_append(iota_path, "2") > svntest.main.run_svn(None, > 'ci', '-F', msg_file) > svntest.main.run_svn(None, > 'up') > > When I look at iota, that edit was done ("2" is there), so apparently > that commit wasn't performed. > > Can anyone explain this? Any ideas? > > Can it be a timestamp issue? sleep_for_timestamp ... which reminds me > ... it's almost 1:30 am ... time to stamp some sleep. > > But even if the timestamp after the edit is precisely the same as > after the checkout, I don't understand how that can lead to 'commit' > not seeing that the file is modified: the edit changed the filesize, > and I thought both timestamp and filesize were considered to check for > modified files ...
You are correct: both the timestamp and the filesize are checked (the code is in svn_wc__internal_file_modified_p). The timestamp "problem" only causes modifications to be missed if those modifications don't change the filesize. In this case the filesize should have changed. -- Certified & Supported Apache Subversion Downloads: http://www.wandisco.com/subversion/download