You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@subversion.apache.org by st...@apache.org on 2012/10/20 18:00:47 UTC

svn commit: r1400482 - in /subversion/trunk/subversion: include/svn_ra_svn.h libsvn_ra_svn/client.c libsvn_ra_svn/marshal.c svnserve/serve.c

Author: stefan2
Date: Sat Oct 20 16:00:46 2012
New Revision: 1400482

URL: http://svn.apache.org/viewvc?rev=1400482&view=rev
Log:
Update to non-deprecated API: switch 2 calls from free-form
ra_svn commands to templated commands.

* subversion/include/svn_ra_svn.h
  (svn_ra_svn_cmd_t): define new commands
* subversion/libsvn_ra_svn/marshal.c
  (vwrite_cmd_get_iprops): new command template
  (cmd_template): add entries for new commands

* subversion/libsvn_ra_svn/client.c
  (ra_svn_get_inherited_props): use templated ra_svn command
* subversion/svnserve/serve.c
  (replay_one_revision): ditto

Modified:
    subversion/trunk/subversion/include/svn_ra_svn.h
    subversion/trunk/subversion/libsvn_ra_svn/client.c
    subversion/trunk/subversion/libsvn_ra_svn/marshal.c
    subversion/trunk/subversion/svnserve/serve.c

Modified: subversion/trunk/subversion/include/svn_ra_svn.h
URL: http://svn.apache.org/viewvc/subversion/trunk/subversion/include/svn_ra_svn.h?rev=1400482&r1=1400481&r2=1400482&view=diff
==============================================================================
--- subversion/trunk/subversion/include/svn_ra_svn.h (original)
+++ subversion/trunk/subversion/include/svn_ra_svn.h Sat Oct 20 16:00:46 2012
@@ -215,6 +215,8 @@ typedef enum svn_ra_svn_cmd_t
   svn_ra_svn_cmd_replay,
   svn_ra_svn_cmd_replay_range,
   svn_ra_svn_cmd_get_deleted_rev,
+  svn_ra_svn_cmd_get_iprops,
+  svn_ra_svn_cmd_finish_replay,
 
   svn_ra_svn_cmd__last
 } svn_ra_svn_cmd_t;

