build: Bump Boost version to 1.79#46554
Conversation
|
So, what are the things needed to make a new Boost available to Jenkins and Teuthology? If I have access to do them I'll happily do them. (Or if there are time consuming parts that don't require special access I can do those and hand over the pieces.) |
|
there are some developer docs about boost in https://docs.ceph.com/en/latest/dev/continuous-integration/#build-dependencies |
|
Hi Adam, as Casey pointed out. in addition to precompiling boost, we also need to upload the tarball to |
|
Jenkins, retest this please. |
|
@djgalloway Could you please build/upload debs for Boost? It think that's the only thing blocking this PR (and I'm pretty sure I don't have access) and this PR is the only thing blocking C++20. |
|
jenkins retest this please |
|
@adamemerson I built packages. This was my first time attempting it so we may still hit some snags. |
Thank you very much! |
|
Line 186 in bf63fa6 |
bf63fa6 to
7e03a67
Compare
Done! Thank you. |
|
Looks like https://github.com/ceph/ceph/blob/main/win32_deps_build.sh#L27-L28 also need to be bumped |
7e03a67 to
1424801
Compare
Done, thank you. |
turns out i am proposing a fix to address this. see #47212 |
|
jenkins test windows |
|
jenkins test make check |
|
I'm okay with this as long as And thank you so much @tchaikov for your help. I absolutely would not have figured out that compilation issue you fixed in #47212. We miss you! |
|
|
i am proposing #47217 to address this issue. the proposed PR includes the commits in this PR to verify my change. |
tchaikov
left a comment
There was a problem hiding this comment.
@adamemerson could you update make-dist accordingly? otherwise we'd have FTBFS like
-- BUILDING Boost Libraries at j 48
CMake Error at cmake/modules/BuildBoost.cmake:31 (message):
Boost v1.75.0 in
/home/jenkins-build/build/workspace/ceph-dev-new-build/ARCH/x86_64/AVAILABLE_ARCH/x86_64/AVAILABLE_DIST/centos8/DIST/centos8/MACHINE_SIZE/gigantic/release/17.0.0-13730-g5623bc3c/rpm/el8/BUILD/ceph-17.0.0-13730-g5623bc3c/src/boost
is not new enough. Please either "rm -rf
/home/jenkins-build/build/workspace/ceph-dev-new-build/ARCH/x86_64/AVAILABLE_ARCH/x86_64/AVAILABLE_DIST/centos8/DIST/centos8/MACHINE_SIZE/gigantic/release/17.0.0-13730-g5623bc3c/rpm/el8/BUILD/ceph-17.0.0-13730-g5623bc3c/src/boost"
so I can download Boost v1.79 for you, or make sure
/home/jenkins-build/build/workspace/ceph-dev-new-build/ARCH/x86_64/AVAILABLE_ARCH/x86_64/AVAILABLE_DIST/centos8/DIST/centos8/MACHINE_SIZE/gigantic/release/17.0.0-13730-g5623bc3c/rpm/el8/BUILD/ceph-17.0.0-13730-g5623bc3c/src/boost
contains a copy of Boost v1.79.
Call Stack (most recent call first):
cmake/modules/BuildBoost.cmake:147 (check_boost_version)
cmake/modules/BuildBoost.cmake:251 (do_build_boost)
CMakeLists.txt:647 (build_boost)
Also remove bind_allocator, as Boost.Asio now provides this function. Signed-off-by: Adam C. Emerson <aemerson@redhat.com>
1424801 to
947ac23
Compare
Done! |
|
jenkins test windows |
|
jenkins test make check |
|
@tchaikov The RGW suite is seeing valgrind issues that may be related to boost. Not due to 1.79 explicitly but we were wondering if you could take a look at https://tracker.ceph.com/issues/56500#note-2. Do you understand what's going on there? |
|
@djgalloway will take a look tomorrow. just saw your comment right before i am about to call it a day. |
|
essentially, the rgw/verify suite needs a way to run its valgrind jobs against builds (both ceph and boost) with the valgrind flag enabled would it be possible to:
where would this logic need to go? i see |
|
cc @yuvalif |
|
@cbodley i see you scheduled couple rgw:verify tests with pr-46554-kefu. they all completed without reporting issues. but according to the jenkins build log the packages were not built with valgrind=on or the if |
thanks @tchaikov. i didn't expect |
ahh, i see. so we need to go with |
|
@tchaikov ISTR you asking to build boost for arm64 too. Done. https://shaman.ceph.com/repos/libboost/master/892ab89e76b91b505ffbf083f6fb7f2a666d4132/default/257913/ |
@djgalloway yes, thank you! to be on par with amd64 nodes. Thank you! |
This fixes the major blocker with enabling C++20 and also allows us to use C++20 coroutines in asynchronous code.
Contribution Guidelines
To sign and title your commits, please refer to Submitting Patches to Ceph.
If you are submitting a fix for a stable branch (e.g. "pacific"), please refer to Submitting Patches to Ceph - Backports for the proper workflow.
Checklist
Show available Jenkins commands
jenkins retest this pleasejenkins test classic perfjenkins test crimson perfjenkins test signedjenkins test make checkjenkins test make check arm64jenkins test submodulesjenkins test dashboardjenkins test dashboard cephadmjenkins test apijenkins test docsjenkins render docsjenkins test ceph-volume alljenkins test ceph-volume toxjenkins test windows