Op za 23 sep 2023 om 17:54 schreef Peng Zheng <pengzh...@apache.org>:

> On 9/23/23 23:00, Roy Lenferink wrote:
> > -1 (binding) until the below issues are resolved or clarified
> >
> > A few observations while trying to build the celix-2.4.0.tar.gz in a
> clean
> > Ubuntu 22.04 container:
> >
> > When following the documents/building/README.md and then the 'Building
> > Apache Celix using Conan' steps:
> >
> > * The 'snap install cmake' is not needed anymore, since the apt package
> is
> > already CMake v3.22.1
> > * When executing 'conan create . --build missing -o build_all=True'
> > (described in the README) the build fails with:
> >
> >
> /root/.conan2/p/b/celix49a251e7a74d4/b/bundles/pubsub/pubsub_admin_udp_mc/src/pubsub_udpmc_topic_sender.c:27:10:
> > fatal error: zconf.h: No such file or directory
> >     27 | #include <zconf.h>
> >
> > This happens in multiple places, so it seems that Conan is not fetching /
> > building all dependencies correct?
>
> zlib is no longer needed by these modules.
> Removed by this PR: https://github.com/apache/celix/pull/650
>
>
Thanks for fixing! I think this fix needs to be included in this release.
I noticed you made another fix yesterday which probably also needs to be
included:
https://github.com/apache/celix/pull/649

>
> > When following the documents/building/README.md and then the 'Building
> > Apache Celix directly using CMake' steps:
> >
> > * The 'snap install cmake' is not needed anymore, since the apt package
> is
> > already CMake v3.22.1
> > * When building with the extra -DENABLE_TESTING=ON flag passed (to verify
> > whether all the tests pass for the release) I get the following test
> > failures:
> >
> > The following tests FAILED:
> >   9 - test_utils_with_ei (Failed)
> > 16 - test_framework_with_ei (SEGFAULT)
> > 29 - run_unit_test_rsa_json_rpc (SEGFAULT)
> > 45 - pubsub_zmq_v2_tests (Subprocess aborted)
> > 46 - pubsub_zmq_v2_zerocopy_tests (SEGFAULT)
> > 53 - test_pubsub_interceptors_zmq_and_wire_v1_integration (Subprocess
> > aborted)
> > 54 - test_pubsub_interceptors_zmq_and_wire_v2_integration (Subprocess
> > aborted)
> > 57 - test_cxx_remote_services_integration (SEGFAULT)
> >
> > When building the 'master' branch with the same build options as our
> GitHub
> > actions Ubuntu build, which are:
> > cmake -DBUILD_EXPERIMENTAL=ON -DENABLE_TESTING=ON
> > -DENABLE_TESTING_DEPENDENCY_MANAGER_FOR_CXX11=ON
> > -DENABLE_TESTING_FOR_CXX14=ON -DRSA_JSON_RPC=ON -DRSA_SHM=ON
> > -DRSA_REMOTE_SERVICE_ADMIN_SHM_V2=ON -DSHELL_BONJOUR=ON
> > -DENABLE_TESTING_ON_CI=ON -DCMAKE_BUILD_TYPE=Debug
> > -DCMAKE_INSTALL_PREFIX=../celix_install ..
> >
> > i get no test failures for the above failing tests:
> >   9/65 Test  #9: test_utils_with_ei .....................................
> > Passed    0.00 sec
> > 17/65 Test #17: test_framework_with_ei .................................
> > Passed    0.56 sec
> > 32/65 Test #32: run_unit_test_rsa_json_rpc .............................
> > Passed    0.02 sec
> > 63/65 Test #63: test_cxx_remote_services_integration ...................
> > Passed    3.63 sec
> >
> > I do get build failures for several pubsub tests, however, I am not sure
> > yet if that has something to
> > do with a containerized build, so that is something I am still
> > investigating.
> >
> > Using the above cmake command (with all the options) for the 2.4.0.tar.gz
> > the above tests also succeed.
> >
> > So it seems that only when specific options are enabled, that tests
> > succeed. I don't think that is correct and needs to be fixed.
>
> Does `cmake -DCMAKE_BUILD_TYPE=Debug -DENABLE_TESTING=ON ..` succeed?
> If so, this is intended, because error injectors only work with debug
> build, which is mentioned in error injector's README.
>
>
With the build type as 'Debug' the unit tests (except the "expected" pubsub
failures) _do_ succeed.
If the error injector tests only with in Debug mode, then why are they
executed during other builds?
Can't we add a check like the following?:

