trafficserver-commits mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From zw...@apache.org
Subject [24/34] git commit: TS-2306: Client connection hang while downloading big file from origin server over SSL connection
Date Wed, 05 Feb 2014 00:30:31 GMT
TS-2306: Client connection hang while downloading big file from origin
server over SSL connection


Project: http://git-wip-us.apache.org/repos/asf/trafficserver/repo
Commit: http://git-wip-us.apache.org/repos/asf/trafficserver/commit/03bdbc50
Tree: http://git-wip-us.apache.org/repos/asf/trafficserver/tree/03bdbc50
Diff: http://git-wip-us.apache.org/repos/asf/trafficserver/diff/03bdbc50

Branch: refs/heads/5.0.x
Commit: 03bdbc50acace06e1e9b20b70adb6515ae09fbe4
Parents: 1e55ec8
Author: Ron Barber <rbarber@yahoo-inc.com>
Authored: Mon Feb 3 12:36:28 2014 -0800
Committer: Bryan Call <bcall@apache.org>
Committed: Mon Feb 3 12:36:28 2014 -0800

----------------------------------------------------------------------
 CHANGES                         | 3 +++
 iocore/net/SSLNetVConnection.cc | 8 +++-----
 2 files changed, 6 insertions(+), 5 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/trafficserver/blob/03bdbc50/CHANGES
----------------------------------------------------------------------
diff --git a/CHANGES b/CHANGES
index 4753b52..a260943 100644
--- a/CHANGES
+++ b/CHANGES
@@ -1,6 +1,9 @@
                                                          -*- coding: utf-8 -*-
 Changes with Apache Traffic Server 4.2.0
 
+  *) [TS-2306] Client connection hang while downloading big file from origin
+   server over SSL connection
+
   *) [TS-2353] Add ability to load ssl certs that are owned by root and only
    read only by the user
 

http://git-wip-us.apache.org/repos/asf/trafficserver/blob/03bdbc50/iocore/net/SSLNetVConnection.cc
----------------------------------------------------------------------
diff --git a/iocore/net/SSLNetVConnection.cc b/iocore/net/SSLNetVConnection.cc
index 199b6ce..b04de64 100644
--- a/iocore/net/SSLNetVConnection.cc
+++ b/iocore/net/SSLNetVConnection.cc
@@ -251,16 +251,14 @@ SSLNetVConnection::net_read_io(NetHandler *nh, EThread *lthread)
     return;
   }
 
-  // If there is nothing to do, disable connection
-  if (ntodo <= 0) {
+  // If there is nothing to do or no space available, disable connection
+  if (ntodo <= 0 || !buf.writer()->write_avail()) {
     read_disable(nh, this);
     return;
   }
 
+  // not sure if this do-while loop is really needed here, please replace this comment if
you know
   do {
-    if (!buf.writer()->write_avail()) {
-      buf.writer()->add_block();
-    }
     ret = ssl_read_from_net(this, lthread, r);
     if (ret == SSL_READ_READY || ret == SSL_READ_ERROR_NONE) {
       bytes += r;


Mime
View raw message