Note: This is a public test instance of Red Hat Bugzilla. The data contained within is a snapshot of the live data so any changes you make will not be reflected in the production Bugzilla. Email is disabled so feel free to test any aspect of the site that you want. File any problems you find or give feedback at bugzilla.redhat.com.

Bug 1793477

Summary: ceph fails to build in Fedora 32: no declaration matches 'int librbd::api::PoolMetadata<ImageCtxT>::get(librados::v14_2_0::IoCtx&, const string&, std::string*)'
Product: [Fedora] Fedora Reporter: Miro Hrončok <mhroncok>
Component: cephAssignee: Kaleb KEITHLEY <kkeithle>
Status: CLOSED RAWHIDE QA Contact: Fedora Extras Quality Assurance <extras-qa>
Severity: unspecified Docs Contact:
Priority: unspecified    
Version: rawhideCC: adeza, branto, danmick, david, fedora, i, josef, kkeithle, loic, ramkrsna, steve
Target Milestone: ---   
Target Release: ---   
Hardware: Unspecified   
OS: Unspecified   
URL: https://koschei.fedoraproject.org/package/ceph
Whiteboard:
Fixed In Version: ceph-14.2.6-3 Doc Type: If docs needed, set a value
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2020-02-03 05:16:59 UTC Type: Bug
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: --- RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: --- Target Upstream Version:
Embargoed:
Bug Depends On:    
Bug Blocks: 1750908, 1785415, 1792464    

Description Miro Hrončok 2020-01-21 12:42:16 UTC
Description of problem:
Package ceph fails to build from source in Fedora rawhide.

