thrift-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From chetmurthy <>
Subject [GitHub] thrift issue #1418: Thrift 3877 http server buffering bug oneway
Date Thu, 11 Jan 2018 02:39:54 GMT
Github user chetmurthy commented on the issue:
    This patch only flxes cpp-cpp (http) failures. B/c the deeper issue is that the Thrift
cpp stack (both client & server) is nonstandard.
    I think I mentioned that I could improve this a bit, by having the client not wait for
the reply from the server, but the server would eventually deliver it anyway.  The client
would keep track of of how many replies it had ignored, and when it came time to actually
want to see a reply, it woud skip past the requisite # of ignored replies.  Also (of course),
you'd want to only ignore replies up to some limit -- or you could deadlock.
    Not very hard to do, actually.  And this would also fix cpp(client)-http-<anylang>(server)
tests.  BUT it would NOT fix <anylang>(client)-http<anylang>(server) tests, b/c
(from what I remember of my little stroll thru code) (almost?) all the other languages' HTTP
stacks assume an RPC model for how applications will use the client HTTP stack.  So they're
written with "send request, immediately turn around and wait for response" as the model.
    Hope this helps.


View raw message