protobuf icon indicating copy to clipboard operation
protobuf copied to clipboard

'make check' raises segfault on manylinux CentOS

Open bsolomon1124 opened this issue 4 years ago • 0 comments

I am using the docker image quay.io/pypa/manylinux1_x86_64 to build manylinux Python wheels. The container is CentOS release 5.11 (Final).

Installing protobuf 3.11.4 will raise a segfault:

../test-driver: line 107: 21594 Segmentation fault      "$@" > $log_file 2>&1
FAIL: protobuf-test
PASS: protobuf-lazy-descriptor-test
PASS: protobuf-lite-test
PASS: google/protobuf/compiler/zip_output_unittest.sh
PASS: google/protobuf/io/gzip_stream_unittest.sh
PASS: protobuf-lite-arena-test
PASS: no-warning-test
============================================================================
Testsuite summary for Protocol Buffers 3.11.4
============================================================================
# TOTAL: 7
# PASS:  6
# SKIP:  0
# XFAIL: 0
# FAIL:  1
# XPASS: 0
# ERROR: 0

The following Dockerfile can reproduce:

FROM quay.io/pypa/manylinux1_x86_64
ARG PLAT='manylinux1_x86_64'
ARG PROTOBUF_VERSION='3.11.4'

WORKDIR /opt
RUN set -ex \
    && yum update -y \
    && yum install -y \
        autoconf \
        automake \
        gcc-c++ \
        git \
        glibc-headers \
        gzip \
        libtool \
        make \
        zlib-devel \
    && curl -Lo /opt/protobuf.tar.gz \
        "https://github.com/protocolbuffers/protobuf/releases/download/v${PROTOBUF_VERSION}/protobuf-cpp-${PROTOBUF_VERSION}.tar.gz" \
    && tar -xzvf protobuf.tar.gz \
    && rm -f protobuf.tar.gz \
    && pushd "protobuf-${PROTOBUF_VERSION}" \
    && ./autogen.sh \
    && ./configure --with-zlib \
    && make \
    && make check \
    && make install \
    && ldconfig --verbose \
    && popd \
    && protoc --version

Contents of protobuf-3.11.4/src/test-suite.log:

=================================================
   Protocol Buffers 3.11.4: src/test-suite.log
=================================================

# TOTAL: 7
# PASS:  6
# SKIP:  0
# XFAIL: 0
# FAIL:  1
# XPASS: 0
# ERROR: 0

.. contents:: :depth: 2

FAIL: protobuf-test
===================

Running main() from gmock_main.cc
[==========] Running 2108 tests from 194 test suites.
[----------] Global test environment set-up.
[----------] 4 tests from ByteSourceTest
[ RUN      ] ByteSourceTest.CopyTo
[       OK ] ByteSourceTest.CopyTo (0 ms)
[ RUN      ] ByteSourceTest.CopySubstringTo
[       OK ] ByteSourceTest.CopySubstringTo (0 ms)
[ RUN      ] ByteSourceTest.LimitByteSource
[       OK ] ByteSourceTest.LimitByteSource (0 ms)
[ RUN      ] ByteSourceTest.CopyToStringByteSink
[       OK ] ByteSourceTest.CopyToStringByteSink (0 ms)
[----------] 4 tests from ByteSourceTest (0 ms total)

[----------] 1 test from ByteSinkTest
[ RUN      ] ByteSinkTest.Flush
[       OK ] ByteSinkTest.Flush (1 ms)
[----------] 1 test from ByteSinkTest (1 ms total)

[----------] 1 test from CommonTest
[ RUN      ] CommonTest.IntMinMaxConstants
[       OK ] CommonTest.IntMinMaxConstants (0 ms)
[----------] 1 test from CommonTest (0 ms total)

[----------] 4 tests from LoggingTest
[ RUN      ] LoggingTest.DefaultLogging
[       OK ] LoggingTest.DefaultLogging (2 ms)
[ RUN      ] LoggingTest.NullLogging
[       OK ] LoggingTest.NullLogging (0 ms)
[ RUN      ] LoggingTest.CaptureLogging
[       OK ] LoggingTest.CaptureLogging (0 ms)
[ RUN      ] LoggingTest.SilenceLogging
[       OK ] LoggingTest.SilenceLogging (0 ms)
[----------] 4 tests from LoggingTest (2 ms total)

