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

John Sirois commented on THRIFT-3608:
-------------------------------------

For posterity - this trick helped seal the diagnosis:
{noformat}
$ touch foo.cc
$ g++ -dM -E foo.cc | grep linux
#define __linux 1
#define __linux__ 1
#define __gnu_linux__ 1
#define linux 1
$ g++ -std=c++11 -dM -E foo.cc | grep linux
#define __linux 1
#define __linux__ 1
#define __gnu_linux__ 1
$ clang++ -dM -E foo.cc | grep linux
#define __gnu_linux__ 1
#define __linux 1
#define __linux__ 1
#define linux 1
$ clang++ -std=c++11 -dM -E foo.cc | grep linux
#define __gnu_linux__ 1
#define __linux 1
#define __linux__ 1
{noformat}

> lib/cpp/test/SecurityTest is flaky in jenkins Thrift-precommit build.
> ---------------------------------------------------------------------
>
>                 Key: THRIFT-3608
>                 URL: https://issues.apache.org/jira/browse/THRIFT-3608
>             Project: Thrift
>          Issue Type: Bug
>          Components: C++ - Library, Test Suite
>    Affects Versions: 0.9.3
>            Reporter: John Sirois
>            Assignee: John Sirois
>            Priority: Critical
>
> The [Thrift-precommit|https://builds.apache.org/job/Thrift-precommit] job now 
> runs in the build/docker/ubuntu container and the 
> [lib/cpp/test/SecurityTest|https://github.com/apache/thrift/blob/master/lib/cpp/test/SecurityTest.cpp]
>  fails most - but not all - of the time.
> Failures can be seen in the following jobs
> * https://builds.apache.org/job/Thrift-precommit/60/console
> * https://builds.apache.org/job/Thrift-precommit/59/console
> * https://builds.apache.org/job/Thrift-precommit/58/console
> * https://builds.apache.org/job/Thrift-precommit/57/console
> They look like so:
> {noformat}
> argv[0] = "/thrift/lib/cpp/test/.libs/lt-SecurityTest"
> Running 1 test case...
> Entering test suite "SecurityTest"
> Entering test suite "SecurityTest"
> Entering test case "ssl_security_matrix"
> TEST: Server = SSLTLS, Client = SSLTLS
> TEST: Server = SSLTLS, Client = SSLv3
> SRV 2b9182317700 Exception: SSL_accept: wrong version number
> CLI 2b9181f0a700 Exception: SSL_connect: sslv3 alert handshake failure
> TEST: Server = SSLTLS, Client = TLSv1_0
> TEST: Server = SSLTLS, Client = TLSv1_1
> TEST: Server = SSLTLS, Client = TLSv1_2
> TEST: Server = SSLv3, Client = SSLTLS
> CLI 2b9181f0a700 Exception: SSL_connect: unsupported protocol
> SRV 2b9182317700 Exception: SSL_accept: error code: 0
> TEST: Server = SSLv3, Client = SSLv3
> TEST: Server = SSLv3, Client = TLSv1_0
> CLI 2b9181f0a700 Exception: SSL_connect: wrong version number
> SRV 2b9182317700 Exception: SSL_accept: sslv3 alert handshake failure
> TEST: Server = SSLv3, Client = TLSv1_1
> CLI 2b9182317700 Exception: SSL_connect: wrong version number
> SRV 2b9181f0a700 Exception: SSL_accept: sslv3 alert handshake failure
> TEST: Server = SSLv3, Client = TLSv1_2
> CLI 2b9181f0a700 Exception: SSL_connect: wrong version number
> SRV 2b9182317700 Exception: SSL_accept: sslv3 alert handshake failure
> TEST: Server = TLSv1_0, Client = SSLTLS
> TEST: Server = TLSv1_0, Client = SSLv3
> SRV 2b9182317700 Exception: SSL_accept: wrong version number
> CLI 2b9181f0a700 Exception: SSL_connect: sslv3 alert handshake failure
> TEST: Server = TLSv1_0, Client = TLSv1_0
> TEST: Server = TLSv1_0, Client = TLSv1_1
> CLI 2b9181f0a700 Exception: SSL_connect: wrong version number
> SRV 2b9182317700 Exception: SSL_accept: tlsv1 alert protocol version
> TEST: Server = TLSv1_0, Client = TLSv1_2
> CLI 2b9182317700 Exception: SSL_connect: wrong version number
> SRV 2b9181f0a700 Exception: SSL_accept: tlsv1 alert protocol version
> TEST: Server = TLSv1_1, Client = SSLTLS
> TEST: Server = TLSv1_1, Client = SSLv3
> SRV 2b9181f0a700 Exception: SSL_accept: wrong version number
> CLI 2b9182317700 Exception: SSL_connect: sslv3 alert handshake failure
> TEST: Server = TLSv1_1, Client = TLSv1_0
> SRV 2b9182317700 Exception: SSL_accept: wrong version number
> CLI 2b9181f0a700 Exception: SSL_connect: tlsv1 alert protocol version
> TEST: Server = TLSv1_1, Client = TLSv1_1
> TEST: Server = TLSv1_1, Client = TLSv1_2
> SRV 2b9182317700 Exception: SSL_accept: tlsv1 alert protocol version
> CLI 2b9181f0a700 Exception: SSL_connect: wrong version number
> TEST: Server = TLSv1_2, Client = SSLTLS
> [0;31mFAIL[m: SecurityTest
> {noformat}
> {noformat}
> argv[0] = "/thrift/lib/cpp/test/.libs/lt-SecurityTest"
> Running 1 test case...
> Entering test suite "SecurityTest"
> Entering test suite "SecurityTest"
> Entering test case "ssl_security_matrix"
> TEST: Server = SSLTLS, Client = SSLTLS
> TEST: Server = SSLTLS, Client = SSLv3
> SRV 2b6bd3245700 Exception: SSL_accept: wrong version number
> CLI 2b6bd2e38700 Exception: SSL_connect: sslv3 alert handshake failure
> TEST: Server = SSLTLS, Client = TLSv1_0
> TEST: Server = SSLTLS, Client = TLSv1_1
> TEST: Server = SSLTLS, Client = TLSv1_2
> TEST: Server = SSLv3, Client = SSLTLS
> CLI 2b6bd2e38700 Exception: SSL_connect: unsupported protocol
> SRV 2b6bd3245700 Exception: SSL_accept: error code: 0
> TEST: Server = SSLv3, Client = SSLv3
> TEST: Server = SSLv3, Client = TLSv1_0
> CLI 2b6bd2e38700 Exception: SSL_connect: wrong version number
> SRV 2b6bd3245700 Exception: SSL_accept: sslv3 alert handshake failure
> TEST: Server = SSLv3, Client = TLSv1_1
> CLI 2b6bd3245700 Exception: SSL_connect: wrong version number
> SRV 2b6bd2e38700 Exception: SSL_accept: sslv3 alert handshake failure
> TEST: Server = SSLv3, Client = TLSv1_2
> SRV 2b6bd3245700 Exception: SSL_accept: sslv3 alert handshake failure
> CLI 2b6bd2e38700 Exception: SSL_connect: wrong version number
> TEST: Server = TLSv1_0, Client = SSLTLS
> TEST: Server = TLSv1_0, Client = SSLv3
> SRV 2b6bd3245700 Exception: SSL_accept: wrong version number
> CLI 2b6bd2e38700 Exception: SSL_connect: sslv3 alert handshake failure
> TEST: Server = TLSv1_0, Client = TLSv1_0
> TEST: Server = TLSv1_0, Client = TLSv1_1
> CLI 2b6bd2e38700 Exception: SSL_connect: wrong version number
> SRV 2b6bd3245700 Exception: SSL_accept: tlsv1 alert protocol version
> TEST: Server = TLSv1_0, Client = TLSv1_2
> CLI 2b6bd3245700 Exception: SSL_connect: wrong version number
> SRV 2b6bd2e38700 Exception: SSL_accept: tlsv1 alert protocol version
> TEST: Server = TLSv1_1, Client = SSLTLS
> [0;31mFAIL[m: SecurityTest
> {noformat}
> {noformat}
> argv[0] = "/thrift/lib/cpp/test/.libs/lt-SecurityTest"
> Running 1 test case...
> Entering test suite "SecurityTest"
> Entering test suite "SecurityTest"
> Entering test case "ssl_security_matrix"
> TEST: Server = SSLTLS, Client = SSLTLS
> TEST: Server = SSLTLS, Client = SSLv3
> SRV 2b1c3156d700 Exception: SSL_accept: wrong version number
> CLI 2b1c31160700 Exception: SSL_connect: sslv3 alert handshake failure
> TEST: Server = SSLTLS, Client = TLSv1_0
> TEST: Server = SSLTLS, Client = TLSv1_1
> TEST: Server = SSLTLS, Client = TLSv1_2
> TEST: Server = SSLv3, Client = SSLTLS
> CLI 2b1c31160700 Exception: SSL_connect: unsupported protocol
> SRV 2b1c3156d700 Exception: SSL_accept: error code: 0
> TEST: Server = SSLv3, Client = SSLv3
> TEST: Server = SSLv3, Client = TLSv1_0
> SRV 2b1c3156d700 Exception: SSL_accept: sslv3 alert handshake failure
> CLI 2b1c31160700 Exception: SSL_connect: wrong version number
> TEST: Server = SSLv3, Client = TLSv1_1
> SRV 2b1c31160700 Exception: SSL_accept: sslv3 alert handshake failure
> CLI 2b1c3156d700 Exception: SSL_connect: wrong version number
> TEST: Server = SSLv3, Client = TLSv1_2
> SRV 2b1c3156d700 Exception: SSL_accept: sslv3 alert handshake failure
> CLI 2b1c31160700 Exception: SSL_connect: wrong version number
> TEST: Server = TLSv1_0, Client = SSLTLS
> TEST: Server = TLSv1_0, Client = SSLv3
> SRV 2b1c3156d700 Exception: SSL_accept: wrong version number
> CLI 2b1c31160700 Exception: SSL_connect: sslv3 alert handshake failure
> TEST: Server = TLSv1_0, Client = TLSv1_0
> [0;31mFAIL[m: SecurityTest
> {noformat}
> {noformat}
> argv[0] = "/thrift/lib/cpp/test/.libs/lt-SecurityTest"
> Running 1 test case...
> Entering test suite "SecurityTest"
> Entering test suite "SecurityTest"
> Entering test case "ssl_security_matrix"
> TEST: Server = SSLTLS, Client = SSLTLS
> TEST: Server = SSLTLS, Client = SSLv3
> CLI 2b00e0b95700 Exception: SSL_connect: sslv3 alert handshake failure
> SRV 2b00e0fa2700 Exception: SSL_accept: wrong version number
> TEST: Server = SSLTLS, Client = TLSv1_0
> [0;31mFAIL[m: SecurityTest
> {noformat}
> For posterity, the logs were turned up via:
> {noformat}
> make check TESTS_ENVIRONMENT=BOOST_TEST_LOG_LEVEL=test_suite
> {noformat}



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

Reply via email to