Bug 1420481

Summary: ceph FTBFS with current Rawhide (and needs rebuilding for new boost)
Product: [Fedora] Fedora Reporter: Adam Williamson <awilliam>
Component: cephAssignee: Boris Ranto <branto>
Status: CLOSED RAWHIDE QA Contact: Fedora Extras Quality Assurance <extras-qa>
Severity: urgent Docs Contact:
Priority: unspecified    
Version: rawhideCC: bhubbard, branto, david, fedora, kkeithle, loic, ramkrsna, rjones, robatino, steve
Target Milestone: ---   
Target Release: ---   
Hardware: All   
OS: Linux   
Whiteboard: AcceptedBlocker
Fixed In Version: Doc Type: If docs needed, set a value
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2017-02-09 08:29:22 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:
Bug Depends On:    
Bug Blocks: 910269, 1349184    

Description Adam Williamson 2017-02-08 19:44:51 UTC
ceph needs rebuilding in current Rawhide due to an soname bump of boost, but it fails to build:

In file included from /builddir/build/BUILD/ceph-11.2.0/src/rocksdb/util/statistics.h:17:0,
                 from /builddir/build/BUILD/ceph-11.2.0/src/rocksdb/util/stop_watch.h:8,
                 from /builddir/build/BUILD/ceph-11.2.0/src/rocksdb/util/perf_step_timer.h:9,
                 from /builddir/build/BUILD/ceph-11.2.0/src/rocksdb/util/iostats_context_imp.h:8,
                 from /builddir/build/BUILD/ceph-11.2.0/src/rocksdb/util/posix_logger.h:27,
                 from /builddir/build/BUILD/ceph-11.2.0/src/rocksdb/port/util_logger.h:18,
                 from /builddir/build/BUILD/ceph-11.2.0/src/rocksdb/db/auto_roll_logger.h:15,
                 from /builddir/build/BUILD/ceph-11.2.0/src/rocksdb/db/auto_roll_logger.cc:6:
/builddir/build/BUILD/ceph-11.2.0/src/rocksdb/util/thread_local.h:205:5: error: this use of "defined" may not be portable [-Werror=expansion-to-defined]
 #if ROCKSDB_SUPPORT_THREAD_LOCAL
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
/builddir/build/BUILD/ceph-11.2.0/src/rocksdb/util/thread_local.h:205:5: error: this use of "defined" may not be portable [-Werror=expansion-to-defined]
/builddir/build/BUILD/ceph-11.2.0/src/rocksdb/util/thread_local.h:205:5: error: this use of "defined" may not be portable [-Werror=expansion-to-defined]
[  4%] Building CXX object src/erasure-code/shec/CMakeFiles/shec_utils.dir/ErasureCodeShec.cc.o
[  4%] Built target gf-complete_objs
Scanning dependencies of target kv_objs
[  4%] Building CXX object src/kv/CMakeFiles/kv_objs.dir/KeyValueDB.cc.o
/builddir/build/BUILD/ceph-11.2.0/src/rocksdb/util/thread_local.h:66:16: error: 'function' in namespace 'std' does not name a template type
   typedef std::function<void(void*, void*)> FoldFunc;
                ^~~~~~~~
/builddir/build/BUILD/ceph-11.2.0/src/rocksdb/util/thread_local.h:71:13: error: 'FoldFunc' has not been declared
   void Fold(FoldFunc func, void* res);
             ^~~~~~~~
/builddir/build/BUILD/ceph-11.2.0/src/rocksdb/util/thread_local.h:142:28: error: 'FoldFunc' has not been declared
     void Fold(uint32_t id, FoldFunc func, void* res);

This prevents installation of the Workstation package set (dep chain through is gnome-boxes -> libvirt-daemon-kvm -> libvirt-daemon-driver-storage -> librbd.so.1 , which is part of librbd1 , which is part of ceph), and consequently breaks compose of the Workstation live images, which makes this an automatic Alpha release blocker:

"Bugs which entirely prevent the composition of one or more of the release-blocking images required to be built for a currently-pending (pre-)release"

https://fedoraproject.org/wiki/QA:SOP_blocker_bug_process#Automatic_blockers

Comment 1 Richard W.M. Jones 2017-02-08 22:25:51 UTC
Also this breaks all builds using ceph libraries with:

DEBUG util.py:435:  Error: nothing provides libboost_system.so.1.60.0()(64bit) needed by librbd1-1:10.2.5-1.fc26.x86_64

https://koji.fedoraproject.org/koji/taskinfo?taskID=17680084

Comment 2 Boris Ranto 2017-02-08 23:34:29 UTC
I wanted to fix this alongside a rebase to 11.2.0 but it turned out to be a much greater task than I hoped for (we are running into issues with rocksdb that just won't go away).

As for 10.2.5, that FTBFS as well. It looks like the compiler got more restricitve on incomplete definitions and we need this patch to fix this

https://github.com/ceph/ceph/pull/13322

The scratch build looked promising (i686 build worked just fine) so I went ahead and scheduled a regular build with the patch

https://koji.fedoraproject.org/koji/taskinfo?taskID=17680732

Comment 3 Boris Ranto 2017-02-09 08:29:22 UTC
The buid finished just fine so this should already be fixed.

Comment 4 Richard W.M. Jones 2017-02-09 10:39:52 UTC
Something seems to be stopping the new package getting into
Rawhide.  It is tagged f26-pending, about 5 hours after it was built.

Comment 5 Andre Robatino 2017-02-09 10:45:14 UTC
The latest Rawhide mash started at 05:16 UTC, before the build finished. (The Rawhide mash failed in a horrible fire at 09:34 UTC so it won't get to Rawhide until at least tomorrow.)