[----------] 15 tests from ClosureTest
[ RUN      ] ClosureTest.TestClosureFunction0
[       OK ] ClosureTest.TestClosureFunction0 (0 ms)
[ RUN      ] ClosureTest.TestClosureMethod0
[       OK ] ClosureTest.TestClosureMethod0 (0 ms)
[ RUN      ] ClosureTest.TestClosureFunction1
[       OK ] ClosureTest.TestClosureFunction1 (0 ms)
[ RUN      ] ClosureTest.TestClosureMethod1
[       OK ] ClosureTest.TestClosureMethod1 (0 ms)
[ RUN      ] ClosureTest.TestClosureFunction1String
[       OK ] ClosureTest.TestClosureFunction1String (0 ms)
[ RUN      ] ClosureTest.TestClosureMethod1String
[       OK ] ClosureTest.TestClosureMethod1String (0 ms)
[ RUN      ] ClosureTest.TestClosureFunction2
[       OK ] ClosureTest.TestClosureFunction2 (0 ms)
[ RUN      ] ClosureTest.TestClosureMethod2
[       OK ] ClosureTest.TestClosureMethod2 (0 ms)
[ RUN      ] ClosureTest.TestPermanentClosureFunction0
[       OK ] ClosureTest.TestPermanentClosureFunction0 (0 ms)
[ RUN      ] ClosureTest.TestPermanentClosureMethod0
[       OK ] ClosureTest.TestPermanentClosureMethod0 (0 ms)
[ RUN      ] ClosureTest.TestPermanentClosureFunction1
[       OK ] ClosureTest.TestPermanentClosureFunction1 (0 ms)
[ RUN      ] ClosureTest.TestPermanentClosureMethod1
[       OK ] ClosureTest.TestPermanentClosureMethod1 (0 ms)
[ RUN      ] ClosureTest.TestPermanentClosureFunction2
[       OK ] ClosureTest.TestPermanentClosureFunction2 (0 ms)
[ RUN      ] ClosureTest.TestPermanentClosureMethod2
[       OK ] ClosureTest.TestPermanentClosureMethod2 (1 ms)
[ RUN      ] ClosureTest.TestPermanentClosureDeleteInCallback
[       OK ] ClosureTest.TestPermanentClosureDeleteInCallback (0 ms)
[----------] 15 tests from ClosureTest (1 ms total)

[----------] 8 tests from Int128
[ RUN      ] Int128.AllTests
[libprotobuf INFO google/protobuf/stubs/int128_unittest.cc:176] 1
[libprotobuf INFO google/protobuf/stubs/int128_unittest.cc:177] 36893488147419103232001
[       OK ] Int128.AllTests (0 ms)
[ RUN      ] Int128.PodTests
[       OK ] Int128.PodTests (0 ms)
[ RUN      ] Int128.OperatorAssignReturnRef
[       OK ] Int128.OperatorAssignReturnRef (0 ms)
[ RUN      ] Int128.Multiply
[       OK ] Int128.Multiply (1 ms)
[ RUN      ] Int128.AliasTests
[       OK ] Int128.AliasTests (0 ms)
[ RUN      ] Int128.DivideAndMod
[       OK ] Int128.DivideAndMod (0 ms)
[ RUN      ] Int128.DivideAndModRandomInputs
[       OK ] Int128.DivideAndModRandomInputs (98 ms)
[ RUN      ] Int128.OStream
[       OK ] Int128.OStream (0 ms)
[----------] 8 tests from Int128 (100 ms total)

