thrift-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Rocco Corsi (JIRA)" <j...@apache.org>
Subject [jira] [Commented] (THRIFT-4885) TSSLSocket crash during write
Date Thu, 04 Jul 2019 17:59:00 GMT

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

Rocco Corsi commented on THRIFT-4885:
-------------------------------------

I work with @op on this issue.

Regarding some comments from https://issues.apache.org/jira/browse/THRIFT-4888, I have the
following additional information.

Ignoring of the SIGPIPE has been part of our code for a long time, so it is not that.

Testing with 0.12.0 will occur hopefully soon, so will have a better idea if that helps or
not.

Our solution has traffic only in ONEWAY calls, from client to server and server to client.

Suspect the failure is occurring if the client is attempting to shutdown the connection and
at the same time the server is sending a ONEWAY call to the client.  So the close (due to
client) and write (due to server sending) are happening in overlapping way inside the server.

Would be interesting to know if your tests cover such a race condition regarding client and
server interactions.

 

Hope to get back to you soon with results from 0.12.0 testing.

>  TSSLSocket crash during write
> ------------------------------
>
>                 Key: THRIFT-4885
>                 URL: https://issues.apache.org/jira/browse/THRIFT-4885
>             Project: Thrift
>          Issue Type: Bug
>          Components: C++ - Library
>    Affects Versions: 0.10.0
>            Reporter: op
>            Priority: Major
>         Attachments: patch.txt
>
>
> It happens that a race condition between TSSLSocket::write and TSSLSocket::close causes
the application to crash. This issue has also been detected by Valgrind.
>  
> This is the core dump backtrace
> #1  0x00007f08549b2291 in BIO_write () from /lib64/libcrypto.so.1.0.0
> #2  0x00007f084fdbbb62 in ?? () from /lib64/libssl.so.1.0.0
> #3  0x00007f084fdbc256 in ?? () from /lib64/libssl.so.1.0.0
> #4  0x00007f085466657c in apache::thrift::transport::TSSLSocket::(write (this=0x7f07a0001060,
buf=0x7f07a4b6d1ac "", len=4) at src/thrift/transport/TSSLSocket.cpp:387
>  
> See the patch in attachment.
>  



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)

Mime
View raw message