[ https://issues.apache.org/jira/browse/THRIFT-4593?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
James E. King III resolved THRIFT-4593. --------------------------------------- Resolution: Fixed Assignee: James E. King III Fix Version/s: 1.0 pthread support has been removed; we're on C++11 now - see THRIFT-4730 > Unit Tests failing on Alpine Linux due to non-portable mutex initializers > ------------------------------------------------------------------------- > > Key: THRIFT-4593 > URL: https://issues.apache.org/jira/browse/THRIFT-4593 > Project: Thrift > Issue Type: Bug > Components: C++ - Library > Affects Versions: 0.11.0 > Environment: Ubuntu Bionic (native) > alpine:latest (docker) > Reporter: Christopher Friedt > Assignee: James E. King III > Priority: Minor > Fix For: 1.0 > > > It seems that the lib/cpp/test suite is broken in the 0.11.0 tagged release > because this fails in Ubuntu Bionic and inside of an Alpine Linux 3.8 Docker > container. > I would have thought all test suites would pass for tagged releases. > In any case, I've narrowed the culprits down to the non-portable (NP) class > of Mutex initializers. > I'd rather not speculate at this point exactly why this problem is happening. > Currently my patching just disables those tests undonditionally, but there > should probably be a better solution used in the end. E.g. better .m4 testing > for non-portable pthread features - if they are actually functional or just > stubs. > Currently, I'm working on automating builds of thrift for Alpine Linux 3.8, > and they will likely require "make check" to pass successfully in future > versions. Might as well ensure it works now. > > ``` > make[5]: Entering directory > '/home/cfriedt/Desktop/thrift-20180627/lib/cpp/test' > Running 54 test cases... > An error message from getaddrinfo on the console is expected: > Thrift: Wed Jun 27 20:16:03 2018 getaddrinfo -2: Name or service not known > *** No errors detected > PASS: UnitTests > Running 2 test cases... > Thrift: Wed Jun 27 20:16:10 2018 ~TFDTransport TTransportException: > 'TFDTransport::close(): Bad file descriptor' > *** No errors detected > PASS: TFDTransportTest > Running 1 test case... > *** No errors detected > PASS: TPipedTransportTest > Running 3 test cases... > *** No errors detected > PASS: DebugProtoTest > Running 11 test cases... > *** No errors detected > PASS: JSONProtoTest > Running 17 test cases... > *** No errors detected > PASS: OptionalRequiredTest > Running 4 test cases... > *** No errors detected > PASS: RecursiveTest > Running 1 test case... > *** No errors detected > PASS: SpecializationTest > Running 3 test cases... > TBinaryProtocol => OK > TLEBinaryProtocol => OK > TCompactProtocol => OK > *** No errors detected > PASS: AllProtocolsTest > Running 285 test cases... > Timeout alarm expired; attempting to unblock transport > Timeout alarm expired; attempting to unblock transport > Timeout alarm expired; attempting to unblock transport > Timeout alarm expired; attempting to unblock transport > Timeout alarm expired; attempting to unblock transport > ^CMakefile:1436: recipe for target 'check-TESTS' failed > make[5]: *** [check-TESTS] Interrupt > Makefile:1559: recipe for target 'check-am' failed > make[4]: *** [check-am] Interrupt > Makefile:1562: recipe for target 'check' failed > make[3]: *** [check] Interrupt > Makefile:1658: recipe for target 'check-recursive' failed > make[2]: *** [check-recursive] Interrupt > Makefile:580: recipe for target 'check-recursive' failed > make[1]: *** [check-recursive] Interrupt > Makefile:663: recipe for target 'check-recursive' failed > make: *** [check-recursive] Interrupt > ``` -- This message was sent by Atlassian JIRA (v7.6.3#76005)