[----------] 28 tests from StatusOr
[ RUN      ] StatusOr.TestDefaultCtor
[       OK ] StatusOr.TestDefaultCtor (0 ms)
[ RUN      ] StatusOr.TestStatusCtor
[       OK ] StatusOr.TestStatusCtor (0 ms)
[ RUN      ] StatusOr.TestValueCtor
[       OK ] StatusOr.TestValueCtor (0 ms)
[ RUN      ] StatusOr.TestCopyCtorStatusOk
[       OK ] StatusOr.TestCopyCtorStatusOk (0 ms)
[ RUN      ] StatusOr.TestCopyCtorStatusNotOk
[       OK ] StatusOr.TestCopyCtorStatusNotOk (0 ms)
[ RUN      ] StatusOr.TestCopyCtorStatusOKConverting
[       OK ] StatusOr.TestCopyCtorStatusOKConverting (0 ms)
[ RUN      ] StatusOr.TestCopyCtorStatusNotOkConverting
[       OK ] StatusOr.TestCopyCtorStatusNotOkConverting (0 ms)
[ RUN      ] StatusOr.TestAssignmentStatusOk
[       OK ] StatusOr.TestAssignmentStatusOk (0 ms)
[ RUN      ] StatusOr.TestAssignmentStatusNotOk
[       OK ] StatusOr.TestAssignmentStatusNotOk (0 ms)
[ RUN      ] StatusOr.TestAssignmentStatusOKConverting
[       OK ] StatusOr.TestAssignmentStatusOKConverting (0 ms)
[ RUN      ] StatusOr.TestAssignmentStatusNotOkConverting
[       OK ] StatusOr.TestAssignmentStatusNotOkConverting (0 ms)
[ RUN      ] StatusOr.TestStatus
[       OK ] StatusOr.TestStatus (0 ms)
[ RUN      ] StatusOr.TestValue
[       OK ] StatusOr.TestValue (0 ms)
[ RUN      ] StatusOr.TestValueConst
[       OK ] StatusOr.TestValueConst (0 ms)
[ RUN      ] StatusOr.TestPointerDefaultCtor
[       OK ] StatusOr.TestPointerDefaultCtor (0 ms)
[ RUN      ] StatusOr.TestPointerStatusCtor
[       OK ] StatusOr.TestPointerStatusCtor (0 ms)
[ RUN      ] StatusOr.TestPointerValueCtor
[       OK ] StatusOr.TestPointerValueCtor (0 ms)
[ RUN      ] StatusOr.TestPointerCopyCtorStatusOk
[       OK ] StatusOr.TestPointerCopyCtorStatusOk (0 ms)
[ RUN      ] StatusOr.TestPointerCopyCtorStatusNotOk
[       OK ] StatusOr.TestPointerCopyCtorStatusNotOk (0 ms)
[ RUN      ] StatusOr.TestPointerCopyCtorStatusOKConverting
[       OK ] StatusOr.TestPointerCopyCtorStatusOKConverting (0 ms)
[ RUN      ] StatusOr.TestPointerCopyCtorStatusNotOkConverting
[       OK ] StatusOr.TestPointerCopyCtorStatusNotOkConverting (0 ms)
[ RUN      ] StatusOr.TestPointerAssignmentStatusOk
[       OK ] StatusOr.TestPointerAssignmentStatusOk (0 ms)
[ RUN      ] StatusOr.TestPointerAssignmentStatusNotOk
[       OK ] StatusOr.TestPointerAssignmentStatusNotOk (0 ms)
[ RUN      ] StatusOr.TestPointerAssignmentStatusOKConverting
[       OK ] StatusOr.TestPointerAssignmentStatusOKConverting (0 ms)
[ RUN      ] StatusOr.TestPointerAssignmentStatusNotOkConverting
[       OK ] StatusOr.TestPointerAssignmentStatusNotOkConverting (0 ms)
[ RUN      ] StatusOr.TestPointerStatus
[       OK ] StatusOr.TestPointerStatus (0 ms)
[ RUN      ] StatusOr.TestPointerValue
[       OK ] StatusOr.TestPointerValue (0 ms)
[ RUN      ] StatusOr.TestPointerValueConst
[       OK ] StatusOr.TestPointerValueConst (0 ms)
[----------] 28 tests from StatusOr (1 ms total)

