You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@trafficserver.apache.org by so...@apache.org on 2015/04/22 18:55:23 UTC

[04/12] trafficserver git commit: TS-3530: HTTP/2 memory leak with headers and more...

TS-3530: HTTP/2 memory leak with headers and more...

(cherry picked from commit bc2ae5a8dbcfe75b60d419190d1ee7dadae26d68)


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

Branch: refs/heads/5.3.x
Commit: 05bb034cfcacc46ae086a87699e655cf1ae8e065
Parents: 1587995
Author: Bryan Call <bc...@apache.org>
Authored: Fri Apr 17 14:27:56 2015 -0500
Committer: Phil Sorber <so...@apache.org>
Committed: Fri Apr 17 13:44:24 2015 -0600

----------------------------------------------------------------------
 proxy/http2/Http2ConnectionState.cc | 2 +-
 proxy/http2/Http2ConnectionState.h  | 2 +-
 2 files changed, 2 insertions(+), 2 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/trafficserver/blob/05bb034c/proxy/http2/Http2ConnectionState.cc
----------------------------------------------------------------------
diff --git a/proxy/http2/Http2ConnectionState.cc b/proxy/http2/Http2ConnectionState.cc
index 3322d6d..a63f4fd 100644
--- a/proxy/http2/Http2ConnectionState.cc
+++ b/proxy/http2/Http2ConnectionState.cc
@@ -653,7 +653,7 @@ Http2ConnectionState::main_event_handler(int event, void *edata)
 
     if (error != HTTP2_ERROR_NO_ERROR) {
       this->send_goaway_frame(last_streamid, error);
-
+      cleanup_streams();
       // XXX We need to think a bit harder about how to coordinate the client session and the
       // protocol connection. At this point, the protocol is shutting down, but there's no way
       // to tell that to the client session. Perhaps this could be solved by implementing the

http://git-wip-us.apache.org/repos/asf/trafficserver/blob/05bb034c/proxy/http2/Http2ConnectionState.h
----------------------------------------------------------------------
diff --git a/proxy/http2/Http2ConnectionState.h b/proxy/http2/Http2ConnectionState.h
index 8f33542..6a97690 100644
--- a/proxy/http2/Http2ConnectionState.h
+++ b/proxy/http2/Http2ConnectionState.h
@@ -105,7 +105,7 @@ public:
 
   ~Http2Stream()
   {
-    _req_header.clear();
+    _req_header.destroy();
 
     if (_fetch_sm) {
       _fetch_sm->ext_destroy();