New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
pacific: Update fio in pacific branch to fix make check
failures
#47696
Conversation
for better readability and maintainability Signed-off-by: Kefu Chai <kchai@redhat.com> (cherry picked from commit c190fee)
to pick up the clang build fix. we should use the upstream repo, once the clang build fix gets merged. bumping up the fio helps to address following error, as this part was rewritten: src/test/fio/CMakeFiles/fio_ceph_objectstore.dir/fio_ceph_objectstore.cc.o.d -o src/test/fio/CMakeFiles/fio_ceph_objectstore.dir/fio_ceph_objectstore.cc.o -c ../src/test/fio/fio_ceph_objectstore.cc In file included from ../src/test/fio/fio_ceph_objectstore.cc:26: In file included from src/fio/fio.h:18: In file included from src/fio/thread_options.h:6: In file included from src/fio/options.h:8: src/fio/parse.h:128:13: error: arithmetic on a pointer to void return ret + offset; ~~~ ^ 1 error generated. Signed-off-by: Kefu Chai <kchai@redhat.com> (cherry picked from commit 10baab3)
to address following warning: fatal: reference is not a tree: 7f02f21f53ccd5e2448086f8e9015489693dd2dc CMake Error at /home/jenkins-build/build/workspace/ceph-pull-requests/build/fio_ext-prefix/tmp/fio_ext-gitclone.cmake:40 (message): Failed to checkout tag: '7f02f21f53ccd5e2448086f8e9015489693dd2dc' it seems that the shallow option does not work with a sha1 tag option, let's continue using the ceph repo with a tag. Signed-off-by: Kefu Chai <tchaikov@gmail.com> (cherry picked from commit d777100)
Now what?!?
|
less redirections Signed-off-by: Kefu Chai <tchaikov@gmail.com> (cherry picked from commit f0fc04f)
to address following warning from python 3.9: <string>:1: DeprecationWarning: The distutils package is deprecated and slated for removal in Python 3.12. Use setuptools or check PEP 632 for potential alternatives <string>:1: DeprecationWarning: The distutils.sysconfig module is deprecated, use sysconfig instead Signed-off-by: Kefu Chai <tchaikov@gmail.com> (cherry picked from commit 637dd7b)
Thanks @tchaikov! :-) |
OK, now I'm getting:
...which looks suspiciously like bb9d099, but that won't cherry-pick by itself (more conflicts). I'll have to pick this up again on Monday (sorry!) |
or, we can disable the WITH_SEASTAR option on LTS branches. as crimson is still under active development. it does not help to build or test it on the LTS branches. |
Good idea. How do I do that? I assume that's in the CI infra somewhere and not something I can tweak in the ceph source? |
...oh, wait, I have an idea... |
The fun continues...
There's no way that's related to anything I've got here, surely? Update: that failure (https://jenkins.ceph.com/job/ceph-pull-requests/102006/consoleFull#-20391438177641bc0b-bacc-4481-8290-0cf28df0ce68) was a build running with python3.8, whereas the build I've just kicked off now with my request to jenkins below, seems to be using python3.10, and did not fail with the above error... I wonder if python version is significant here? |
jenkins test make check |
jenkins test api |
Those last two commits will hopefully fix |
OK,
This looks like https://bugs.launchpad.net/ubuntu/+source/ceph/+bug/1967139, which (if I'm reading it correctly) should have been fixed about a week ago. |
Can anyone assist in getting an updated python3-cheroot installed on braggi*, per the ubuntu bug in my previous comment? |
Right, done. |
jenkins test make check |
there're lots of old friends in the failed tests. the unittest_rgw_dmclock_scheduler failure is tracked by https://tracker.ceph.com/issues/40069 |
That is old. Happily(?) another run got us through |
jenkins test dashboard |
I've pushed this to https://github.com/ceph/ceph-ci/tree/wip-tserong-testing to try to get package builds, but I can't see that branch at https://shaman.ceph.com/builds/ceph/ - did I miss a step somewhere? |
Aha! wip-tserong-testing was identical to wip-pacific-update-fio-kefu-2, including all commit hashes, so I assume something was smart enough to not bother building my branch. So I've just done a reword of the last commit in wip-tserong-testing, without making any actual changes, to force a new hash, and now it seems to be building. |
(Note that the build I just triggered of wip-tserong-testing is presumably not actually necessary as https://shaman.ceph.com/builds/ceph/wip-pacific-update-fio-kefu-3/ is the same source, and looks pretty good to me) |
needs backport of #47449 (its quincy backport is at #47619). i really wish i could say "this must be the last one". but i don't dare .. |
Thanks for hunting that down @tchaikov. I'll try the quincy backport rather than pushing pacific up to gcc 11. |
See-also: https://tracker.ceph.com/issues/54473 Signed-off-by: Kefu Chai <tchaikov@gmail.com> (cherry picked from commit 2a97033) Conflicts: cmake/modules/Buildpmem.cmake: trivial resolution
...and away we go again. This PR really is a gift that keeps on giving ;-P |
|
The previous comment was ubuntu jammy failing. Ubuntu focal and centos 9 are fine. Centos 8 (https://jenkins.ceph.com/job/ceph-dev-new-build/ARCH=x86_64,AVAILABLE_ARCH=x86_64,AVAILABLE_DIST=centos8,DIST=centos8,MACHINE_SIZE=gigantic/65064//consoleFull) fails with:
|
that's caused by LTO. #42602 is the cure. |
The build fails because the function definitions are out of order. This also reuses the LIBRADOS_C_API_DEFAULT_F macro for function definitions. Fixes: https://tracker.ceph.com/issues/40060 Signed-off-by: Boris Ranto <branto@redhat.com> (cherry picked from commit d79efb0)
The gcc compiler now supports symver attribute. We should update the symvers to be able to support LTO. Fixes: https://tracker.ceph.com/issues/40060 Signed-off-by: Boris Ranto <branto@redhat.com> (cherry picked from commit e761933)
We can now use LTO when building ceph. The symver issue was fixed by using the gcc __symver__ attribute. The systems that support it can now re-enable LTO. Fixes: https://tracker.ceph.com/issues/40060 Signed-off-by: Boris Ranto <branto@redhat.com> (cherry picked from commit 381507a)
the __asm__(".asmver ..") is a support provided by the compiler, so would be better to detect it by either checking the compiler identifer or just try it out. in this change, instead of checking the building platform, we check this feature using check_c_source_compiles(). in future, we could support versioned symbols using function attriubte or symbol tables or version-script. on platform where symbol versioning is not supported, we might need to go with a different approach. Signed-off-by: Kefu Chai <kchai@redhat.com> (cherry picked from commit d0858db)
Fixes: https://tracker.ceph.com/issues/40060 Signed-off-by: Boris Ranto <branto@redhat.com> (cherry picked from commit f90e26c)
We should check if -flto-partition=none is defined when the compiler does not support symver attribute and fail the build if it is not. Fixes: https://tracker.ceph.com/issues/40060 Co-authored-by: Kefu Chai <tchaikov@gmail.com> Signed-off-by: Boris Ranto <branto@redhat.com> (cherry picked from commit 5bcfd5c)
We should check if either asm symver or attribute symver is defined and not assume that attribute symver implies asm symver. Fixes: https://tracker.ceph.com/issues/40060 Signed-off-by: Boris Ranto <branto@redhat.com> (cherry picked from commit ff1941a)
Jammy build (https://jenkins.ceph.com/job/ceph-dev-new-build/ARCH=x86_64,AVAILABLE_ARCH=x86_64,AVAILABLE_DIST=jammy,DIST=jammy,MACHINE_SIZE=gigantic/65070//consoleFull) is now giving:
(I'm going to have to leave this for today and pick it up again tomorrow) |
lemme hold the torch for a while. see #47803 |
Closing per previous comment. Thanks everyone! |
I'm trying to cherry pick d777100 in order to fix the
make check
failure mentioned in #47401 (comment). The cleanest way I could find to do this, avoiding needing to resolve any conflicts, seems to be to grab these four commits.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 please
jenkins test classic perf
jenkins test crimson perf
jenkins test signed
jenkins test make check
jenkins test make check arm64
jenkins test submodules
jenkins test dashboard
jenkins test dashboard cephadm
jenkins test api
jenkins test docs
jenkins render docs
jenkins test ceph-volume all
jenkins test ceph-volume tox
jenkins test windows