You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@subversion.apache.org by Philip Martin <ph...@wandisco.com> on 2012/04/19 10:59:58 UTC
authz_tests 7 FAIL with new revprop caching
On my Linux machine svnserve with threading and revprop caching causes
authz_tests 7 to FAIL:
$ subversion/svnserve/svnserve --cache-revprops yes -Tdr subversion/tests/cmdline
and
$ ./authz_tests.py --url=svn://localhost 7
gives:
2012-04-19 09:56:31 [WARNING] CWD: /home/pm/sw/subversion/obj/subversion/tests/cmdline
2012-04-19 09:56:31 [WARNING] EXCEPTION: Failure:
- {'foobar': 'foo bar',
- 'svn:author': 'jrandom',
? ^
+ {'svn:author': u'jrandom',
? ^ +
'svn:date': '',
- 'svn:log': 'Log message for revision 1.'}
+ 'svn:log': u'Log message for revision 1.'}
? +
Traceback (most recent call last):
File "/home/pm/sw/subversion/src/subversion/tests/cmdline/svntest/main.py", line 1332, in run
rc = self.pred.run(sandbox)
File "/home/pm/sw/subversion/src/subversion/tests/cmdline/svntest/testcase.py", line 254, in run
return self._delegate.run(sandbox)
File "/home/pm/sw/subversion/src/subversion/tests/cmdline/svntest/testcase.py", line 176, in run
return self.func(sandbox)
File "../../../../src/subversion/tests/cmdline/authz_tests.py", line 602, in authz_log_and_tracing_test
args=['--with-all-revprops', '-r1', sbox.repo_url])
File "/home/pm/sw/subversion/src/subversion/tests/cmdline/svntest/actions.py", line 713, in run_and_verify_log_xml
entry.assert_revprops(expected_revprops[index])
File "/home/pm/sw/subversion/src/subversion/tests/cmdline/svntest/actions.py", line 588, in assert_revprops
pprint.pformat(self.revprops).splitlines())))
Failure:
- {'foobar': 'foo bar',
- 'svn:author': 'jrandom',
? ^
+ {'svn:author': u'jrandom',
? ^ +
'svn:date': '',
- 'svn:log': 'Log message for revision 1.'}
+ 'svn:log': u'Log message for revision 1.'}
? +
FAIL: authz_tests.py 7: test authz for log and tracing path changes
--
uberSVN: Apache Subversion Made Easy
http://www.uberSVN.com
Re: authz_tests 7 FAIL with new revprop caching
Posted by Philip Martin <ph...@wandisco.com>.
Stefan Fuhrmann <eq...@web.de> writes:
>> Hey Philip,
>>
>> Thanks for testing and providing the reproduction recipes!
>> With r1331763, all these issues should be fixed. Only the
>> hotcopy tests still need to be fixed / looked into.
>>
> Forget that comment about hotcopy - that is a issue
> Daniel is looking into. With my latest svnadmin commit
> all tests should now pass.
There is still a question about hotcopy. How many, if any, of these new
files need to be copied? I suppose they get created if needed so
hotcopy doesn't need to copy any of them. If so then svnadmin_tests.py
needs to be updated as it explicitly verifies that all files are copied:
./svnadmin_tests.py 8
2012-04-30 12:40:45 [WARNING] CWD: /home/pm/sw/subversion/obj/subversion/tests/cmdline
2012-04-30 12:40:45 [WARNING] EXCEPTION: Failure: svn-test-work/repositories/svnadmin_tests-8.backup/db/revprop-geneneration does not exist in hotcopy destination
Traceback (most recent call last):
File "/home/pm/sw/subversion/src/subversion/tests/cmdline/svntest/main.py", line 1350, in run
rc = self.pred.run(sandbox)
File "/home/pm/sw/subversion/src/subversion/tests/cmdline/svntest/testcase.py", line 114, in run
return self._delegate.run(sandbox)
File "/home/pm/sw/subversion/src/subversion/tests/cmdline/svntest/testcase.py", line 176, in run
return self.func(sandbox)
File "../../../../src/subversion/tests/cmdline/svnadmin_tests.py", line 447, in hotcopy_dot
check_hotcopy_fsfs(sbox.repo_dir, backup_dir)
File "../../../../src/subversion/tests/cmdline/svnadmin_tests.py", line 85, in check_hotcopy_fsfs
"destination" % dst_path)
Failure: svn-test-work/repositories/svnadmin_tests-8.backup/db/revprop-geneneration does not exist in hotcopy destination
FAIL: svnadmin_tests.py 8: 'svnadmin hotcopy PATH .'
That's with the following bogus "fix" to hotcopy to avoid the current
hotcopy assert:
Index: subversion/libsvn_fs_fs/fs.c
===================================================================
--- subversion/libsvn_fs_fs/fs.c (revision 1332010)
+++ subversion/libsvn_fs_fs/fs.c (working copy)
@@ -294,6 +294,7 @@
void *cancel_baton,
apr_pool_t *pool)
{
+ const char *uuid;
{
svn_fs_t *fs = src_fs;
const char *path = src_path;
@@ -303,6 +304,7 @@
SVN_ERR(svn_fs_fs__open(fs, path, pool));
SVN_ERR(svn_fs_fs__initialize_caches(fs, pool));
SVN_ERR(fs_serialized_init(fs, pool, pool));
+ uuid = fs->uuid;
}
{
@@ -317,6 +319,8 @@
*/
SVN_ERR(svn_fs_fs__open(fs, path, pool));
SVN_ERR(svn_fs_fs__initialize_caches(fs, pool));
+#else
+ fs->uuid = uuid;
#endif
SVN_ERR(fs_serialized_init(fs, pool, pool));
}
--
uberSVN: Apache Subversion Made Easy
http://www.uberSVN.com
Re: authz_tests 7 FAIL with new revprop caching
Posted by Stefan Fuhrmann <eq...@web.de>.
Am 28.04.2012 14:00, schrieb Stefan Fuhrmann:
> Philip Martin wrote:
>> Philip Martin<ph...@wandisco.com> writes:
>>
>>> On my Linux machine svnserve with threading and revprop caching causes
>>> authz_tests 7 to FAIL:
>>>
>>> $ subversion/svnserve/svnserve --cache-revprops yes -Tdr
>>> subversion/tests/cmdline
>>>
>>> and
>>>
>>> $ ./authz_tests.py --url=svn://localhost 7
>> Getting lots of failures now:
>>
>> FAIL: authz_tests.py 7: test authz for log and tracing path changes
>> FAIL: diff_tests.py 38: diff with svn:author that has< in it
>> FAIL: log_tests.py 11: svn log --xml must not print empty date elements
>> FAIL: log_tests.py 25: test revprop retrieval
>> FAIL: prop_tests.py 30: post-revprop-change hook
>> FAIL: prop_tests.py 34: test revprop atomicity guarantees of libsvn_ra
>> FAIL: svnadmin_tests.py 10: 'setlog' and 'setrevprop', bypassing hooks'
>> FAIL: svnrdump_tests.py 42: svnrdump renumbers dropped revs in
>> mergeinfo
>> FAIL: svnrdump_tests.py 43: don't drop mergeinfo revs in incremental
>> svnrdump
>>
>> and more, I stopped the tests at that point.
>>
>> Revprop caching doesn't seem to work at all with threading:
>>
>> subversion/svnserve/svnserve --cache-revprops yes -Tdr .
>> svnadmin create repo
>> ln -s /bin/true repo/hooks/pre-revprop-change
>> printf "[general]\nanon-access = write"> repo/conf/svnserve.conf
>> svn ps -r0 --revprop xxx yyy svn://localhost/repo
>> svn pg -r0 --revprop xxx svn://localhost/repo
>>
>> The propset reports "property 'xxx' set on repository revision 0" but
>> the propget return nothing. Using ra_local works:
>>
>> svn pg -r0 --revprop xxx file://`pwd`/repo
>> yyy
>>
>> So the write is happening but the caching is failing. Using a
>> non-threaded svnserve appears to work.
>>
> Hey Philip,
>
> Thanks for testing and providing the reproduction recipes!
> With r1331763, all these issues should be fixed. Only the
> hotcopy tests still need to be fixed / looked into.
>
Forget that comment about hotcopy - that is a issue
Daniel is looking into. With my latest svnadmin commit
all tests should now pass.
-- Stefan^2.
Re: authz_tests 7 FAIL with new revprop caching
Posted by Stefan Fuhrmann <eq...@web.de>.
Philip Martin wrote:
> Philip Martin<ph...@wandisco.com> writes:
>
>> On my Linux machine svnserve with threading and revprop caching causes
>> authz_tests 7 to FAIL:
>>
>> $ subversion/svnserve/svnserve --cache-revprops yes -Tdr subversion/tests/cmdline
>>
>> and
>>
>> $ ./authz_tests.py --url=svn://localhost 7
> Getting lots of failures now:
>
> FAIL: authz_tests.py 7: test authz for log and tracing path changes
> FAIL: diff_tests.py 38: diff with svn:author that has< in it
> FAIL: log_tests.py 11: svn log --xml must not print empty date elements
> FAIL: log_tests.py 25: test revprop retrieval
> FAIL: prop_tests.py 30: post-revprop-change hook
> FAIL: prop_tests.py 34: test revprop atomicity guarantees of libsvn_ra
> FAIL: svnadmin_tests.py 10: 'setlog' and 'setrevprop', bypassing hooks'
> FAIL: svnrdump_tests.py 42: svnrdump renumbers dropped revs in mergeinfo
> FAIL: svnrdump_tests.py 43: don't drop mergeinfo revs in incremental svnrdump
>
> and more, I stopped the tests at that point.
>
> Revprop caching doesn't seem to work at all with threading:
>
> subversion/svnserve/svnserve --cache-revprops yes -Tdr .
> svnadmin create repo
> ln -s /bin/true repo/hooks/pre-revprop-change
> printf "[general]\nanon-access = write"> repo/conf/svnserve.conf
> svn ps -r0 --revprop xxx yyy svn://localhost/repo
> svn pg -r0 --revprop xxx svn://localhost/repo
>
> The propset reports "property 'xxx' set on repository revision 0" but
> the propget return nothing. Using ra_local works:
>
> svn pg -r0 --revprop xxx file://`pwd`/repo
> yyy
>
> So the write is happening but the caching is failing. Using a
> non-threaded svnserve appears to work.
>
Hey Philip,
Thanks for testing and providing the reproduction recipes!
With r1331763, all these issues should be fixed. Only the
hotcopy tests still need to be fixed / looked into.
-- Stefan^2.
Re: authz_tests 7 FAIL with new revprop caching
Posted by Philip Martin <ph...@wandisco.com>.
Philip Martin <ph...@wandisco.com> writes:
> On my Linux machine svnserve with threading and revprop caching causes
> authz_tests 7 to FAIL:
>
> $ subversion/svnserve/svnserve --cache-revprops yes -Tdr subversion/tests/cmdline
>
> and
>
> $ ./authz_tests.py --url=svn://localhost 7
Getting lots of failures now:
FAIL: authz_tests.py 7: test authz for log and tracing path changes
FAIL: diff_tests.py 38: diff with svn:author that has < in it
FAIL: log_tests.py 11: svn log --xml must not print empty date elements
FAIL: log_tests.py 25: test revprop retrieval
FAIL: prop_tests.py 30: post-revprop-change hook
FAIL: prop_tests.py 34: test revprop atomicity guarantees of libsvn_ra
FAIL: svnadmin_tests.py 10: 'setlog' and 'setrevprop', bypassing hooks'
FAIL: svnrdump_tests.py 42: svnrdump renumbers dropped revs in mergeinfo
FAIL: svnrdump_tests.py 43: don't drop mergeinfo revs in incremental svnrdump
and more, I stopped the tests at that point.
Revprop caching doesn't seem to work at all with threading:
subversion/svnserve/svnserve --cache-revprops yes -Tdr .
svnadmin create repo
ln -s /bin/true repo/hooks/pre-revprop-change
printf "[general]\nanon-access = write" > repo/conf/svnserve.conf
svn ps -r0 --revprop xxx yyy svn://localhost/repo
svn pg -r0 --revprop xxx svn://localhost/repo
The propset reports "property 'xxx' set on repository revision 0" but
the propget return nothing. Using ra_local works:
svn pg -r0 --revprop xxx file://`pwd`/repo
yyy
So the write is happening but the caching is failing. Using a
non-threaded svnserve appears to work.
--
uberSVN: Apache Subversion Made Easy
http://www.uberSVN.com