You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@subversion.apache.org by cm...@apache.org on 2012/11/20 19:34:34 UTC
svn commit: r1411779 - in /subversion/trunk/subversion/libsvn_ra_serf:
ra_serf.h replay.c serf.c update.c util.c
Author: cmpilato
Date: Tue Nov 20 18:34:33 2012
New Revision: 1411779
URL: http://svn.apache.org/viewvc?rev=1411779&view=rev
Log:
Use a 64-bit variable (rather than a 32-bit one) to hold ra_serf
timeout values expressed in microseconds. Overflow is uncool.
. o O ( Maybe this time I won't break the build... )
* subversion/libsvn_ra_serf/serf.c
(DEFAULT_HTTP_TIMEOUT): Set to 5 minutes (instead of 60!).
(load_config): Simplify timeout logic a bit.
* subversion/libsvn_ra_serf/ra_serf.h
(struct svn_ra_serf__session_t): Change 'timeout' from an
apr_short_interval_time_t to an apr_interval_time_t.
* subversion/libsvn_ra_serf/replay.c
(svn_ra_serf__replay_range): Change 'waittime_left' from an
apr_short_interval_time_t to an apr_interval_time_t.
* subversion/libsvn_ra_serf/update.c
(finish_report): Change 'waittime_left' from an
apr_short_interval_time_t to an apr_interval_time_t.
* subversion/libsvn_ra_serf/util.c
(svn_ra_serf__context_run_wait): Change 'waittime_left' from an
apr_short_interval_time_t to an apr_interval_time_t.
Modified:
subversion/trunk/subversion/libsvn_ra_serf/ra_serf.h
subversion/trunk/subversion/libsvn_ra_serf/replay.c
subversion/trunk/subversion/libsvn_ra_serf/serf.c
subversion/trunk/subversion/libsvn_ra_serf/update.c
subversion/trunk/subversion/libsvn_ra_serf/util.c
Modified: subversion/trunk/subversion/libsvn_ra_serf/ra_serf.h
URL: http://svn.apache.org/viewvc/subversion/trunk/subversion/libsvn_ra_serf/ra_serf.h?rev=1411779&r1=1411778&r2=1411779&view=diff
==============================================================================
--- subversion/trunk/subversion/libsvn_ra_serf/ra_serf.h (original)
+++ subversion/trunk/subversion/libsvn_ra_serf/ra_serf.h Tue Nov 20 18:34:33 2012
@@ -189,7 +189,7 @@ struct svn_ra_serf__session_t {
const char *uuid;
/* Connection timeout value */
- apr_short_interval_time_t timeout;
+ apr_interval_time_t timeout;
/* HTTPv1 flags */
svn_tristate_t supports_deadprop_count;
Modified: subversion/trunk/subversion/libsvn_ra_serf/replay.c
URL: http://svn.apache.org/viewvc/subversion/trunk/subversion/libsvn_ra_serf/replay.c?rev=1411779&r1=1411778&r2=1411779&view=diff
==============================================================================
--- subversion/trunk/subversion/libsvn_ra_serf/replay.c (original)
+++ subversion/trunk/subversion/libsvn_ra_serf/replay.c Tue Nov 20 18:34:33 2012
@@ -732,7 +732,7 @@ svn_ra_serf__replay_range(svn_ra_session
svn_revnum_t rev = start_revision;
const char *report_target;
int active_reports = 0;
- apr_short_interval_time_t waittime_left = session->timeout;
+ apr_interval_time_t waittime_left = session->timeout;
SVN_ERR(svn_ra_serf__report_resource(&report_target, session, NULL, pool));
Modified: subversion/trunk/subversion/libsvn_ra_serf/serf.c
URL: http://svn.apache.org/viewvc/subversion/trunk/subversion/libsvn_ra_serf/serf.c?rev=1411779&r1=1411778&r2=1411779&view=diff
==============================================================================
--- subversion/trunk/subversion/libsvn_ra_serf/serf.c (original)
+++ subversion/trunk/subversion/libsvn_ra_serf/serf.c Tue Nov 20 18:34:33 2012
@@ -131,7 +131,11 @@ load_http_auth_types(apr_pool_t *pool, s
return SVN_NO_ERROR;
}
-#define DEFAULT_HTTP_TIMEOUT 3600
+
+/* Default HTTP timeout (in seconds); overridden by the 'http-timeout'
+ runtime configuration variable. */
+#define DEFAULT_HTTP_TIMEOUT 600
+
static svn_error_t *
load_config(svn_ra_serf__session_t *session,
apr_hash_t *config_hash,
@@ -253,6 +257,7 @@ load_config(svn_ra_serf__session_t *sess
}
/* Parse the connection timeout value, if any. */
+ session->timeout = apr_time_from_sec(DEFAULT_HTTP_TIMEOUT);
if (timeout_str)
{
char *endstr;
@@ -267,12 +272,6 @@ load_config(svn_ra_serf__session_t *sess
_("Invalid config: negative timeout value"));
session->timeout = apr_time_from_sec(timeout);
}
- else
- session->timeout = apr_time_from_sec(DEFAULT_HTTP_TIMEOUT);
-
- if (session->timeout < 0) /* Always true for DEFAULT_HTTP_TIMEOUT */
- session->timeout = apr_time_from_sec(600); /* 10 min */
-
SVN_ERR_ASSERT(session->timeout > 0);
/* Convert the proxy port value, if any. */
Modified: subversion/trunk/subversion/libsvn_ra_serf/update.c
URL: http://svn.apache.org/viewvc/subversion/trunk/subversion/libsvn_ra_serf/update.c?rev=1411779&r1=1411778&r2=1411779&view=diff
==============================================================================
--- subversion/trunk/subversion/libsvn_ra_serf/update.c (original)
+++ subversion/trunk/subversion/libsvn_ra_serf/update.c Tue Nov 20 18:34:33 2012
@@ -2562,7 +2562,7 @@ finish_report(void *report_baton,
svn_stringbuf_t *buf = NULL;
apr_pool_t *iterpool = svn_pool_create(pool);
svn_error_t *err;
- apr_short_interval_time_t waittime_left = sess->timeout;
+ apr_interval_time_t waittime_left = sess->timeout;
svn_xml_make_close_tag(&buf, iterpool, "S:update-report");
SVN_ERR(svn_io_file_write_full(report->body_file, buf->data, buf->len,
Modified: subversion/trunk/subversion/libsvn_ra_serf/util.c
URL: http://svn.apache.org/viewvc/subversion/trunk/subversion/libsvn_ra_serf/util.c?rev=1411779&r1=1411778&r2=1411779&view=diff
==============================================================================
--- subversion/trunk/subversion/libsvn_ra_serf/util.c (original)
+++ subversion/trunk/subversion/libsvn_ra_serf/util.c Tue Nov 20 18:34:33 2012
@@ -718,7 +718,7 @@ svn_ra_serf__context_run_wait(svn_boolea
apr_pool_t *scratch_pool)
{
apr_pool_t *iterpool;
- apr_short_interval_time_t waittime_left = sess->timeout;
+ apr_interval_time_t waittime_left = sess->timeout;
assert(sess->pending_error == SVN_NO_ERROR);
Re: svn commit: r1411779 - in /subversion/trunk/subversion/libsvn_ra_serf: ra_serf.h replay.c serf.c update.c util.c
Posted by Julian Foad <ju...@btopenworld.com>.
> Author: cmpilato
> Date: Tue Nov 20 18:34:33 2012
> New Revision: 1411779
>
> URL: http://svn.apache.org/viewvc?rev=1411779&view=rev
> Log:
> Use a 64-bit variable (rather than a 32-bit one) to hold ra_serf
> timeout values expressed in microseconds. Overflow is uncool.
Mention here that you also changed the default timeout ...
>
> . o O ( Maybe this time I won't break the build... )
>
> * subversion/libsvn_ra_serf/serf.c
> (DEFAULT_HTTP_TIMEOUT): Set to 5 minutes (instead of 60!).
... but in fact you changed it to 10 mins not 5.
- Julian
> (load_config): Simplify timeout logic a bit.
>
> * subversion/libsvn_ra_serf/ra_serf.h
> (struct svn_ra_serf__session_t): Change 'timeout' from an
> apr_short_interval_time_t to an apr_interval_time_t.
>
> * subversion/libsvn_ra_serf/replay.c
> (svn_ra_serf__replay_range): Change 'waittime_left' from an
> apr_short_interval_time_t to an apr_interval_time_t.
>
> * subversion/libsvn_ra_serf/update.c
> (finish_report): Change 'waittime_left' from an
> apr_short_interval_time_t to an apr_interval_time_t.
>
> * subversion/libsvn_ra_serf/util.c
> (svn_ra_serf__context_run_wait): Change 'waittime_left' from an
> apr_short_interval_time_t to an apr_interval_time_t.
[...]
> -#define DEFAULT_HTTP_TIMEOUT 3600
> +
> +/* Default HTTP timeout (in seconds); overridden by the 'http-timeout'
> + runtime configuration variable. */
> +#define DEFAULT_HTTP_TIMEOUT 600