You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@trafficserver.apache.org by zw...@apache.org on 2013/08/03 22:51:57 UTC
[48/52] [abbrv] git commit: [TS-2052] ET_SSL thread spinning
[TS-2052] ET_SSL thread spinning
Project: http://git-wip-us.apache.org/repos/asf/trafficserver/repo
Commit: http://git-wip-us.apache.org/repos/asf/trafficserver/commit/94e9830c
Tree: http://git-wip-us.apache.org/repos/asf/trafficserver/tree/94e9830c
Diff: http://git-wip-us.apache.org/repos/asf/trafficserver/diff/94e9830c
Branch: refs/heads/3.3.x
Commit: 94e9830c21f046aafe0247fb9c95198fc0902144
Parents: b91279d
Author: Brian Geffon <br...@apache.org>
Authored: Fri Aug 2 17:43:41 2013 -0700
Committer: Brian Geffon <br...@apache.org>
Committed: Fri Aug 2 17:43:41 2013 -0700
----------------------------------------------------------------------
CHANGES | 4 +++-
proxy/http/HttpSM.cc | 6 +++++-
2 files changed, 8 insertions(+), 2 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/trafficserver/blob/94e9830c/CHANGES
----------------------------------------------------------------------
diff --git a/CHANGES b/CHANGES
index 3cc9cd7..c8fde03 100644
--- a/CHANGES
+++ b/CHANGES
@@ -1,6 +1,8 @@
-*- coding: utf-8 -*-
Changes with Apache Traffic Server 3.3.5
-
+
+ *) [TS-2052] ET_SSL thread spinning
+ Author: Can Selcik <cselcik at linkedin.com>
*) [TS-2090 Make proxy.config.allocator.enable_reclaim default based on
build instructions.
http://git-wip-us.apache.org/repos/asf/trafficserver/blob/94e9830c/proxy/http/HttpSM.cc
----------------------------------------------------------------------
diff --git a/proxy/http/HttpSM.cc b/proxy/http/HttpSM.cc
index 5b879bc..7bba241 100644
--- a/proxy/http/HttpSM.cc
+++ b/proxy/http/HttpSM.cc
@@ -741,7 +741,8 @@ HttpSM::state_read_client_request_header(int event, void *data)
}
// Check to see if we are done parsing the header
- if (state != PARSE_CONT || ua_entry->eos) {
+ if (state != PARSE_CONT || ua_entry->eos ||
+ (state == PARSE_CONT && event == VC_EVENT_READ_COMPLETE)) {
if (ua_raw_buffer_reader != NULL) {
ua_raw_buffer_reader->dealloc();
ua_raw_buffer_reader = NULL;
@@ -771,6 +772,9 @@ HttpSM::state_read_client_request_header(int event, void *data)
call_transact_and_set_next_state(HttpTransact::BadRequest);
break;
+ } else if (event == VC_EVENT_READ_COMPLETE) {
+ DebugSM("http_parse", "[%" PRId64 "] VC_EVENT_READ_COMPLETE and PARSE CONT state", sm_id);
+ break;
} else {
if (is_transparent_passthrough_allowed() &&
ua_raw_buffer_reader != NULL &&