[Bug 1894453] Re: Building Ceph packages with RelWithDebInfo

Corey Bryant 1894453 at bugs.launchpad.net
Wed Sep 23 13:24:35 UTC 2020


@Ponnuvel,

I have a package built for groovy with RelWithDebInfo enabled. Can you
give it a test?

sudo add-apt-repository ppa:corey.bryant/groovy-victoria

The individual building of rocksdb files doesn't give off much information in the package builds to see compiler flags set. For example:
[  0%] Building CXX object CMakeFiles/rocksdb.dir/db/compacted_db_impl.cc.o

But comparing the cmake call shows that we do have RelWithDebInfo set
for rocksdb:

== Before RelWithDebInfo was enabled ==
cd /<<PKGBUILDDIR>>/obj-x86_64-linux-gnu/src/rocksdb && /usr/bin/cmake -DCMAKE_POSITION_INDEPENDENT_CODE=ON -DWITH_GFLAGS=OFF -DCMAKE_PREFIX_PATH= -DCMAKE_CXX_COMPILER=/usr/bin/c++ -DWITH_SNAPPY=TRUE -DWITH_LZ4=TRUE -DLZ4_INCLUDE_DIR=/usr/include -DLZ4_LIBRARIES=/usr/lib/x86_64-linux-gnu/liblz4.so -DWITH_ZLIB=TRUE -DPORTABLE=ON -DCMAKE_AR=/usr/bin/ar -DCMAKE_BUILD_TYPE=None -DFAIL_ON_WARNINGS=OFF -DUSE_RTTI=1 "-GUnix Makefiles" -DCMAKE_C_FLAGS=-Wno-stringop-truncation "-DCMAKE_CXX_FLAGS='-Wno-deprecated-copy -Wno-pessimizing-move'" "-GUnix Makefiles" /<<PKGBUILDDIR>>/src/rocksdb

== After RelWithDebInfo was enabled ==
cd /<<PKGBUILDDIR>>/obj-x86_64-linux-gnu/src/rocksdb && /usr/bin/cmake -DCMAKE_POSITION_INDEPENDENT_CODE=ON -DWITH_GFLAGS=OFF -DCMAKE_PREFIX_PATH= -DCMAKE_CXX_COMPILER=/usr/bin/c++ -DWITH_SNAPPY=TRUE -DWITH_LZ4=TRUE -DLZ4_INCLUDE_DIR=/usr/include -DLZ4_LIBRARIES=/usr/lib/x86_64-linux-gnu/liblz4.so -DWITH_ZLIB=TRUE -DPORTABLE=ON -DCMAKE_AR=/usr/bin/ar -DCMAKE_BUILD_TYPE=RelWithDebInfo -DFAIL_ON_WARNINGS=OFF -DUSE_RTTI=1 "-GUnix Makefiles" -DCMAKE_C_FLAGS=-Wno-stringop-truncation "-DCMAKE_CXX_FLAGS='-Wno-deprecated-copy -Wno-pessimizing-move'" "-GUnix Makefiles" /<<PKGBUILDDIR>>/src/rocksdb

-- 
You received this bug notification because you are a member of Ubuntu
OpenStack, which is subscribed to ceph in Ubuntu.
https://bugs.launchpad.net/bugs/1894453

Title:
  Building Ceph packages with RelWithDebInfo

Status in ceph package in Ubuntu:
  In Progress

Bug description:
  This is to consider/discuss the possibility of whether the Ceph
  packages (UCA) should be built with RelWithDebInfo build option
  (CMAKE_BUILD_TYPE [0]) which can be supplied to the build script
  do_cmake.sh [1].

  Currently, Upstream as well as UCA builds default to 'Debug' [0]
  builds. But is any reason why shouldn't go for RelWithDebInfo (i.e.
  "Release with Debug information")?

  
  There's one issue noted with RelWithDebInfo which has a workaround too [2].

  In general, gcc's -O2 [3] build should generate better code as well as
  there's a specific case for Ceph [4] that it improves performance.

  [0] https://cmake.org/cmake/help/latest/variable/CMAKE_BUILD_TYPE.html

  [1] https://github.com/ceph/ceph/blob/master/do_cmake.sh

  [2] https://docs.ceph.com/docs/master/dev/perf/#common-issues

  [3] https://gcc.gnu.org/onlinedocs/gcc/Optimize-Options.html

  [4] https://bugs.gentoo.org/show_bug.cgi?id=733316

To manage notifications about this bug go to:
https://bugs.launchpad.net/ubuntu/+source/ceph/+bug/1894453/+subscriptions



More information about the Ubuntu-openstack-bugs mailing list