You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@subversion.apache.org by Daniel Shahaf <d....@daniel.shahaf.name> on 2021/07/16 13:00:47 UTC
1.14.x test failure under USE_HTTPV1=1: ra-test 13
commit_empty_last_change
In 1.14.1 and branches/1.14.x@HEAD:
% make -s davautocheck APACHE_MPM=event USE_HTTPV1=1 TESTS="subversion/tests/libsvn_ra/ra-test"
⋮
% cat fails.log
[[[
/home/daniel/src/svn/14x/./subversion/tests/libsvn_ra/ra-test.c:1691,
/home/daniel/src/svn/14x/./subversion/libsvn_ra_serf/commit.c:1536,
/home/daniel/src/svn/14x/./subversion/libsvn_ra_serf/commit.c:406,
/home/daniel/src/svn/14x/./subversion/libsvn_ra_serf/commit.c:344,
/home/daniel/src/svn/14x/./subversion/libsvn_ra_serf/commit.c:284,
/home/daniel/src/svn/14x/./subversion/libsvn_ra_serf/util.c:1035,
/home/daniel/src/svn/14x/./subversion/libsvn_ra_serf/util.c:984,
/home/daniel/src/svn/14x/./subversion/libsvn_ra_serf/util.c:949,
/home/daniel/src/svn/14x/./subversion/libsvn_ra_serf/multistatus.c:558: (apr_err=SVN_ERR_FS_CONFLICT)
svn_tests: E160024: resource out of date; try updating
FAIL: ra-test 13: check how last change applies to empty commit
]]]
In trunk I got an unrelated error message —
.
AH00526: Syntax error on line 161 of …/subversion/tests/cmdline/httpd-…/cfg:
AuthzSVNAccessFile and AuthzSVNReposRelativeAccessFile directives are mutually exclusive.
.
— and didn't investigate further.
Cheers,
Daniel
Re: 1.14.x test failure under USE_HTTPV1=1: ra-test 13 commit_empty_last_change
Posted by Daniel Sahlberg <da...@gmail.com>.
Den sön 8 aug. 2021 kl 22:07 skrev Stefan Sperling <st...@elego.de>:
> On Sun, Aug 01, 2021 at 10:53:18PM +0200, Daniel Sahlberg wrote:
> > Did anyone have the time to review this?
> >
> > I realise another way to do it would be to add an argument to
> > location_common. Maybe a bit clearer, possibly even reducing to a single
> > call to cat if the AuthzSVNAccessFile is put in a variable,
> performance..!
> > Let me know if you would prefer that way of solving it.
>
> This slipped through my testing because I don't use davautocheck.sh.
>
> The proposed fix seems fine to me. I would suggest that you commit the
> patch. As far as I can tell nobody has objected to your proposal.
> The code could still be tweaked later in follow-up commits if anyone
> comes up with new ideas.
>
Thanks for reviewing. Committed as r1892121 (plus some messing around with
a backport that didn't go as planned and thus reverted, sorry for spamming
commits@).
/Daniel
Re: 1.14.x test failure under USE_HTTPV1=1: ra-test 13
commit_empty_last_change
Posted by Stefan Sperling <st...@elego.de>.
On Sun, Aug 01, 2021 at 10:53:18PM +0200, Daniel Sahlberg wrote:
> Did anyone have the time to review this?
>
> I realise another way to do it would be to add an argument to
> location_common. Maybe a bit clearer, possibly even reducing to a single
> call to cat if the AuthzSVNAccessFile is put in a variable, performance..!
> Let me know if you would prefer that way of solving it.
This slipped through my testing because I don't use davautocheck.sh.
The proposed fix seems fine to me. I would suggest that you commit the
patch. As far as I can tell nobody has objected to your proposal.
The code could still be tweaked later in follow-up commits if anyone
comes up with new ideas.
Cheers,
Stefan
Re: 1.14.x test failure under USE_HTTPV1=1: ra-test 13 commit_empty_last_change
Posted by Daniel Sahlberg <da...@gmail.com>.
Den tors 22 juli 2021 kl 22:36 skrev Daniel Sahlberg <
daniel.l.sahlberg@gmail.com>:
> I'll re-use this thread's second half instead of starting a new thread
> since I realise Daniel has already seen the same error message as I have
> found.
>
> Den fre 16 juli 2021 kl 15:01 skrev Daniel Shahaf <d.s@daniel.shahaf.name
> >:
>
>> In 1.14.1 and branches/1.14.x@HEAD:
>>
>> % make -s davautocheck APACHE_MPM=event USE_HTTPV1=1
>> TESTS="subversion/tests/libsvn_ra/ra-test"
>> ⋮
>> % cat fails.log
>> [[[
>> /home/daniel/src/svn/14x/./subversion/tests/libsvn_ra/ra-test.c:1691,
>> /home/daniel/src/svn/14x/./subversion/libsvn_ra_serf/commit.c:1536,
>> /home/daniel/src/svn/14x/./subversion/libsvn_ra_serf/commit.c:406,
>> /home/daniel/src/svn/14x/./subversion/libsvn_ra_serf/commit.c:344,
>> /home/daniel/src/svn/14x/./subversion/libsvn_ra_serf/commit.c:284,
>> /home/daniel/src/svn/14x/./subversion/libsvn_ra_serf/util.c:1035,
>> /home/daniel/src/svn/14x/./subversion/libsvn_ra_serf/util.c:984,
>> /home/daniel/src/svn/14x/./subversion/libsvn_ra_serf/util.c:949,
>> /home/daniel/src/svn/14x/./subversion/libsvn_ra_serf/multistatus.c:558:
>> (apr_err=SVN_ERR_FS_CONFLICT)
>> svn_tests: E160024: resource out of date; try updating
>> FAIL: ra-test 13: check how last change applies to empty commit
>> ]]]
>>
>> In trunk I got an unrelated error message —
>> .
>> AH00526: Syntax error on line 161 of
>> …/subversion/tests/cmdline/httpd-…/cfg:
>> AuthzSVNAccessFile and AuthzSVNReposRelativeAccessFile directives are
>> mutually exclusive.
>> .
>> — and didn't investigate further.
>>
>
> While investigating danielsh's patch [1] I stumbled on the same error
> message and did some digging.
>
> Line 161 seems related to r1883838. It pulls in a block of configuration
> using a function location_common(), among other things AuthzSVNAccessFile.
> In the location /authz-test-work/in-repos-authz the directive
> AuthzSVNReposRelativeAccessFile is also added. There is a check in
> mod_authz_svn.c returning the error message above.
>
> Assuming that the error message is correct (it is at least 10 years older
> than the new test), we would have to add the common block without the
> AuthzSVNAccessFile.
>
> A naïve way of doing it might be:
>
> [[[
> Index: subversion/tests/cmdline/davautocheck.sh
> ===================================================================
> --- subversion/tests/cmdline/davautocheck.sh (revision 1891735)
> +++ subversion/tests/cmdline/davautocheck.sh (working copy)
> @@ -547,10 +547,9 @@
>
> <Location /svn-test-work/repositories>
> __EOF__
> -location_common() {
> +location_common_without_authz() {
> cat >> "$HTTPD_CFG" <<__EOF__
> DAV svn
> - AuthzSVNAccessFile
> "$ABS_BUILDDIR/subversion/tests/cmdline/svn-test-work/authz"
> AuthType Basic
> AuthName "Subversion Repository"
> AuthUserFile $HTTPD_USERS
> @@ -560,6 +559,12 @@
> SVNBlockRead ${BLOCK_READ_SETTING}
> __EOF__
> }
> +location_common() {
> +location_common_without_authz
> +cat >> "$HTTPD_CFG" <<__EOF__
> + AuthzSVNAccessFile
> "$ABS_BUILDDIR/subversion/tests/cmdline/svn-test-work/authz"
> +__EOF__
> +}
> location_common
> cat >> "$HTTPD_CFG" <<__EOF__
> SVNParentPath
> "$ABS_BUILDDIR/subversion/tests/cmdline/svn-test-work/repositories"
> @@ -612,7 +617,7 @@
> </Location>
> <Location /authz-test-work/in-repos-authz>
> __EOF__
> -location_common
> +location_common_without_authz
> cat >> "$HTTPD_CFG" <<__EOF__
> SVNParentPath
> "$ABS_BUILDDIR/subversion/tests/cmdline/svn-test-work/repositories"
> Require valid-user
> ]]]
>
> Kind regards,
> Daniel Sahlberg
>
> [1]
> https://mail-archives.apache.org/mod_mbox/subversion-dev/202107.mbox/%3C20210716135352.GA2413%40tarpaulin.shahaf.local2%3E
>
>
Did anyone have the time to review this?
I realise another way to do it would be to add an argument to
location_common. Maybe a bit clearer, possibly even reducing to a single
call to cat if the AuthzSVNAccessFile is put in a variable, performance..!
Let me know if you would prefer that way of solving it.
Kind regards,
Daniel Sahlberg
Re: 1.14.x test failure under USE_HTTPV1=1: ra-test 13 commit_empty_last_change
Posted by Daniel Sahlberg <da...@gmail.com>.
I'll re-use this thread's second half instead of starting a new thread
since I realise Daniel has already seen the same error message as I have
found.
Den fre 16 juli 2021 kl 15:01 skrev Daniel Shahaf <d....@daniel.shahaf.name>:
> In 1.14.1 and branches/1.14.x@HEAD:
>
> % make -s davautocheck APACHE_MPM=event USE_HTTPV1=1
> TESTS="subversion/tests/libsvn_ra/ra-test"
> ⋮
> % cat fails.log
> [[[
> /home/daniel/src/svn/14x/./subversion/tests/libsvn_ra/ra-test.c:1691,
> /home/daniel/src/svn/14x/./subversion/libsvn_ra_serf/commit.c:1536,
> /home/daniel/src/svn/14x/./subversion/libsvn_ra_serf/commit.c:406,
> /home/daniel/src/svn/14x/./subversion/libsvn_ra_serf/commit.c:344,
> /home/daniel/src/svn/14x/./subversion/libsvn_ra_serf/commit.c:284,
> /home/daniel/src/svn/14x/./subversion/libsvn_ra_serf/util.c:1035,
> /home/daniel/src/svn/14x/./subversion/libsvn_ra_serf/util.c:984,
> /home/daniel/src/svn/14x/./subversion/libsvn_ra_serf/util.c:949,
> /home/daniel/src/svn/14x/./subversion/libsvn_ra_serf/multistatus.c:558:
> (apr_err=SVN_ERR_FS_CONFLICT)
> svn_tests: E160024: resource out of date; try updating
> FAIL: ra-test 13: check how last change applies to empty commit
> ]]]
>
> In trunk I got an unrelated error message —
> .
> AH00526: Syntax error on line 161 of
> …/subversion/tests/cmdline/httpd-…/cfg:
> AuthzSVNAccessFile and AuthzSVNReposRelativeAccessFile directives are
> mutually exclusive.
> .
> — and didn't investigate further.
>
While investigating danielsh's patch [1] I stumbled on the same error
message and did some digging.
Line 161 seems related to r1883838. It pulls in a block of configuration
using a function location_common(), among other things AuthzSVNAccessFile.
In the location /authz-test-work/in-repos-authz the directive
AuthzSVNReposRelativeAccessFile is also added. There is a check in
mod_authz_svn.c returning the error message above.
Assuming that the error message is correct (it is at least 10 years older
than the new test), we would have to add the common block without the
AuthzSVNAccessFile.
A naïve way of doing it might be:
[[[
Index: subversion/tests/cmdline/davautocheck.sh
===================================================================
--- subversion/tests/cmdline/davautocheck.sh (revision 1891735)
+++ subversion/tests/cmdline/davautocheck.sh (working copy)
@@ -547,10 +547,9 @@
<Location /svn-test-work/repositories>
__EOF__
-location_common() {
+location_common_without_authz() {
cat >> "$HTTPD_CFG" <<__EOF__
DAV svn
- AuthzSVNAccessFile
"$ABS_BUILDDIR/subversion/tests/cmdline/svn-test-work/authz"
AuthType Basic
AuthName "Subversion Repository"
AuthUserFile $HTTPD_USERS
@@ -560,6 +559,12 @@
SVNBlockRead ${BLOCK_READ_SETTING}
__EOF__
}
+location_common() {
+location_common_without_authz
+cat >> "$HTTPD_CFG" <<__EOF__
+ AuthzSVNAccessFile
"$ABS_BUILDDIR/subversion/tests/cmdline/svn-test-work/authz"
+__EOF__
+}
location_common
cat >> "$HTTPD_CFG" <<__EOF__
SVNParentPath
"$ABS_BUILDDIR/subversion/tests/cmdline/svn-test-work/repositories"
@@ -612,7 +617,7 @@
</Location>
<Location /authz-test-work/in-repos-authz>
__EOF__
-location_common
+location_common_without_authz
cat >> "$HTTPD_CFG" <<__EOF__
SVNParentPath
"$ABS_BUILDDIR/subversion/tests/cmdline/svn-test-work/repositories"
Require valid-user
]]]
Kind regards,
Daniel Sahlberg
[1]
https://mail-archives.apache.org/mod_mbox/subversion-dev/202107.mbox/%3C20210716135352.GA2413%40tarpaulin.shahaf.local2%3E
Re: 1.14.x test failure under USE_HTTPV1=1: ra-test 13 commit_empty_last_change
Posted by Daniel Sahlberg <da...@gmail.com>.
Den fre 23 juli 2021 kl 01:34 skrev Daniel Sahlberg <
daniel.l.sahlberg@gmail.com>:
> Den fre 16 juli 2021 kl 15:01 skrev Daniel Shahaf <d.s@daniel.shahaf.name
> >:
>
>> In 1.14.1 and branches/1.14.x@HEAD:
>>
>> % make -s davautocheck APACHE_MPM=event USE_HTTPV1=1
>> TESTS="subversion/tests/libsvn_ra/ra-test"
>> ⋮
>> % cat fails.log
>> [[[
>> /home/daniel/src/svn/14x/./subversion/tests/libsvn_ra/ra-test.c:1691,
>> /home/daniel/src/svn/14x/./subversion/libsvn_ra_serf/commit.c:1536,
>> /home/daniel/src/svn/14x/./subversion/libsvn_ra_serf/commit.c:406,
>> /home/daniel/src/svn/14x/./subversion/libsvn_ra_serf/commit.c:344,
>> /home/daniel/src/svn/14x/./subversion/libsvn_ra_serf/commit.c:284,
>> /home/daniel/src/svn/14x/./subversion/libsvn_ra_serf/util.c:1035,
>> /home/daniel/src/svn/14x/./subversion/libsvn_ra_serf/util.c:984,
>> /home/daniel/src/svn/14x/./subversion/libsvn_ra_serf/util.c:949,
>> /home/daniel/src/svn/14x/./subversion/libsvn_ra_serf/multistatus.c:558:
>> (apr_err=SVN_ERR_FS_CONFLICT)
>> svn_tests: E160024: resource out of date; try updating
>> FAIL: ra-test 13: check how last change applies to empty commit
>> ]]]
>>
>
> FWIW, I get the same error in /trunk. It works if excluding USE_HTTPV1=1.
> Getting late here so I'll continue digging later on.
>
I've continued digging and the error is the same in 1.9.12 (I had to
backport the test since it was added in r1716579, after the release of 1.9
and it didn't seem to be backported). I have not been able to run the test
in 1.8 or 1.7 yet, but at least it doesn't look like a regression in a
recent version.
Kind regards,
Daniel Sahlberg
Re: 1.14.x test failure under USE_HTTPV1=1: ra-test 13 commit_empty_last_change
Posted by Daniel Sahlberg <da...@gmail.com>.
Den fre 16 juli 2021 kl 15:01 skrev Daniel Shahaf <d....@daniel.shahaf.name>:
> In 1.14.1 and branches/1.14.x@HEAD:
>
> % make -s davautocheck APACHE_MPM=event USE_HTTPV1=1
> TESTS="subversion/tests/libsvn_ra/ra-test"
> ⋮
> % cat fails.log
> [[[
> /home/daniel/src/svn/14x/./subversion/tests/libsvn_ra/ra-test.c:1691,
> /home/daniel/src/svn/14x/./subversion/libsvn_ra_serf/commit.c:1536,
> /home/daniel/src/svn/14x/./subversion/libsvn_ra_serf/commit.c:406,
> /home/daniel/src/svn/14x/./subversion/libsvn_ra_serf/commit.c:344,
> /home/daniel/src/svn/14x/./subversion/libsvn_ra_serf/commit.c:284,
> /home/daniel/src/svn/14x/./subversion/libsvn_ra_serf/util.c:1035,
> /home/daniel/src/svn/14x/./subversion/libsvn_ra_serf/util.c:984,
> /home/daniel/src/svn/14x/./subversion/libsvn_ra_serf/util.c:949,
> /home/daniel/src/svn/14x/./subversion/libsvn_ra_serf/multistatus.c:558:
> (apr_err=SVN_ERR_FS_CONFLICT)
> svn_tests: E160024: resource out of date; try updating
> FAIL: ra-test 13: check how last change applies to empty commit
> ]]]
>
FWIW, I get the same error in /trunk. It works if excluding USE_HTTPV1=1.
Getting late here so I'll continue digging later on.
Kind regards,
Daniel Sahlberg