if ("${CMAKE_BUILD_TYPE}" STREQUAL "Debug")
   # Enable error injector tests
endif()

IMO having the RelWithDebInfo tests always fail is not wanted.

>
> > Also IMO the build instructions need to be correct since that is what we
> > advertise on how users can build Celix and which is included in the
> release.
> >
> > =====================Snippet of test logs (in case you are interested)
> > =======================
> >
> > ==================test_utils_with_ei test=====================
> >
> >   9/59 Test  #9: test_utils_with_ei
> > .....................................***Failed    0.00 sec
> > Running main() from
> >
> /home/rlenferink/Downloads/celix-2.4.0/build/_deps/googletest-src/googletest/src/gtest_main.cc
> > [==========] Running 11 tests from 6 test suites.
> > [----------] Global test environment set-up.
> > [----------] 3 tests from FileUtilsWithErrorInjectionTestSuite
> > [ RUN      ] FileUtilsWithErrorInjectionTestSuite.ExtractZipFileTest
> > Using test zip location
> > /home/rlenferink/Downloads/celix-2.4.0/build/libs/utils/gtest/test.zip
> > [       OK ] FileUtilsWithErrorInjectionTestSuite.ExtractZipFileTest (0
> ms)
> > [ RUN      ] FileUtilsWithErrorInjectionTestSuite.CreateDirectory
> > [       OK ] FileUtilsWithErrorInjectionTestSuite.CreateDirectory (0 ms)
> > [ RUN      ] FileUtilsWithErrorInjectionTestSuite.DeleteDirectory
> > [       OK ] FileUtilsWithErrorInjectionTestSuite.DeleteDirectory (0 ms)
> > [----------] 3 tests from FileUtilsWithErrorInjectionTestSuite (0 ms
> total)
> >
> > [----------] 2 tests from ConvertUtilsWithErrorInjectionTestSuite
> > [ RUN      ] ConvertUtilsWithErrorInjectionTestSuite.CovertToBoolTest
> > [       OK ] ConvertUtilsWithErrorInjectionTestSuite.CovertToBoolTest (0
> ms)
> > [ RUN      ] ConvertUtilsWithErrorInjectionTestSuite.ConvertToVersionTest
> > [       OK ] ConvertUtilsWithErrorInjectionTestSuite.ConvertToVersionTest
> > (0 ms)
> > [----------] 2 tests from ConvertUtilsWithErrorInjectionTestSuite (0 ms
> > total)
> >
> > [----------] 2 tests from IpUtilsWithErrorInjectionTestSuite
> > [ RUN      ]
> IpUtilsWithErrorInjectionTestSuite.failToGetInterfaceAddresses
> > [       OK ]
> IpUtilsWithErrorInjectionTestSuite.failToGetInterfaceAddresses
> > (0 ms)
> > [ RUN      ] IpUtilsWithErrorInjectionTestSuite.failToDuplicateString
> > [       OK ] IpUtilsWithErrorInjectionTestSuite.failToDuplicateString (0
> ms)
> > [----------] 2 tests from IpUtilsWithErrorInjectionTestSuite (0 ms total)
> >
> > [----------] 1 test from ArrayListErrorInjectionTestSuite
> > [ RUN      ] ArrayListErrorInjectionTestSuite.TestAddFunctions
> > [       OK ] ArrayListErrorInjectionTestSuite.TestAddFunctions (0 ms)
> > [----------] 1 test from ArrayListErrorInjectionTestSuite (0 ms total)
> >
> > [----------] 2 tests from ErrErrorInjectionTestSuite
> > [ RUN      ] ErrErrorInjectionTestSuite.PushErrorWithTssSetFailingTest
> >
> /home/rlenferink/Downloads/celix-2.4.0/libs/utils/gtest/src/ErrErrorInjectionTestSuite.cc:55:
> > Failure
> > Value of: strstr(fileContents.c_str(), "Failed to set thread specific
> > storage for celix_err") != nullptr
> >    Actual: false
> > Expected: true
> > Expected error message not found in:
> > [  FAILED  ] ErrErrorInjectionTestSuite.PushErrorWithTssSetFailingTest (0
> > ms)
> > [ RUN      ] ErrErrorInjectionTestSuite.PushErrorWithMallocFailingTest
> >
> /home/rlenferink/Downloads/celix-2.4.0/libs/utils/gtest/src/ErrErrorInjectionTestSuite.cc:72:
> > Failure
> > Value of: strstr(fileContents.c_str(), "Failed to allocate memory for
> > celix_err") != nullptr
> >    Actual: false
> > Expected: true
> > Expected error message not found in:
> > [  FAILED  ] ErrErrorInjectionTestSuite.PushErrorWithMallocFailingTest (0
> > ms)
> > [----------] 2 tests from ErrErrorInjectionTestSuite (0 ms total)
> >
> > [----------] 1 test from PropertiesErrorInjectionTestSuite
> > [ RUN      ] PropertiesErrorInjectionTestSuite.CopyFailureTest
> >
> /home/rlenferink/Downloads/celix-2.4.0/libs/utils/gtest/src/PropertiesErrorInjectionTestSuite.cc:37:
> > Failure
> > Expected equality of these values:
> >    nullptr
> >      Which is: NULL
> >    celix_properties_copy(prop)
> >      Which is: 0x561ee51ed880
> > [  FAILED  ] PropertiesErrorInjectionTestSuite.CopyFailureTest (0 ms)
> > [----------] 1 test from PropertiesErrorInjectionTestSuite (0 ms total)
> >
> > [----------] Global test environment tear-down
> > [==========] 11 tests from 6 test suites ran. (0 ms total)
> > [  PASSED  ] 8 tests.
> > [  FAILED  ] 3 tests, listed below:
> > [  FAILED  ] ErrErrorInjectionTestSuite.PushErrorWithTssSetFailingTest
> > [  FAILED  ] ErrErrorInjectionTestSuite.PushErrorWithMallocFailingTest
> > [  FAILED  ] PropertiesErrorInjectionTestSuite.CopyFailureTest
> >
> >   3 FAILED TESTS
> >
> > ===============test_framework_with_ei======================
> >
> > 16/59 Test #16: test_framework_with_ei
> > .................................***Exception: SegFault  0.11 sec
> > Running main() from
> >
> /home/rlenferink/Downloads/celix-2.4.0/build/_deps/googletest-src/googletest/src/gtest_main.cc
> > [==========] Running 25 tests from 9 test suites.
> > [----------] Global test environment set-up.
> > [----------] 2 tests from BundleArchiveWithErrorInjectionTestSuite
> > [ RUN      ]
> > BundleArchiveWithErrorInjectionTestSuite.BundleArchiveCreatedFailedTest
> > [2023-09-23T14:34:27] [   info] [celix_framework] [framework_start:476]
> > Celix framework started
> > [2023-09-23T14:34:27] [  trace] [celix_framework] [framework_start:477]
> > Celix framework started with uuid 19a7f4df-1551-47d9-a3b7-340019325097
> > [2023-09-23T14:34:27] [  error] [celix_framework]
> > [celix_bundleArchive_create:322] Cannot allocate memory(0xc): "Could not
> > create archive.";
> >   Cause:
> > [2023-09-23T14:34:27] [  error] [celix_framework]
> > [celix_bundleCache_createArchive:222] Cannot allocate memory(0xc): Failed
> > to create archive.
> > [2023-09-23T14:34:27] [  error] [celix_framework]
> > [celix_framework_installBundleInternalImpl:686] Cannot allocate
> > memory(0xc): Could not install bundle
> > [2023-09-23T14:34:27] [  error] [celix_framework]
> > [celix_bundleArchive_create:322] Cannot allocate memory(0xc): "Could not
> > create archive.";
> >   Cause: Failed to setup archive paths.
> > [2023-09-23T14:34:27] [  error] [celix_framework]
> > [celix_bundleCache_createArchive:222] Cannot allocate memory(0xc): Failed
> > to create archive.
> > [2023-09-23T14:34:27] [  error] [celix_framework]
> > [celix_framework_installBundleInternalImpl:686] Cannot allocate
> > memory(0xc): Could not install bundle
> > [2023-09-23T14:34:27] [  error] [celix_framework]
> > [celix_bundleArchive_create:322] Cannot allocate memory(0xc): "Could not
> > create archive.";
> >   Cause: Failed to setup archive paths.
> > [2023-09-23T14:34:27] [  error] [celix_framework]
> > [celix_bundleCache_createArchive:222] Cannot allocate memory(0xc): Failed
> > to create archive.
> > [2023-09-23T14:34:27] [  error] [celix_framework]
> > [celix_framework_installBundleInternalImpl:686] Cannot allocate
> > memory(0xc): Could not install bundle
> > [2023-09-23T14:34:27] [  trace] [celix_framework]
> > [celix_framework_utils_extractBundlePath:191] Extracting bundle url
> >
> `/home/rlenferink/Downloads/celix-2.4.0/build/libs/framework/gtest/simple_test_bundle1.zip`
> > to dir `.cache/bundle4/resources`
> >
> /home/rlenferink/Downloads/celix-2.4.0/libs/framework/gtest/src/BundleArchiveWithErrorInjectionTestSuite.cc:77:
> > Failure
> > Expected: (bndId) < (0), actual: 4 vs 0
> >
> /home/rlenferink/Downloads/celix-2.4.0/libs/framework/gtest/src/BundleArchiveWithErrorInjectionTestSuite.cc:77:
> > Failure
> > Expected: (bndId) < (0), actual: 4 vs 0
> >
> /home/rlenferink/Downloads/celix-2.4.0/libs/framework/gtest/src/BundleArchiveWithErrorInjectionTestSuite.cc:77:
> > Failure
> > Expected: (bndId) < (0), actual: 4 vs 0
> >
> /home/rlenferink/Downloads/celix-2.4.0/libs/framework/gtest/src/BundleArchiveWithErrorInjectionTestSuite.cc:77:
> > Failure
> > Expected: (bndId) < (0), actual: 4 vs 0
> >
> /home/rlenferink/Downloads/celix-2.4.0/libs/framework/gtest/src/BundleArchiveWithErrorInjectionTestSuite.cc:77:
> > Failure
> > Expected: (bndId) < (0), actual: 4 vs 0
> >
> /home/rlenferink/Downloads/celix-2.4.0/libs/framework/gtest/src/BundleArchiveWithErrorInjectionTestSuite.cc:77:
> > Failure
> > Expected: (bndId) < (0), actual: 4 vs 0
> >
> /home/rlenferink/Downloads/celix-2.4.0/libs/framework/gtest/src/BundleArchiveWithErrorInjectionTestSuite.cc:77:
> > Failure
> > Expected: (bndId) < (0), actual: 4 vs 0
> > [2023-09-23T14:34:27] [  trace] [celix_framework]
> > [celix_framework_shutdownAsync:1143] Start shutdown thread for framework
> > 19a7f4df-1551-47d9-a3b7-340019325097
> > [2023-09-23T14:34:27] [  trace] [celix_framework]
> > [celix_bundleContext_cleanup:115] Cleaning up bundle context
> > `celix_framework` (id=0)
> > [2023-09-23T14:34:27] [  trace] [celix_framework]
> [framework_shutdown:1096]
> > Celix framework shutting down
> > [2023-09-23T14:34:27] [  trace] [celix_framework]
> > [celix_bundleContext_cleanup:115] Cleaning up bundle context
> > `simple_test_bundle1` (id=4)
> > [2023-09-23T14:34:27] [  trace] [celix_framework]
> > [celix_framework_stopAndJoinEventQueue:1081] Stop and joining event loop
> > thread for framework 19a7f4df-1551-47d9-a3b7-340019325097
> > [2023-09-23T14:34:27] [  debug] [celix_framework]
> > [celix_framework_stopAndJoinEventQueue:1090] Joined event loop thread for
> > framework 19a7f4df-1551-47d9-a3b7-340019325097
> > [  FAILED  ]
> > BundleArchiveWithErrorInjectionTestSuite.BundleArchiveCreatedFailedTest
> (1
> > ms)
> > [ RUN      ]
> >
> BundleArchiveWithErrorInjectionTestSuite.BundleArchiveCreateCacheDirectoryFailedTest
> > [2023-09-23T14:34:27] [   info] [celix_framework] [framework_start:476]
> > Celix framework started
> > [2023-09-23T14:34:27] [  trace] [celix_framework] [framework_start:477]
> > Celix framework started with uuid c69f04a6-2404-4431-8edd-b4da67665e66
> > [2023-09-23T14:34:27] [  trace] [celix_framework]
> > [celix_framework_utils_extractBundlePath:191] Extracting bundle url
> >
> `/home/rlenferink/Downloads/celix-2.4.0/build/libs/framework/gtest/simple_test_bundle1.zip`
> > to dir `.cache/bundle1/resources`
> >
> /home/rlenferink/Downloads/celix-2.4.0/libs/framework/gtest/src/BundleArchiveWithErrorInjectionTestSuite.cc:77:
> > Failure
> > Expected: (bndId) < (0), actual: 1 vs 0
> >
> /home/rlenferink/Downloads/celix-2.4.0/libs/framework/gtest/src/BundleArchiveWithErrorInjectionTestSuite.cc:77:
> > Failure
> > Expected: (bndId) < (0), actual: 1 vs 0
> >
> /home/rlenferink/Downloads/celix-2.4.0/libs/framework/gtest/src/BundleArchiveWithErrorInjectionTestSuite.cc:77:
> > Failure
> > Expected: (bndId) < (0), actual: 1 vs 0
> >
> /home/rlenferink/Downloads/celix-2.4.0/libs/framework/gtest/src/BundleArchiveWithErrorInjectionTestSuite.cc:77:
> > Failure
> > Expected: (bndId) < (0), actual: 1 vs 0
> > [2023-09-23T14:34:27] [  trace] [celix_framework]
> > [celix_framework_shutdownAsync:1143] Start shutdown thread for framework
> > c69f04a6-2404-4431-8edd-b4da67665e66
> > [2023-09-23T14:34:27] [  trace] [celix_framework]
> > [celix_bundleContext_cleanup:115] Cleaning up bundle context
> > `celix_framework` (id=0)
> > [2023-09-23T14:34:27] [  trace] [celix_framework]
> [framework_shutdown:1096]
> > Celix framework shutting down
> > [2023-09-23T14:34:27] [  trace] [celix_framework]
> > [celix_bundleContext_cleanup:115] Cleaning up bundle context
> > `simple_test_bundle1` (id=1)
> > [2023-09-23T14:34:27] [  trace] [celix_framework]
> > [celix_framework_stopAndJoinEventQueue:1081] Stop and joining event loop
> > thread for framework c69f04a6-2404-4431-8edd-b4da67665e66
> > [2023-09-23T14:34:27] [  debug] [celix_framework]
> > [celix_framework_stopAndJoinEventQueue:1090] Joined event loop thread for
> > framework c69f04a6-2404-4431-8edd-b4da67665e66
> > [  FAILED  ]
> >
> BundleArchiveWithErrorInjectionTestSuite.BundleArchiveCreateCacheDirectoryFailedTest
> > (0 ms)
> > [----------] 2 tests from BundleArchiveWithErrorInjectionTestSuite (2 ms
> > total)
> >
> > [----------] 1 test from CelixBundleArchiveErrorInjectionTestSuite
> > [ RUN      ]
> > CelixBundleArchiveErrorInjectionTestSuite.ArchiveCreateErrorTest
> >
> > ==================run_unit_test_rsa_json_rpc
> > test=============================
> >
> > 29/59 Test #29: run_unit_test_rsa_json_rpc
> > .............................***Exception: SegFault  0.10 sec
> >
> > <too much output for e-mail>
> >
> > Op wo 20 sep 2023 om 16:08 schreef xuzhenbao <xuzhen...@apache.org>:
> >
> >>
> >>
> >> +1
> >>
> >>
> >>
> >>
> >>
> >>
> >>
> >>
> >>
> >>
> >>
> >>
> >>
> >>
> >>
> >> At 2023-09-20 04:08:37, "Pepijn Noltes" <pepijnnol...@gmail.com> wrote:
> >>> Hi All,
> >>>
> >>> This is the release vote for Apache Celix, version 2.4.0.
> >>>
> >>> It includes the following changes:
> >>>
> >>
> https://github.com/apache/celix/blob/25745ae13848b0ce7b2b35c1e8553ba03f0529a9/CHANGES.md
> >>> Source files:
> >>> https://dist.apache.org/repos/dist/dev/celix/celix-2.4.0/
> >>>
> >>> The commit ID to be voted upon:
> >>> 25745ae13848b0ce7b2b35c1e8553ba03f0529a9
> >>>
> >>>
> >>
> https://github.com/apache/celix/tree/25745ae13848b0ce7b2b35c1e8553ba03f0529a9
> >>> Celix's keys can be found at:
> >>> https://dist.apache.org/repos/dist/release/celix/KEYS
> >>>
> >>> Information for voting on a release can be found at:
> >>> https://www.apache.org/legal/release-policy.html#approving-a-release
> >>>
> >>> Please vote to approve this release:
> >>>
> >>> [ ] +1 Approve the release
> >>> [ ] -1 Disapprove the release (please provide specific comments)
> >>>
> >>> Note that an Apache release needs to be a Majority Approval (requires
> >>> at-least 3 binding +1 votes and more +1 votes than -1 votes).
> >>>
> >>> If this release is approved I will promote it to an official release
> >>> (e.g. move from dist/dev to dist/release and tagging the release in
> git)
> >>>
> >>> This vote will be open for at least 72 hours.
> >>>
> >>> Best regards, Pepijn.
>
>
> --
> Peng Zheng
>
>

Reply via email to