[----------] 13 tests from Status
[ RUN      ] Status.Empty
[       OK ] Status.Empty (0 ms)
[ RUN      ] Status.GenericCodes
[       OK ] Status.GenericCodes (0 ms)
[ RUN      ] Status.ConstructorZero
[       OK ] Status.ConstructorZero (0 ms)
[ RUN      ] Status.CheckOK
[       OK ] Status.CheckOK (0 ms)
[ RUN      ] Status.ErrorMessage
[       OK ] Status.ErrorMessage (0 ms)
[ RUN      ] Status.Copy
[       OK ] Status.Copy (0 ms)
[ RUN      ] Status.Assign
[       OK ] Status.Assign (0 ms)
[ RUN      ] Status.AssignEmpty
[       OK ] Status.AssignEmpty (0 ms)
[ RUN      ] Status.EqualsOK
[       OK ] Status.EqualsOK (0 ms)
[ RUN      ] Status.EqualsSame
[       OK ] Status.EqualsSame (0 ms)
[ RUN      ] Status.EqualsCopy
[       OK ] Status.EqualsCopy (0 ms)
[ RUN      ] Status.EqualsDifferentCode
[       OK ] Status.EqualsDifferentCode (0 ms)
[ RUN      ] Status.EqualsDifferentMessage
[       OK ] Status.EqualsDifferentMessage (0 ms)
[----------] 13 tests from Status (0 ms total)

[----------] 9 tests from StringPiece
[ RUN      ] StringPiece.Ctor
[       OK ] StringPiece.Ctor (0 ms)
[ RUN      ] StringPiece.STLComparator
[       OK ] StringPiece.STLComparator (0 ms)
[ RUN      ] StringPiece.ComparisonOperators
[       OK ] StringPiece.ComparisonOperators (82 ms)
[ RUN      ] StringPiece.STL1
[       OK ] StringPiece.STL1 (0 ms)
[ RUN      ] StringPiece.STL2
[       OK ] StringPiece.STL2 (0 ms)
[ RUN      ] StringPiece.Custom
[       OK ] StringPiece.Custom (0 ms)
[ RUN      ] StringPiece.Contains
[       OK ] StringPiece.Contains (0 ms)
[ RUN      ] StringPiece.NullInput
[       OK ] StringPiece.NullInput (0 ms)
[ RUN      ] StringPiece.Comparisons2
[       OK ] StringPiece.Comparisons2 (0 ms)
[----------] 9 tests from StringPiece (83 ms total)

[----------] 2 tests from ComparisonOpsTest
[ RUN      ] ComparisonOpsTest.StringCompareNotAmbiguous
[       OK ] ComparisonOpsTest.StringCompareNotAmbiguous (0 ms)
[ RUN      ] ComparisonOpsTest.HeterogenousStringPieceEquals
[       OK ] ComparisonOpsTest.HeterogenousStringPieceEquals (0 ms)
[----------] 2 tests from ComparisonOpsTest (0 ms total)

[----------] 1 test from FindOneCharTest
[ RUN      ] FindOneCharTest.EdgeCases
[       OK ] FindOneCharTest.EdgeCases (0 ms)
[----------] 1 test from FindOneCharTest (1 ms total)

[----------] 6 tests from StringPrintfTest
[ RUN      ] StringPrintfTest.Empty
[       OK ] StringPrintfTest.Empty (0 ms)
[ RUN      ] StringPrintfTest.Misc
[       OK ] StringPrintfTest.Misc (0 ms)
[ RUN      ] StringPrintfTest.Multibyte
[       OK ] StringPrintfTest.Multibyte (0 ms)
[ RUN      ] StringPrintfTest.NoMultibyte
[       OK ] StringPrintfTest.NoMultibyte (0 ms)
[ RUN      ] StringPrintfTest.DontOverwriteErrno
[       OK ] StringPrintfTest.DontOverwriteErrno (0 ms)
[ RUN      ] StringPrintfTest.LargeBuf
[       OK ] StringPrintfTest.LargeBuf (0 ms)
[----------] 6 tests from StringPrintfTest (0 ms total)

[----------] 4 tests from StringAppendFTest
[ RUN      ] StringAppendFTest.Empty
[       OK ] StringAppendFTest.Empty (0 ms)
[ RUN      ] StringAppendFTest.EmptyString
[       OK ] StringAppendFTest.EmptyString (0 ms)
[ RUN      ] StringAppendFTest.String
[       OK ] StringAppendFTest.String (0 ms)
[ RUN      ] StringAppendFTest.Int
[       OK ] StringAppendFTest.Int (0 ms)
[----------] 4 tests from StringAppendFTest (0 ms total)

