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

Erik commented on THRIFT-5611:
------------------------------

attaching my client code (Python)

```

{color:#cc7832}import {color}time
{color:#cc7832}from {color}tap_ibkr.core_tws.ibrokers_thrift.gen_py.ibrokers 
{color:#cc7832}import {color}ibrokers
{color:#cc7832}from {color}thrift.transport {color:#cc7832}import {color}TSocket
{color:#cc7832}from {color}thrift.transport {color:#cc7832}import 
{color}TTransport
{color:#cc7832}from {color}thrift.protocol {color:#cc7832}import 
{color}TBinaryProtocol
{color:#cc7832}from 
{color}tap_ibkr.core_tws.ibrokers_thrift.gen_py.ibrokers.ttypes 
{color:#cc7832}import {color}IBContract{color:#cc7832}, {color}NewsResponse


{color:#cc7832}class {color}TWSAPIThriftClient:

client_connection = {color:#cc7832}None
{color}{color:#cc7832}
{color}{color:#cc7832} def 
{color}{color:#ffc66d}connect_to_thrift_server{color}({color:#94558d}self{color}{color:#cc7832},
 {color}tws_thrift_host={color:#6a8759}"127.0.0.1"{color}{color:#cc7832}, 
{color}ib_host_port={color:#6897bb}9090{color}):

{color:#cc7832}if {color}{color:#94558d}self{color}.client_connection 
{color:#cc7832}is None{color}:
{color:#808080}# Make socket
{color}{color:#808080} {color}transport = 
TSocket.TSocket(tws_thrift_host{color:#cc7832}, {color}ib_host_port)
{color:#808080}# Buffering is critical. Raw sockets are very slow
{color}{color:#808080} {color}transport = 
TTransport.TBufferedTransport(transport)
{color:#808080}# Wrap in a protocol
{color}{color:#808080} {color}protocol = 
TBinaryProtocol.TBinaryProtocol(transport)
{color:#808080}# Create a ibrokers_client to use the protocol encoder
{color}{color:#808080} {color}client = ibrokers.Client(protocol)
{color:#808080}# Connect!
{color}{color:#808080} {color}transport.open()

{color:#94558d}self{color}.client_connection = client

{color:#cc7832}return {color}{color:#94558d}self{color}.client_connection


{color:#cc7832}if {color}__name__ == {color:#6a8759}"__main__"{color}:

temp_client = TWSAPIThriftClient()

temp_client = temp_client.connect_to_thrift_server()
result = 
temp_client.send_request_matching_symbols([{color:#6a8759}'a'{color}{color:#cc7832},
 {color}{color:#6a8759}'tsla'{color}])

{color:#8888c6}print{color}()


```

result comes back `None` on client side

> v0.16.0 C++ servers suddenly giving brokenpipe errors
> -----------------------------------------------------
>
>                 Key: THRIFT-5611
>                 URL: https://issues.apache.org/jira/browse/THRIFT-5611
>             Project: Thrift
>          Issue Type: Bug
>          Components: C++ - Library
>    Affects Versions: 0.16.0
>            Reporter: Erik
>            Priority: Major
>
> I jumped from v0.15.0 to v0.16.0 .. and trying to track down what could cause 
> this response in my C++ Server
>  
> {code:java}
> Thrift: Mon Aug 15 22:11:54 2022 TSocket::write_partial() send() <Host: 
> 127.0.0.1 Port: 58998>: Broken pipe 
> Thrift: Mon Aug 15 22:11:54 2022 TConnectedClient died: write() send(): 
> Broken pipe 
> Thrift: Mon Aug 15 22:11:54 2022 TConnectedClient output close failed: Called 
> write on non-open socket
> {code}
>  
> my server code is unchanged and was previously okay, I think.. I will keep 
> debugging and trying to ensure it's not me but.. can anyone clue me in on how 
> to repair this ? or what to look for?



--
This message was sent by Atlassian Jira
(v8.20.10#820010)

Reply via email to