[ 
https://issues.apache.org/jira/browse/TS-1525?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13475595#comment-13475595
 ] 

Conan Wang commented on TS-1525:
--------------------------------

As for malformed status line and incorrect warning at error.log : [spdy] client 
is version 2, but we implement version 3, following change is OK for me.

{code}
diff --git a/plugins/experimental/spdy/http.cc b/plugins/experimental/spdy/htt
index 94cb9ac..b5e0432 100644
--- a/plugins/experimental/spdy/http.cc
+++ b/plugins/experimental/spdy/http.cc
@@ -41,7 +41,7 @@ populate_http_headers(
     snprintf(status, sizeof(status),
             "%u %s", (unsigned)code, TSHttpHdrReasonLookup(code));
     snprintf(httpvers, sizeof(httpvers),
-            "HTTP/%2u.%2u", TS_HTTP_MAJOR(vers), TS_HTTP_MINOR(vers));
+            "HTTP/%u.%u", TS_HTTP_MAJOR(vers), TS_HTTP_MINOR(vers));
 
     if (version == spdy::PROTOCOL_VERSION_2) {
         kvblock["status"] = status;
diff --git a/plugins/experimental/spdy/lib/spdy/spdy.h b/plugins/experimental/
index 90bea0f..fa5632a 100644
--- a/plugins/experimental/spdy/lib/spdy/spdy.h
+++ b/plugins/experimental/spdy/lib/spdy/spdy.h
@@ -35,7 +35,7 @@ namespace spdy {
     };
 
     enum : unsigned {
-        PROTOCOL_VERSION = 3,
+        PROTOCOL_VERSION = 2,
         MAX_FRAME_LENGTH = (1u << 24)
     };
{code}
                
> SPDY plugin will hang after several requests
> --------------------------------------------
>
>                 Key: TS-1525
>                 URL: https://issues.apache.org/jira/browse/TS-1525
>             Project: Traffic Server
>          Issue Type: Bug
>          Components: Plugins
>            Reporter: Conan Wang
>
> In a spdy session, plugin will hang if reload the page several times in 
> browser.
> Debug log:
> {code}
> (spdy.plugin) spdy_vconn_io:297 received 738 bytes
> (spdy.plugin) spdy_vconn_io:297 received 754 bytes
> (spdy.plugin) spdy_vconn_io:297 received 1442 bytes
> (spdy.plugin) spdy_vconn_io:297 received 1458 bytes
> ....repeat on each reload request....
> {code}
> Some debug info,  FYI:
> When hanging, at spdy.cc:204 consume_spdy_frame(), nbytes from 
> TSIOBufferBlockReadStart will not grow. So (header.datalen <= (nbytes - 
> spdy::message_header::size) can not pass test. 
> nbytes from TSIOBufferBlockReadStart is the available bytes of current block, 
> which I think should get from TSIOBufferReaderAvail(io->input.reader). 
> However, after replacing with TSIOBufferReaderAvail, other issues will raise: 
> parsing request header will fail or crash when decompressing header.

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira

Reply via email to