[----------] 2 tests from StructurallyValidTest
[ RUN      ] StructurallyValidTest.ValidUTF8String
[       OK ] StructurallyValidTest.ValidUTF8String (0 ms)
[ RUN      ] StructurallyValidTest.InvalidUTF8String
[       OK ] StructurallyValidTest.InvalidUTF8String (0 ms)
[----------] 2 tests from StructurallyValidTest (0 ms total)

[----------] 1 test from StringUtilityTest
[ RUN      ] StringUtilityTest.ImmuneToLocales
[       OK ] StringUtilityTest.ImmuneToLocales (12 ms)
[----------] 1 test from StringUtilityTest (12 ms total)

[----------] 1 test from Base64
[ RUN      ] Base64.EscapeAndUnescape
[       OK ] Base64.EscapeAndUnescape (2 ms)
[----------] 1 test from Base64 (2 ms total)

[----------] 1 test from StrCat
[ RUN      ] StrCat.Ints
[       OK ] StrCat.Ints (0 ms)
[----------] 1 test from StrCat (0 ms total)

[----------] 6 tests from TemplateUtilTest
[ RUN      ] TemplateUtilTest.TestSize
[       OK ] TemplateUtilTest.TestSize (0 ms)
[ RUN      ] TemplateUtilTest.TestIntegralConstants
[       OK ] TemplateUtilTest.TestIntegralConstants (0 ms)
[ RUN      ] TemplateUtilTest.TestTemplateIf
[       OK ] TemplateUtilTest.TestTemplateIf (0 ms)
[ RUN      ] TemplateUtilTest.TestTemplateTypeEquals
[       OK ] TemplateUtilTest.TestTemplateTypeEquals (0 ms)
[ RUN      ] TemplateUtilTest.TestTemplateAndOr
[       OK ] TemplateUtilTest.TestTemplateAndOr (0 ms)
[ RUN      ] TemplateUtilTest.TestIdentity
[       OK ] TemplateUtilTest.TestIdentity (0 ms)
[----------] 6 tests from TemplateUtilTest (0 ms total)

[----------] 6 tests from DateTimeTest
[ RUN      ] DateTimeTest.SimpleTime
[       OK ] DateTimeTest.SimpleTime (0 ms)
[ RUN      ] DateTimeTest.DayInMonths
[       OK ] DateTimeTest.DayInMonths (0 ms)
[ RUN      ] DateTimeTest.LeapYear
[       OK ] DateTimeTest.LeapYear (0 ms)
[ RUN      ] DateTimeTest.WrongDays
[       OK ] DateTimeTest.WrongDays (0 ms)
[ RUN      ] DateTimeTest.StringFormat
[       OK ] DateTimeTest.StringFormat (0 ms)
[ RUN      ] DateTimeTest.ParseString
[       OK ] DateTimeTest.ParseString (0 ms)
[----------] 6 tests from DateTimeTest (1 ms total)

[----------] 8 tests from AnyTest
[ RUN      ] AnyTest.TestPackAndUnpack
[       OK ] AnyTest.TestPackAndUnpack (2 ms)
[ RUN      ] AnyTest.TestUnpackWithTypeMismatch
[       OK ] AnyTest.TestUnpackWithTypeMismatch (2 ms)
[ RUN      ] AnyTest.TestPackAndUnpackAny
[       OK ] AnyTest.TestPackAndUnpackAny (0 ms)
[ RUN      ] AnyTest.TestPackWithCustomTypeUrl
[       OK ] AnyTest.TestPackWithCustomTypeUrl (0 ms)
[ RUN      ] AnyTest.TestIs
[       OK ] AnyTest.TestIs (0 ms)
[ RUN      ] AnyTest.MoveConstructor
[       OK ] AnyTest.MoveConstructor (0 ms)
[ RUN      ] AnyTest.MoveAssignment
[       OK ] AnyTest.MoveAssignment (0 ms)
[ RUN      ] AnyTest.Simple
FAIL protobuf-test (exit status: 139)

bsolomon1124 avatar Apr 07 '20 16:04 bsolomon1124