Modified: subversion/trunk/subversion/libsvn_ra_svn/client.c
URL: http://svn.apache.org/viewvc/subversion/trunk/subversion/libsvn_ra_svn/client.c?rev=1400482&r1=1400481&r2=1400482&view=diff
==============================================================================
--- subversion/trunk/subversion/libsvn_ra_svn/client.c (original)
+++ subversion/trunk/subversion/libsvn_ra_svn/client.c Sat Oct 20 16:00:46 2012
@@ -2671,8 +2671,9 @@ ra_svn_get_inherited_props(svn_ra_sessio
   svn_ra_svn_conn_t *conn = sess_baton->conn;
   apr_array_header_t *iproplist;
 
-  SVN_ERR(svn_ra_svn_write_cmd(conn, scratch_pool, "get-iprops", "c(?r)",
-                               path, revision));
+  SVN_ERR(svn_ra_svn_write_templated_cmd(conn, scratch_pool,
+                                         svn_ra_svn_cmd_get_iprops,
+                                         path, revision));
   SVN_ERR(handle_auth_request(sess_baton, scratch_pool));
   SVN_ERR(svn_ra_svn_read_cmd_response(conn, scratch_pool, "l", &iproplist));
   SVN_ERR(parse_iproplist(iprops, iproplist, session, result_pool,

Modified: subversion/trunk/subversion/libsvn_ra_svn/marshal.c
URL: http://svn.apache.org/viewvc/subversion/trunk/subversion/libsvn_ra_svn/marshal.c?rev=1400482&r1=1400481&r2=1400482&view=diff
==============================================================================
--- subversion/trunk/subversion/libsvn_ra_svn/marshal.c (original)
+++ subversion/trunk/subversion/libsvn_ra_svn/marshal.c Sat Oct 20 16:00:46 2012
@@ -1103,7 +1103,15 @@ vwrite_cmd_get_deleted_rev(svn_ra_svn_co
   return SVN_NO_ERROR;
 }
 
+static svn_error_t *
+vwrite_cmd_get_iprops(svn_ra_svn_conn_t *conn, apr_pool_t *pool, va_list *ap)
+{
+  SVN_ERR(vwrite_tuple_cstring(conn, pool, ap));
+  SVN_ERR(vwrite_tuple_revision_opt(conn, pool, ap));
 
+  return SVN_NO_ERROR;
+}
+ 
 typedef svn_error_t *
 (*vwrite_tuple_func)(svn_ra_svn_conn_t *, apr_pool_t *, va_list *);
 
@@ -1161,7 +1169,9 @@ static const cmd_template_t cmd_template
         {"( get-locks ( "       , 14, vwrite_cmd_get_locks },
         {"( replay ( "          , 11, vwrite_cmd_replay },
         {"( replay-range ( "    , 17, vwrite_cmd_replay_range },
-        {"( get-deleted-rev ( " , 20, vwrite_cmd_get_deleted_rev }
+        {"( get-deleted-rev ( " , 20, vwrite_cmd_get_deleted_rev },
+        {"( get-iprops ( "      , 15, vwrite_cmd_get_iprops },
+        {"( finish-replay ( "   , 18, vwrite_cmd_no_op }
     };
 
 

Modified: subversion/trunk/subversion/svnserve/serve.c
URL: http://svn.apache.org/viewvc/subversion/trunk/subversion/svnserve/serve.c?rev=1400482&r1=1400481&r2=1400482&view=diff
==============================================================================
--- subversion/trunk/subversion/svnserve/serve.c (original)
+++ subversion/trunk/subversion/svnserve/serve.c Sat Oct 20 16:00:46 2012
@@ -2841,7 +2841,8 @@ static svn_error_t *replay_one_revision(
     svn_error_clear(editor->abort_edit(edit_baton, pool));
   SVN_CMD_ERR(err);
 
-  return svn_ra_svn_write_cmd(conn, pool, "finish-replay", "");
+  return svn_ra_svn_write_templated_cmd(conn, pool,
+                                        svn_ra_svn_cmd_finish_replay);
 }
 
 static svn_error_t *replay(svn_ra_svn_conn_t *conn, apr_pool_t *pool,



Re: svn commit: r1400482 - in /subversion/trunk/subversion: include/svn_ra_svn.h libsvn_ra_svn/client.c libsvn_ra_svn/marshal.c svnserve/serve.c

Posted by Stefan Fuhrmann <st...@wandisco.com>.
On Sat, Oct 20, 2012 at 6:52 PM, Bert Huijben <be...@qqmail.nl> wrote:

>
>
> > -----Original Message-----
> > From: stefan2@apache.org [mailto:stefan2@apache.org]
> > Sent: zaterdag 20 oktober 2012 18:01
> > To: commits@subversion.apache.org
> > Subject: svn commit: r1400482 - in /subversion/trunk/subversion:
> > include/svn_ra_svn.h libsvn_ra_svn/client.c libsvn_ra_svn/marshal.c
> > svnserve/serve.c
> >
> > Author: stefan2
> > Date: Sat Oct 20 16:00:46 2012
> > New Revision: 1400482
> >
> > URL: http://svn.apache.org/viewvc?rev=1400482&view=rev
> > Log:
> > Update to non-deprecated API: switch 2 calls from free-form
> > ra_svn commands to templated commands.
>
> This revision causes 216 test failures on the Windows-ra buildbot. Several
> caused by some new
> W: ..\..\..\subversion\svn\checkout-cmd.c:168: (apr_err=210002)
> W: ..\..\..\subversion\libsvn_client\checkout.c:179: (apr_err=210002)
> W: ..\..\..\subversion\libsvn_client\update.c:579: (apr_err=210002)
> W: ..\..\..\subversion\libsvn_client\update.c:393: (apr_err=210002)
> W: ..\..\..\subversion\libsvn_client\iprops.c:169: (apr_err=210002)
> W: ..\..\..\subversion\libsvn_ra\ra_loader.c:1267: (apr_err=210002)
> W: ..\..\..\subversion\libsvn_ra_svn\client.c:2677: (apr_err=210002)
> W: ..\..\..\subversion\libsvn_ra_svn\client.c:244: (apr_err=210002)
> W: ..\..\..\subversion\libsvn_ra_svn\marshal.c:1743: (apr_err=210002)
> W: ..\..\..\subversion\libsvn_ra_svn\marshal.c:1619: (apr_err=210002)
> W: ..\..\..\subversion\libsvn_ra_svn\marshal.c:1489: (apr_err=210002)
> W: ..\..\..\subversion\libsvn_ra_svn\marshal.c:420: (apr_err=210002)
> W: ..\..\..\subversion\libsvn_ra_svn\marshal.c:410: (apr_err=210002)
> W: ..\..\..\subversion\libsvn_ra_svn\marshal.c:400: (apr_err=210002)
> W: ..\..\..\subversion\libsvn_ra_svn\marshal.c:350: (apr_err=210002)
> W: ..\..\..\subversion\libsvn_subr\stream.c:143: (apr_err=210002)
> W: ..\..\..\subversion\libsvn_ra_svn\streams.c:159: (apr_err=210002)
> W: svn: E210002: Network connection closed unexpectedly
>

One of the two new command templates was wrong ("c?r" instead of ("c(?r").
Fixed in r1400500.

While the later ones appear to be caused by the quite frequent crash of the
> svnserve process I now often see on the svnserve buildbot.
>
> My guess is that we introduced a stability problem somewhere over the last
> few months. (A pool lifetime issue, or similar)
>

Hm. I currently know of two issues:

* some tests tend to fail when executed in parallel
  (might be remotely related to what you see)
* a customer got an assert() when using 1.8. My guess
  is that there is a buffer overflow - I'm currently working
  on that.

-- Stefan^2.

-- 
*

Join us this October at Subversion Live
2012<http://www.wandisco.com/svn-live-2012>
 for two days of best practice SVN training, networking, live demos,
committer meet and greet, and more! Space is limited, so get signed up
today<http://www.wandisco.com/svn-live-2012>
!
*

Re: svn commit: r1400482 - in /subversion/trunk/subversion: include/svn_ra_svn.h libsvn_ra_svn/client.c libsvn_ra_svn/marshal.c svnserve/serve.c

Posted by Stefan Fuhrmann <st...@wandisco.com>.
On Sat, Oct 20, 2012 at 6:52 PM, Bert Huijben <be...@qqmail.nl> wrote:

>
>
> > -----Original Message-----
> > From: stefan2@apache.org [mailto:stefan2@apache.org]
> > Sent: zaterdag 20 oktober 2012 18:01
> > To: commits@subversion.apache.org
> > Subject: svn commit: r1400482 - in /subversion/trunk/subversion:
> > include/svn_ra_svn.h libsvn_ra_svn/client.c libsvn_ra_svn/marshal.c
> > svnserve/serve.c
> >
> > Author: stefan2
> > Date: Sat Oct 20 16:00:46 2012
> > New Revision: 1400482
> >
> > URL: http://svn.apache.org/viewvc?rev=1400482&view=rev
> > Log:
> > Update to non-deprecated API: switch 2 calls from free-form
> > ra_svn commands to templated commands.
>
> This revision causes 216 test failures on the Windows-ra buildbot. Several
> caused by some new
> W: ..\..\..\subversion\svn\checkout-cmd.c:168: (apr_err=210002)
> W: ..\..\..\subversion\libsvn_client\checkout.c:179: (apr_err=210002)
> W: ..\..\..\subversion\libsvn_client\update.c:579: (apr_err=210002)
> W: ..\..\..\subversion\libsvn_client\update.c:393: (apr_err=210002)
> W: ..\..\..\subversion\libsvn_client\iprops.c:169: (apr_err=210002)
> W: ..\..\..\subversion\libsvn_ra\ra_loader.c:1267: (apr_err=210002)
> W: ..\..\..\subversion\libsvn_ra_svn\client.c:2677: (apr_err=210002)
> W: ..\..\..\subversion\libsvn_ra_svn\client.c:244: (apr_err=210002)
> W: ..\..\..\subversion\libsvn_ra_svn\marshal.c:1743: (apr_err=210002)
> W: ..\..\..\subversion\libsvn_ra_svn\marshal.c:1619: (apr_err=210002)
> W: ..\..\..\subversion\libsvn_ra_svn\marshal.c:1489: (apr_err=210002)
> W: ..\..\..\subversion\libsvn_ra_svn\marshal.c:420: (apr_err=210002)
> W: ..\..\..\subversion\libsvn_ra_svn\marshal.c:410: (apr_err=210002)
> W: ..\..\..\subversion\libsvn_ra_svn\marshal.c:400: (apr_err=210002)
> W: ..\..\..\subversion\libsvn_ra_svn\marshal.c:350: (apr_err=210002)
> W: ..\..\..\subversion\libsvn_subr\stream.c:143: (apr_err=210002)
> W: ..\..\..\subversion\libsvn_ra_svn\streams.c:159: (apr_err=210002)
> W: svn: E210002: Network connection closed unexpectedly
>

One of the two new command templates was wrong ("c?r" instead of ("c(?r").
Fixed in r1400500.

While the later ones appear to be caused by the quite frequent crash of the
> svnserve process I now often see on the svnserve buildbot.
>
> My guess is that we introduced a stability problem somewhere over the last
> few months. (A pool lifetime issue, or similar)
>

Hm. I currently know of two issues:

* some tests tend to fail when executed in parallel
  (might be remotely related to what you see)
* a customer got an assert() when using 1.8. My guess
  is that there is a buffer overflow - I'm currently working
  on that.

-- Stefan^2.

-- 
*

Join us this October at Subversion Live
2012<http://www.wandisco.com/svn-live-2012>
 for two days of best practice SVN training, networking, live demos,
committer meet and greet, and more! Space is limited, so get signed up
today<http://www.wandisco.com/svn-live-2012>
!
*

RE: svn commit: r1400482 - in /subversion/trunk/subversion: include/svn_ra_svn.h libsvn_ra_svn/client.c libsvn_ra_svn/marshal.c svnserve/serve.c

Posted by Bert Huijben <be...@qqmail.nl>.

> -----Original Message-----
> From: stefan2@apache.org [mailto:stefan2@apache.org]
> Sent: zaterdag 20 oktober 2012 18:01
> To: commits@subversion.apache.org
> Subject: svn commit: r1400482 - in /subversion/trunk/subversion:
> include/svn_ra_svn.h libsvn_ra_svn/client.c libsvn_ra_svn/marshal.c
> svnserve/serve.c
> 
> Author: stefan2
> Date: Sat Oct 20 16:00:46 2012
> New Revision: 1400482
> 
> URL: http://svn.apache.org/viewvc?rev=1400482&view=rev
> Log:
> Update to non-deprecated API: switch 2 calls from free-form
> ra_svn commands to templated commands.

This revision causes 216 test failures on the Windows-ra buildbot. Several caused by some new 
W: ..\..\..\subversion\svn\checkout-cmd.c:168: (apr_err=210002)
W: ..\..\..\subversion\libsvn_client\checkout.c:179: (apr_err=210002)
W: ..\..\..\subversion\libsvn_client\update.c:579: (apr_err=210002)
W: ..\..\..\subversion\libsvn_client\update.c:393: (apr_err=210002)
W: ..\..\..\subversion\libsvn_client\iprops.c:169: (apr_err=210002)
W: ..\..\..\subversion\libsvn_ra\ra_loader.c:1267: (apr_err=210002)
W: ..\..\..\subversion\libsvn_ra_svn\client.c:2677: (apr_err=210002)
W: ..\..\..\subversion\libsvn_ra_svn\client.c:244: (apr_err=210002)
W: ..\..\..\subversion\libsvn_ra_svn\marshal.c:1743: (apr_err=210002)
W: ..\..\..\subversion\libsvn_ra_svn\marshal.c:1619: (apr_err=210002)
W: ..\..\..\subversion\libsvn_ra_svn\marshal.c:1489: (apr_err=210002)
W: ..\..\..\subversion\libsvn_ra_svn\marshal.c:420: (apr_err=210002)
W: ..\..\..\subversion\libsvn_ra_svn\marshal.c:410: (apr_err=210002)
W: ..\..\..\subversion\libsvn_ra_svn\marshal.c:400: (apr_err=210002)
W: ..\..\..\subversion\libsvn_ra_svn\marshal.c:350: (apr_err=210002)
W: ..\..\..\subversion\libsvn_subr\stream.c:143: (apr_err=210002)
W: ..\..\..\subversion\libsvn_ra_svn\streams.c:159: (apr_err=210002)
W: svn: E210002: Network connection closed unexpectedly

While the later ones appear to be caused by the quite frequent crash of the svnserve process I now often see on the svnserve buildbot. 

My guess is that we introduced a stability problem somewhere over the last few months. (A pool lifetime issue, or similar)

	Bert 



RE: svn commit: r1400482 - in /subversion/trunk/subversion: include/svn_ra_svn.h libsvn_ra_svn/client.c libsvn_ra_svn/marshal.c svnserve/serve.c

Posted by Bert Huijben <be...@qqmail.nl>.

> -----Original Message-----
> From: stefan2@apache.org [mailto:stefan2@apache.org]
> Sent: zaterdag 20 oktober 2012 18:01
> To: commits@subversion.apache.org
> Subject: svn commit: r1400482 - in /subversion/trunk/subversion:
> include/svn_ra_svn.h libsvn_ra_svn/client.c libsvn_ra_svn/marshal.c
> svnserve/serve.c
> 
> Author: stefan2
> Date: Sat Oct 20 16:00:46 2012
> New Revision: 1400482
> 
> URL: http://svn.apache.org/viewvc?rev=1400482&view=rev
> Log:
> Update to non-deprecated API: switch 2 calls from free-form
> ra_svn commands to templated commands.

This revision causes 216 test failures on the Windows-ra buildbot. Several caused by some new 
W: ..\..\..\subversion\svn\checkout-cmd.c:168: (apr_err=210002)
W: ..\..\..\subversion\libsvn_client\checkout.c:179: (apr_err=210002)
W: ..\..\..\subversion\libsvn_client\update.c:579: (apr_err=210002)
W: ..\..\..\subversion\libsvn_client\update.c:393: (apr_err=210002)
W: ..\..\..\subversion\libsvn_client\iprops.c:169: (apr_err=210002)
W: ..\..\..\subversion\libsvn_ra\ra_loader.c:1267: (apr_err=210002)
W: ..\..\..\subversion\libsvn_ra_svn\client.c:2677: (apr_err=210002)
W: ..\..\..\subversion\libsvn_ra_svn\client.c:244: (apr_err=210002)
W: ..\..\..\subversion\libsvn_ra_svn\marshal.c:1743: (apr_err=210002)
W: ..\..\..\subversion\libsvn_ra_svn\marshal.c:1619: (apr_err=210002)
W: ..\..\..\subversion\libsvn_ra_svn\marshal.c:1489: (apr_err=210002)
W: ..\..\..\subversion\libsvn_ra_svn\marshal.c:420: (apr_err=210002)
W: ..\..\..\subversion\libsvn_ra_svn\marshal.c:410: (apr_err=210002)
W: ..\..\..\subversion\libsvn_ra_svn\marshal.c:400: (apr_err=210002)
W: ..\..\..\subversion\libsvn_ra_svn\marshal.c:350: (apr_err=210002)
W: ..\..\..\subversion\libsvn_subr\stream.c:143: (apr_err=210002)
W: ..\..\..\subversion\libsvn_ra_svn\streams.c:159: (apr_err=210002)
W: svn: E210002: Network connection closed unexpectedly

While the later ones appear to be caused by the quite frequent crash of the svnserve process I now often see on the svnserve buildbot. 

My guess is that we introduced a stability problem somewhere over the last few months. (A pool lifetime issue, or similar)

	Bert