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

Sebastian Zenker commented on THRIFT-3496:
------------------------------------------

I captured the traffic between the test client and test server using Wireshark. 
./TestServer --server-type=threaded --transport=http
./TestClient --transport=evhttp

When the client sends a second request, it will still contain the first request.

// Client sends first request: 
////////////////////////////////////////////////////////////////////
POST / HTTP/1.1
Host: localhost
Content-Type: application/x-thrift
Content-Length: 21

........testVoid.....

// response (ok) 
///////////////////////////////////////////////////////////////////////////////////////////
HTTP/1.1 200 OK
Date: Mon, 21 Dec 2015 10:58:57 GMT
Server: Thrift/1.0.0-dev
Access-Control-Allow-Origin: *
Content-Type: application/x-thrift
Content-Length: 21
Connection: Keep-Alive

........testVoid.....

// Client sends second request, which still includes the first request 
/////////////////////////////////
POST / HTTP/1.1
Host: localhost
Content-Type: application/x-thrift
Content-Length: 56

........testVoid............
testString...........test0.

// response from server 
///////////////////////////////////////////////////////////////////////////////////////////
HTTP/1.1 200 OK
Date: Mon, 21 Dec 2015 10:58:57 GMT
Server: Thrift/1.0.0-dev
Access-Control-Allow-Origin: *
Content-Type: application/x-thrift
Content-Length: 21
Connection: Keep-Alive

........testVoid.....

HTTP/1.1 200 OK
Date: Mon, 21 Dec 2015 10:58:57 GMT
Server: Thrift/1.0.0-dev
Access-Control-Allow-Origin: *
Content-Type: application/x-thrift
Content-Length: 35
Connection: Keep-Alive

.......
testString...........test0.

> C++: Cob style client fails when sending a consecutive request
> --------------------------------------------------------------
>
>                 Key: THRIFT-3496
>                 URL: https://issues.apache.org/jira/browse/THRIFT-3496
>             Project: Thrift
>          Issue Type: Bug
>          Components: C++ - Compiler, C++ - Library
>    Affects Versions: 1.0
>         Environment: Linux
>            Reporter: Sebastian Zenker
>            Priority: Critical
>              Labels: easyfix
>   Original Estimate: 1h
>  Remaining Estimate: 1h
>
> I extended the C++ unit tests to send a second request using the same 
> generate client instance (without recreating it). This causes the following 
> two problems:
> 1.) the client still has the first request in it's output buffer causing it 
> to send the first request again and again
> 2.) the wrong cob gets called, as sending the second request will always 
> overwrite the cob of the first request



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)

Reply via email to