[ 38%] Building CXX object src/CMakeFiles/common-objs.dir/mds/FSMapUser.cc.o
cd /builddir/build/BUILD/ceph-14.2.6/build/src && /usr/bin/c++  -D_FILE_OFFSET_BITS=64 -D_GNU_SOURCE -D__linux__ -I/builddir/build/BUILD/ceph-14.2.6/build/src/include -I/builddir/build/BUILD/ceph-14.2.6/src -I/usr/include/nss3 -I/usr/include/nspr4 -isystem /builddir/build/BUILD/ceph-14.2.6/build/boost/include -isystem /builddir/build/BUILD/ceph-14.2.6/build/include -isystem /builddir/build/BUILD/ceph-14.2.6/src/xxHash -isystem /builddir/build/BUILD/ceph-14.2.6/src/rapidjson/include  -O2 -g -pipe -Wall -Werror=format-security -Wp,-D_FORTIFY_SOURCE=2 -Wp,-D_GLIBCXX_ASSERTIONS -fexceptions -fstack-protector-strong -grecord-gcc-switches -specs=/usr/lib/rpm/redhat/redhat-hardened-cc1 -specs=/usr/lib/rpm/redhat/redhat-annobin-cc1 -m64 -mtune=generic -fasynchronous-unwind-tables -fstack-clash-protection -fcf-protection -Wall -Wtype-limits -Wignored-qualifiers -Winit-self -Wpointer-arith -Werror=format-security -fno-strict-aliasing -fsigned-char -Wno-unknown-pragmas -rdynamic -O2 -g -pipe -Wall -Werror=format-security -Wp,-D_FORTIFY_SOURCE=2 -Wp,-D_GLIBCXX_ASSERTIONS -fexceptions -fstack-protector-strong -grecord-gcc-switches -specs=/usr/lib/rpm/redhat/redhat-hardened-cc1 -specs=/usr/lib/rpm/redhat/redhat-annobin-cc1 -m64 -mtune=generic -fasynchronous-unwind-tables -fstack-clash-protection -fcf-protection -ftemplate-depth-1024 -Wnon-virtual-dtor -Wno-unknown-pragmas -Wno-ignored-qualifiers -Wstrict-null-sentinel -Woverloaded-virtual -fno-new-ttp-matching -U_FORTIFY_SOURCE -D_FORTIFY_SOURCE=2 -fstack-protector-strong -fdiagnostics-color=auto -fno-builtin-malloc -fno-builtin-calloc -fno-builtin-realloc -fno-builtin-free -O2 -g -DNDEBUG -fPIC   -DHAVE_CONFIG_H -D__CEPH__ -D_REENTRANT -D_THREAD_SAFE -D__STDC_FORMAT_MACROS -std=c++17 -o CMakeFiles/common-objs.dir/mds/FSMapUser.cc.o -c /builddir/build/BUILD/ceph-14.2.6/src/mds/FSMapUser.cc
/builddir/build/BUILD/ceph-14.2.6/src/librbd/api/PoolMetadata.cc:19:5: error: no declaration matches 'int librbd::api::PoolMetadata<ImageCtxT>::get(librados::v14_2_0::IoCtx&, const string&, std::string*)'
   19 | int PoolMetadata<I>::get(librados::IoCtx& io_ctx,
      |     ^~~~~~~~~~~~~~~
In file included from /builddir/build/BUILD/ceph-14.2.6/src/librbd/api/PoolMetadata.cc:4:
/builddir/build/BUILD/ceph-14.2.6/src/librbd/api/PoolMetadata.h:21:14: note: candidate is: 'static int librbd::api::PoolMetadata<ImageCtxT>::get(librados::v14_2_0::IoCtx&, const int&, int*)'
   21 |   static int get(librados::IoCtx& io_ctx, const std::string &key,
      |              ^~~
/builddir/build/BUILD/ceph-14.2.6/src/librbd/api/PoolMetadata.h:19:7: note: 'class librbd::api::PoolMetadata<ImageCtxT>' defined here
   19 | class PoolMetadata {
      |       ^~~~~~~~~~~~
/builddir/build/BUILD/ceph-14.2.6/src/librbd/api/PoolMetadata.cc:33:5: error: no declaration matches 'int librbd::api::PoolMetadata<ImageCtxT>::set(librados::v14_2_0::IoCtx&, const string&, const string&)'
   33 | int PoolMetadata<I>::set(librados::IoCtx& io_ctx, const std::string &key,
      |     ^~~~~~~~~~~~~~~
In file included from /builddir/build/BUILD/ceph-14.2.6/src/librbd/api/PoolMetadata.cc:4:
/builddir/build/BUILD/ceph-14.2.6/src/librbd/api/PoolMetadata.h:23:14: note: candidate is: 'static int librbd::api::PoolMetadata<ImageCtxT>::set(librados::v14_2_0::IoCtx&, const int&, const int&)'
   23 |   static int set(librados::IoCtx& io_ctx, const std::string &key,
      |              ^~~
/builddir/build/BUILD/ceph-14.2.6/src/librbd/api/PoolMetadata.h:19:7: note: 'class librbd::api::PoolMetadata<ImageCtxT>' defined here
   19 | class PoolMetadata {
      |       ^~~~~~~~~~~~
/builddir/build/BUILD/ceph-14.2.6/src/librbd/api/PoolMetadata.cc:66:5: error: no declaration matches 'int librbd::api::PoolMetadata<ImageCtxT>::remove(librados::v14_2_0::IoCtx&, const string&)'
   66 | int PoolMetadata<I>::remove(librados::IoCtx& io_ctx, const std::string &key) {
      |     ^~~~~~~~~~~~~~~
In file included from /builddir/build/BUILD/ceph-14.2.6/src/librbd/api/PoolMetadata.cc:4:
/builddir/build/BUILD/ceph-14.2.6/src/librbd/api/PoolMetadata.h:25:14: note: candidate is: 'static int librbd::api::PoolMetadata<ImageCtxT>::remove(librados::v14_2_0::IoCtx&, const int&)'
   25 |   static int remove(librados::IoCtx& io_ctx, const std::string &key);
      |              ^~~~~~
/builddir/build/BUILD/ceph-14.2.6/src/librbd/api/PoolMetadata.h:19:7: note: 'class librbd::api::PoolMetadata<ImageCtxT>' defined here
   19 | class PoolMetadata {
      |       ^~~~~~~~~~~~
/builddir/build/BUILD/ceph-14.2.6/src/librbd/api/PoolMetadata.cc:92:5: error: no declaration matches 'int librbd::api::PoolMetadata<ImageCtxT>::list(librados::v14_2_0::IoCtx&, const string&, uint64_t, std::map<std::__cxx11::basic_string<char>, ceph::buffer::v14_2_0::list>*)'
   92 | int PoolMetadata<I>::list(librados::IoCtx& io_ctx, const std::string &start,
      |     ^~~~~~~~~~~~~~~
In file included from /builddir/build/BUILD/ceph-14.2.6/src/librbd/api/PoolMetadata.cc:4:
/builddir/build/BUILD/ceph-14.2.6/src/librbd/api/PoolMetadata.h:26:14: note: candidate is: 'static int librbd::api::PoolMetadata<ImageCtxT>::list(librados::v14_2_0::IoCtx&, const int&, int, int*)'
   26 |   static int list(librados::IoCtx& io_ctx, const std::string &start,
      |              ^~~~
/builddir/build/BUILD/ceph-14.2.6/src/librbd/api/PoolMetadata.h:19:7: note: 'class librbd::api::PoolMetadata<ImageCtxT>' defined here
   19 | class PoolMetadata {
      |       ^~~~~~~~~~~~

Version-Release number of selected component (if applicable):
14.2.6-2.fc32

Steps to Reproduce:
koji build --scratch f32 ceph-14.2.6-2.fc32.src.rpm

Additional info:
This package is tracked by Koschei. See:
https://koschei.fedoraproject.org/package/ceph
https://koschei.fedoraproject.org/build/7745731

This started happenign after gcc 10 upgrade.
This blocks the Python 3.9 rebuild.

Comment 1 Kaleb KEITHLEY 2020-01-27 13:01:17 UTC
After fixing the missing includes, builds (both in koji and on my f32/rawhide vm) now fail with an internal compiler error.  This is with gcc-10.0.1 20200121. (Note that when I compiled upstream ceph using my own builds of gcc-10 20200119, 20200101 and 20191229 I did not get this error.)




[ 63%] ^[[32mBuilding CXX object src/rgw/CMakeFiles/rgw_a.dir/rgw_swift_auth.cc.o^[[0m^M
cd /home/kkeithle/rpmbuild/BUILD/ceph-14.2.6/build/src/rgw && /usr/lib64/ccache/c++  -D_FILE_OFFSET_BITS=64 -D_GNU_SOURCE -D__linux__ -I/home/kkeithle/rpmbuild/BUILD/ceph-14.2.6/build/src/include -I/home/kkeithle/rpmbuild/BUILD/ceph-14.2.6/src -I/usr/include/nss3 -I/usr/include/nspr4 -I/home/kkeithle/rpmbuild/BUILD/ceph-14.2.6/src/dmclock/support/src -isystem /home/kkeithle/rpmbuild/BUILD/ceph-14.2.6/build/boost/include -isystem /home/kkeithle/rpmbuild/BUILD/ceph-14.2.6/build/include -isystem /home/kkeithle/rpmbuild/BUILD/ceph-14.2.6/src/xxHash -isystem /home/kkeithle/rpmbuild/BUILD/ceph-14.2.6/src/rapidjson/include -isystem /home/kkeithle/rpmbuild/BUILD/ceph-14.2.6/src/rgw/../rapidjson/include  -O2 -g -pipe -Wall -Werror=format-security -Wp,-D_FORTIFY_SOURCE=2 -Wp,-D_GLIBCXX_ASSERTIONS -fexceptions -fstack-protector-strong -grecord-gcc-switches -specs=/usr/lib/rpm/redhat/redhat-hardened-cc1  -m64 -mtune=generic -fasynchronous-unwind-tables -fstack-clash-protection -fcf-protection -Wall -Wtype-limits -Wignored-qualifiers -Winit-self -Wpointer-arith -Werror=format-security -fno-strict-aliasing -fsigned-char -Wno-unknown-pragmas -rdynamic -O2 -g -pipe -Wall -Werror=format-security -Wp,-D_FORTIFY_SOURCE=2 -Wp,-D_GLIBCXX_ASSERTIONS -fexceptions -fstack-protector-strong -grecord-gcc-switches -specs=/usr/lib/rpm/redhat/redhat-hardened-cc1  -m64 -mtune=generic -fasynchronous-unwind-tables -fstack-clash-protection -fcf-protection -ftemplate-depth-1024 -Wnon-virtual-dtor -Wno-unknown-pragmas -Wno-ignored-qualifiers -Wstrict-null-sentinel -Woverloaded-virtual -fno-new-ttp-matching -U_FORTIFY_SOURCE -D_FORTIFY_SOURCE=2 -fstack-protector-strong -fdiagnostics-color=auto -fno-builtin-malloc -fno-builtin-calloc -fno-builtin-realloc -fno-builtin-free -O2 -g -DNDEBUG -fPIC   -DHAVE_CONFIG_H -D__CEPH__ -D_REENTRANT -D_THREAD_SAFE -D__STDC_FORMAT_MACROS -std=c++17 -o CMakeFiles/rgw_a.dir/rgw_swift_auth.cc.o -c /home/kkeithle/rpmbuild/BUILD/ceph-14.2.6/src/rgw/rgw_swift_auth.cc^M
In file included from ^[[01m^[[K/home/kkeithle/rpmbuild/BUILD/ceph-14.2.6/build/boost/include/boost/python.hpp:55^[[m^[[K,^M
                 from ^[[01m^[[K/home/kkeithle/rpmbuild/BUILD/ceph-14.2.6/src/mgr/PyModule.cc:33^[[m^[[K:^M
^[[01m^[[K/home/kkeithle/rpmbuild/BUILD/ceph-14.2.6/build/boost/include/boost/python/raw_function.hpp:^[[m^[[K In member function '^[[01m^[[KPyObject* boost::python::detail::raw_dispatcher<F>::operator()(PyObject*, PyObject*)^[[m^[[K':^M
^[[01m^[[K/home/kkeithle/rpmbuild/BUILD/ceph-14.2.6/build/boost/include/boost/python/raw_function.hpp:33:76:^[[m^[[K ^[[01;31m^[[Kinternal compiler error: ^[[m^[[Kin nothrow_spec_p, at cp/except.c:1247^M
   33 |                     , keywords ? dict(borrowed_reference(keywords)) : dict(^[[01;31m^[[K)^[[m^[[K^M
      |                                                                            ^[[01;31m^[[K^^[[m^[[K^M
Please submit a full bug report,^M
with preprocessed source if appropriate.^M
See <http://bugzilla.redhat.com/bugzilla> for instructions.^M
Preprocessed source stored into /tmp/ccEGMhNt.out file, please attach this to your bugreport.^M


I will update with a BZ for gcc when I have one.

Comment 2 Kaleb KEITHLEY 2020-01-27 17:08:57 UTC
building with gcc-10.0.1-6 20200123 now builds, but unit tests are failing.

Temporarily disabling unit tests in preparation for the mass rebuild.

Comment 3 Kaleb KEITHLEY 2020-01-27 17:43:56 UTC
(In reply to Kaleb KEITHLEY from comment #2)
> building with gcc-10.0.1-6 20200123 now builds, but unit tests are failing.
> 
> Temporarily disabling unit tests in preparation for the mass rebuild.

I.e. gcc-10.0.1-0.6.