Details
-
Bug
-
Status: Closed
-
Critical
-
Resolution: Fixed
-
7.0.0, 7.1.0
-
7.1.0-1817.x86_64
CentOS Linux release 7.8.2003 (Core)
-
Untriaged
-
1
-
Unknown
-
Build Team 2021 Sprint 24, Build Team 2021 Sprint 25, Build Team 2022 Sprint 1, Build Team 2022 Sprint 2
Description
When trying to debug a memcached issue on CB Server 7.1.0-1817 on CentOS 7, GDB is reporting that debugging information is missing even when the -debuginfo RPM is installed:
rpm -qa|grep couchbase
|
couchbase-server-debuginfo-7.1.0-1817.x86_64
|
couchbase-server-7.1.0-1817.x86_64
|
Observed Behaviour
GDB cannot find debugging information for our version of the C++ standard library /opt/couchbase/bin/../lib/libstdc++.so.6:
gdb -p $(pgrep memcached)
|
...
|
(gdb) info sharedlibrary
|
From To Syms Read Shared Object Library
|
0x00007f0d19a102c0 0x00007f0d19a1493e Yes /opt/couchbase/bin/../lib/libnuma.so.1
|
0x00007f0d19809fe0 0x00007f0d1980abfa Yes /opt/couchbase/bin/../lib/liburing.so.1
|
0x00007f0d195ee290 0x00007f0d19601670 Yes (*) /opt/couchbase/bin/../lib/libz.so.1
|
0x00007f0d193d0030 0x00007f0d193e2455 Yes /opt/couchbase/bin/../lib/libphosphor.so
|
0x00007f0d191c3e50 0x00007f0d191c494e Yes /lib64/libdl.so.2
|
0x00007f0d18fac8f0 0x00007f0d18fb7db1 Yes /lib64/libpthread.so.0
|
0x00007f0d18da1230 0x00007f0d18da41bc Yes /lib64/librt.so.1
|
0x00007f0d18b71b90 0x00007f0d18b9b3a7 Yes (*) /opt/couchbase/bin/../lib/liblz4.so.1
|
0x00007f0d189675c0 0x00007f0d1896c97f Yes /opt/couchbase/bin/../lib/libsnappy.so.1
|
0x00007f0d18495750 0x00007f0d1852abfa Yes /opt/couchbase/bin/../lib/libjemalloc.so.2
|
0x00007f0d1826a2f0 0x00007f0d182836c1 Yes /opt/couchbase/bin/../lib/libevent_core-2.1.so.7
|
0x00007f0d18048e90 0x00007f0d1805961f Yes /opt/couchbase/bin/../lib/libevent_extra-2.1.so.7
|
0x00007f0d17e3fd50 0x00007f0d17e400f7 Yes /opt/couchbase/bin/../lib/libevent_pthreads-2.1.so.7
|
0x00007f0d17c3a6f0 0x00007f0d17c3caa4 Yes /opt/couchbase/bin/../lib/libevent_openssl-2.1.so.7
|
0x00007f0d179c20d0 0x00007f0d17a0fb16 Yes (*) /opt/couchbase/bin/../lib/libssl.so.1.1
|
0x00007f0d1751d000 0x00007f0d176dbf4a Yes (*) /opt/couchbase/bin/../lib/libcrypto.so.1.1
|
0x00007f0d17171ef0 0x00007f0d172498ba Yes (*) /opt/couchbase/bin/../lib/libstdc++.so.6
|
0x00007f0d16ddc350 0x00007f0d16e47316 Yes /lib64/libm.so.6
|
0x00007f0d16bc1af0 0x00007f0d16bd22dd Yes (*) /opt/couchbase/bin/../lib/libgcc_s.so.1
|
0x00007f0d168109f0 0x00007f0d1696093f Yes /lib64/libc.so.6
|
0x00007f0d19c18af0 0x00007f0d19c34050 Yes /lib64/ld-linux-x86-64.so.2
|
(*): Shared library is missing debugging information.
|
Expected behaviour
Like our other libraries (e.g. /opt/couchbase/bin/../lib/libjemalloc.so.2) debugging information should be present.
Initial analysis
The expected .debug file is missing from the RPM - for example here are all "lib" prefixed debug files in the lib directory - note no libstdc++:
# rpm -ql couchbase-server-debuginfo-7.1.0-1817.x86_64|grep /usr/lib/debug/opt/couchbase/lib/lib
|
/usr/lib/debug/opt/couchbase/lib/libbreakpad_wrapper.so-7.1.0-1817.x86_64.debug
|
/usr/lib/debug/opt/couchbase/lib/libchrome_zlib.so-7.1.0-1817.x86_64.debug
|
/usr/lib/debug/opt/couchbase/lib/libcouchbase.so.8.0.5-7.1.0-1817.x86_64.debug
|
/usr/lib/debug/opt/couchbase/lib/libcouchstore.so-7.1.0-1817.x86_64.debug
|
/usr/lib/debug/opt/couchbase/lib/libcouchstore_views.so-7.1.0-1817.x86_64.debug
|
/usr/lib/debug/opt/couchbase/lib/libcrypto.so.1.1-7.1.0-1817.x86_64.debug
|
/usr/lib/debug/opt/couchbase/lib/libcurl.so.4.7.0-7.1.0-1817.x86_64.debug
|
/usr/lib/debug/opt/couchbase/lib/libevent-2.1.so.7.0.0-7.1.0-1817.x86_64.debug
|
/usr/lib/debug/opt/couchbase/lib/libevent_core-2.1.so.7.0.0-7.1.0-1817.x86_64.debug
|
/usr/lib/debug/opt/couchbase/lib/libevent_extra-2.1.so.7.0.0-7.1.0-1817.x86_64.debug
|
/usr/lib/debug/opt/couchbase/lib/libevent_openssl-2.1.so.7.0.0-7.1.0-1817.x86_64.debug
|
/usr/lib/debug/opt/couchbase/lib/libevent_pthreads-2.1.so.7.0.0-7.1.0-1817.x86_64.debug
|
/usr/lib/debug/opt/couchbase/lib/libforestdb.so-7.1.0-1817.x86_64.debug
|
/usr/lib/debug/opt/couchbase/lib/libicui18n.so-7.1.0-1817.x86_64.debug
|
/usr/lib/debug/opt/couchbase/lib/libicuuc.so-7.1.0-1817.x86_64.debug
|
/usr/lib/debug/opt/couchbase/lib/libjemalloc.so.2-7.1.0-1817.x86_64.debug
|
/usr/lib/debug/opt/couchbase/lib/libjseval.so-7.1.0-1817.x86_64.debug
|
/usr/lib/debug/opt/couchbase/lib/liblz4.so.1.9.2-7.1.0-1817.x86_64.debug
|
/usr/lib/debug/opt/couchbase/lib/libnuma.so.1.0.0-7.1.0-1817.x86_64.debug
|
/usr/lib/debug/opt/couchbase/lib/libpcre.so.1.2.12-7.1.0-1817.x86_64.debug
|
/usr/lib/debug/opt/couchbase/lib/libpcrecpp.so.0.0.2-7.1.0-1817.x86_64.debug
|
/usr/lib/debug/opt/couchbase/lib/libpcreposix.so.0.0.7-7.1.0-1817.x86_64.debug
|
/usr/lib/debug/opt/couchbase/lib/libphosphor.so-7.1.0-1817.x86_64.debug
|
/usr/lib/debug/opt/couchbase/lib/libsigar.so-7.1.0-1817.x86_64.debug
|
/usr/lib/debug/opt/couchbase/lib/libsnappy.so.1.1.8-7.1.0-1817.x86_64.debug
|
/usr/lib/debug/opt/couchbase/lib/libssl.so.1.1-7.1.0-1817.x86_64.debug
|
/usr/lib/debug/opt/couchbase/lib/liburing.so.1.0.6-7.1.0-1817.x86_64.debug
|
/usr/lib/debug/opt/couchbase/lib/libuv.so.1.0.0-7.1.0-1817.x86_64.debug
|
/usr/lib/debug/opt/couchbase/lib/libv8.so-7.1.0-1817.x86_64.debug
|
/usr/lib/debug/opt/couchbase/lib/libv8_libbase.so-7.1.0-1817.x86_64.debug
|
/usr/lib/debug/opt/couchbase/lib/libv8_libplatform.so-7.1.0-1817.x86_64.debug
|
/usr/lib/debug/opt/couchbase/lib/libz.so.1.2.11-7.1.0-1817.x86_64.debug
|
(Seen while investigating MB-49877).
Attachments
Activity
Field | Original Value | New Value |
---|---|---|
Description |
When trying to debug a memcached issue on CB Server 7.1.0-1817 on CentOS 7, GDB is reporting that debugging information even when the -debuginfo RPM is installed:
{code} rpm -qa|grep couchbase couchbase-server-debuginfo-7.1.0-1817.x86_64 couchbase-server-7.1.0-1817.x86_64 {code} h3. Observed Behaviour GDB cannot find debugging information for our version of the C++ standard library {{/opt/couchbase/bin/../lib/libstdc++.so.6}}: {code} gdb -p $(pgrep memcached) ... (gdb) info sharedlibrary From To Syms Read Shared Object Library 0x00007f0d19a102c0 0x00007f0d19a1493e Yes /opt/couchbase/bin/../lib/libnuma.so.1 0x00007f0d19809fe0 0x00007f0d1980abfa Yes /opt/couchbase/bin/../lib/liburing.so.1 0x00007f0d195ee290 0x00007f0d19601670 Yes (*) /opt/couchbase/bin/../lib/libz.so.1 0x00007f0d193d0030 0x00007f0d193e2455 Yes /opt/couchbase/bin/../lib/libphosphor.so 0x00007f0d191c3e50 0x00007f0d191c494e Yes /lib64/libdl.so.2 0x00007f0d18fac8f0 0x00007f0d18fb7db1 Yes /lib64/libpthread.so.0 0x00007f0d18da1230 0x00007f0d18da41bc Yes /lib64/librt.so.1 0x00007f0d18b71b90 0x00007f0d18b9b3a7 Yes (*) /opt/couchbase/bin/../lib/liblz4.so.1 0x00007f0d189675c0 0x00007f0d1896c97f Yes /opt/couchbase/bin/../lib/libsnappy.so.1 0x00007f0d18495750 0x00007f0d1852abfa Yes /opt/couchbase/bin/../lib/libjemalloc.so.2 0x00007f0d1826a2f0 0x00007f0d182836c1 Yes /opt/couchbase/bin/../lib/libevent_core-2.1.so.7 0x00007f0d18048e90 0x00007f0d1805961f Yes /opt/couchbase/bin/../lib/libevent_extra-2.1.so.7 0x00007f0d17e3fd50 0x00007f0d17e400f7 Yes /opt/couchbase/bin/../lib/libevent_pthreads-2.1.so.7 0x00007f0d17c3a6f0 0x00007f0d17c3caa4 Yes /opt/couchbase/bin/../lib/libevent_openssl-2.1.so.7 0x00007f0d179c20d0 0x00007f0d17a0fb16 Yes (*) /opt/couchbase/bin/../lib/libssl.so.1.1 0x00007f0d1751d000 0x00007f0d176dbf4a Yes (*) /opt/couchbase/bin/../lib/libcrypto.so.1.1 0x00007f0d17171ef0 0x00007f0d172498ba Yes (*) /opt/couchbase/bin/../lib/libstdc++.so.6 0x00007f0d16ddc350 0x00007f0d16e47316 Yes /lib64/libm.so.6 0x00007f0d16bc1af0 0x00007f0d16bd22dd Yes (*) /opt/couchbase/bin/../lib/libgcc_s.so.1 0x00007f0d168109f0 0x00007f0d1696093f Yes /lib64/libc.so.6 0x00007f0d19c18af0 0x00007f0d19c34050 Yes /lib64/ld-linux-x86-64.so.2 (*): Shared library is missing debugging information. {code} h3. Expected behaviour Like our other libraries (e.g. /opt/couchbase/bin/../lib/libjemalloc.so.2) debugging information should be present. h3. Initial analysis The expected .debug file is missing from the RPM - for example here are all "lib" prefixed debug files in the lib directory - note no libstdc++: {code} # rpm -ql couchbase-server-debuginfo-7.1.0-1817.x86_64|grep /usr/lib/debug/opt/couchbase/lib/lib /usr/lib/debug/opt/couchbase/lib/libbreakpad_wrapper.so-7.1.0-1817.x86_64.debug /usr/lib/debug/opt/couchbase/lib/libchrome_zlib.so-7.1.0-1817.x86_64.debug /usr/lib/debug/opt/couchbase/lib/libcouchbase.so.8.0.5-7.1.0-1817.x86_64.debug /usr/lib/debug/opt/couchbase/lib/libcouchstore.so-7.1.0-1817.x86_64.debug /usr/lib/debug/opt/couchbase/lib/libcouchstore_views.so-7.1.0-1817.x86_64.debug /usr/lib/debug/opt/couchbase/lib/libcrypto.so.1.1-7.1.0-1817.x86_64.debug /usr/lib/debug/opt/couchbase/lib/libcurl.so.4.7.0-7.1.0-1817.x86_64.debug /usr/lib/debug/opt/couchbase/lib/libevent-2.1.so.7.0.0-7.1.0-1817.x86_64.debug /usr/lib/debug/opt/couchbase/lib/libevent_core-2.1.so.7.0.0-7.1.0-1817.x86_64.debug /usr/lib/debug/opt/couchbase/lib/libevent_extra-2.1.so.7.0.0-7.1.0-1817.x86_64.debug /usr/lib/debug/opt/couchbase/lib/libevent_openssl-2.1.so.7.0.0-7.1.0-1817.x86_64.debug /usr/lib/debug/opt/couchbase/lib/libevent_pthreads-2.1.so.7.0.0-7.1.0-1817.x86_64.debug /usr/lib/debug/opt/couchbase/lib/libforestdb.so-7.1.0-1817.x86_64.debug /usr/lib/debug/opt/couchbase/lib/libicui18n.so-7.1.0-1817.x86_64.debug /usr/lib/debug/opt/couchbase/lib/libicuuc.so-7.1.0-1817.x86_64.debug /usr/lib/debug/opt/couchbase/lib/libjemalloc.so.2-7.1.0-1817.x86_64.debug /usr/lib/debug/opt/couchbase/lib/libjseval.so-7.1.0-1817.x86_64.debug /usr/lib/debug/opt/couchbase/lib/liblz4.so.1.9.2-7.1.0-1817.x86_64.debug /usr/lib/debug/opt/couchbase/lib/libnuma.so.1.0.0-7.1.0-1817.x86_64.debug /usr/lib/debug/opt/couchbase/lib/libpcre.so.1.2.12-7.1.0-1817.x86_64.debug /usr/lib/debug/opt/couchbase/lib/libpcrecpp.so.0.0.2-7.1.0-1817.x86_64.debug /usr/lib/debug/opt/couchbase/lib/libpcreposix.so.0.0.7-7.1.0-1817.x86_64.debug /usr/lib/debug/opt/couchbase/lib/libphosphor.so-7.1.0-1817.x86_64.debug /usr/lib/debug/opt/couchbase/lib/libsigar.so-7.1.0-1817.x86_64.debug /usr/lib/debug/opt/couchbase/lib/libsnappy.so.1.1.8-7.1.0-1817.x86_64.debug /usr/lib/debug/opt/couchbase/lib/libssl.so.1.1-7.1.0-1817.x86_64.debug /usr/lib/debug/opt/couchbase/lib/liburing.so.1.0.6-7.1.0-1817.x86_64.debug /usr/lib/debug/opt/couchbase/lib/libuv.so.1.0.0-7.1.0-1817.x86_64.debug /usr/lib/debug/opt/couchbase/lib/libv8.so-7.1.0-1817.x86_64.debug /usr/lib/debug/opt/couchbase/lib/libv8_libbase.so-7.1.0-1817.x86_64.debug /usr/lib/debug/opt/couchbase/lib/libv8_libplatform.so-7.1.0-1817.x86_64.debug /usr/lib/debug/opt/couchbase/lib/libz.so.1.2.11-7.1.0-1817.x86_64.debug {code} (Seen while investigating |
When trying to debug a memcached issue on CB Server 7.1.0-1817 on CentOS 7, GDB is reporting that debugging information even when the -debuginfo RPM is installed:
{code} rpm -qa|grep couchbase couchbase-server-debuginfo-7.1.0-1817.x86_64 couchbase-server-7.1.0-1817.x86_64 {code} h3. Observed Behaviour GDB cannot find debugging information for our version of the C++ standard library {{/opt/couchbase/bin/../lib/libstdc++.so.6}}: {code:highlight=21} gdb -p $(pgrep memcached) ... (gdb) info sharedlibrary From To Syms Read Shared Object Library 0x00007f0d19a102c0 0x00007f0d19a1493e Yes /opt/couchbase/bin/../lib/libnuma.so.1 0x00007f0d19809fe0 0x00007f0d1980abfa Yes /opt/couchbase/bin/../lib/liburing.so.1 0x00007f0d195ee290 0x00007f0d19601670 Yes (*) /opt/couchbase/bin/../lib/libz.so.1 0x00007f0d193d0030 0x00007f0d193e2455 Yes /opt/couchbase/bin/../lib/libphosphor.so 0x00007f0d191c3e50 0x00007f0d191c494e Yes /lib64/libdl.so.2 0x00007f0d18fac8f0 0x00007f0d18fb7db1 Yes /lib64/libpthread.so.0 0x00007f0d18da1230 0x00007f0d18da41bc Yes /lib64/librt.so.1 0x00007f0d18b71b90 0x00007f0d18b9b3a7 Yes (*) /opt/couchbase/bin/../lib/liblz4.so.1 0x00007f0d189675c0 0x00007f0d1896c97f Yes /opt/couchbase/bin/../lib/libsnappy.so.1 0x00007f0d18495750 0x00007f0d1852abfa Yes /opt/couchbase/bin/../lib/libjemalloc.so.2 0x00007f0d1826a2f0 0x00007f0d182836c1 Yes /opt/couchbase/bin/../lib/libevent_core-2.1.so.7 0x00007f0d18048e90 0x00007f0d1805961f Yes /opt/couchbase/bin/../lib/libevent_extra-2.1.so.7 0x00007f0d17e3fd50 0x00007f0d17e400f7 Yes /opt/couchbase/bin/../lib/libevent_pthreads-2.1.so.7 0x00007f0d17c3a6f0 0x00007f0d17c3caa4 Yes /opt/couchbase/bin/../lib/libevent_openssl-2.1.so.7 0x00007f0d179c20d0 0x00007f0d17a0fb16 Yes (*) /opt/couchbase/bin/../lib/libssl.so.1.1 0x00007f0d1751d000 0x00007f0d176dbf4a Yes (*) /opt/couchbase/bin/../lib/libcrypto.so.1.1 0x00007f0d17171ef0 0x00007f0d172498ba Yes (*) /opt/couchbase/bin/../lib/libstdc++.so.6 0x00007f0d16ddc350 0x00007f0d16e47316 Yes /lib64/libm.so.6 0x00007f0d16bc1af0 0x00007f0d16bd22dd Yes (*) /opt/couchbase/bin/../lib/libgcc_s.so.1 0x00007f0d168109f0 0x00007f0d1696093f Yes /lib64/libc.so.6 0x00007f0d19c18af0 0x00007f0d19c34050 Yes /lib64/ld-linux-x86-64.so.2 (*): Shared library is missing debugging information. {code} h3. Expected behaviour Like our other libraries (e.g. /opt/couchbase/bin/../lib/libjemalloc.so.2) debugging information should be present. h3. Initial analysis The expected .debug file is missing from the RPM - for example here are all "lib" prefixed debug files in the lib directory - note no libstdc++: {code} # rpm -ql couchbase-server-debuginfo-7.1.0-1817.x86_64|grep /usr/lib/debug/opt/couchbase/lib/lib /usr/lib/debug/opt/couchbase/lib/libbreakpad_wrapper.so-7.1.0-1817.x86_64.debug /usr/lib/debug/opt/couchbase/lib/libchrome_zlib.so-7.1.0-1817.x86_64.debug /usr/lib/debug/opt/couchbase/lib/libcouchbase.so.8.0.5-7.1.0-1817.x86_64.debug /usr/lib/debug/opt/couchbase/lib/libcouchstore.so-7.1.0-1817.x86_64.debug /usr/lib/debug/opt/couchbase/lib/libcouchstore_views.so-7.1.0-1817.x86_64.debug /usr/lib/debug/opt/couchbase/lib/libcrypto.so.1.1-7.1.0-1817.x86_64.debug /usr/lib/debug/opt/couchbase/lib/libcurl.so.4.7.0-7.1.0-1817.x86_64.debug /usr/lib/debug/opt/couchbase/lib/libevent-2.1.so.7.0.0-7.1.0-1817.x86_64.debug /usr/lib/debug/opt/couchbase/lib/libevent_core-2.1.so.7.0.0-7.1.0-1817.x86_64.debug /usr/lib/debug/opt/couchbase/lib/libevent_extra-2.1.so.7.0.0-7.1.0-1817.x86_64.debug /usr/lib/debug/opt/couchbase/lib/libevent_openssl-2.1.so.7.0.0-7.1.0-1817.x86_64.debug /usr/lib/debug/opt/couchbase/lib/libevent_pthreads-2.1.so.7.0.0-7.1.0-1817.x86_64.debug /usr/lib/debug/opt/couchbase/lib/libforestdb.so-7.1.0-1817.x86_64.debug /usr/lib/debug/opt/couchbase/lib/libicui18n.so-7.1.0-1817.x86_64.debug /usr/lib/debug/opt/couchbase/lib/libicuuc.so-7.1.0-1817.x86_64.debug /usr/lib/debug/opt/couchbase/lib/libjemalloc.so.2-7.1.0-1817.x86_64.debug /usr/lib/debug/opt/couchbase/lib/libjseval.so-7.1.0-1817.x86_64.debug /usr/lib/debug/opt/couchbase/lib/liblz4.so.1.9.2-7.1.0-1817.x86_64.debug /usr/lib/debug/opt/couchbase/lib/libnuma.so.1.0.0-7.1.0-1817.x86_64.debug /usr/lib/debug/opt/couchbase/lib/libpcre.so.1.2.12-7.1.0-1817.x86_64.debug /usr/lib/debug/opt/couchbase/lib/libpcrecpp.so.0.0.2-7.1.0-1817.x86_64.debug /usr/lib/debug/opt/couchbase/lib/libpcreposix.so.0.0.7-7.1.0-1817.x86_64.debug /usr/lib/debug/opt/couchbase/lib/libphosphor.so-7.1.0-1817.x86_64.debug /usr/lib/debug/opt/couchbase/lib/libsigar.so-7.1.0-1817.x86_64.debug /usr/lib/debug/opt/couchbase/lib/libsnappy.so.1.1.8-7.1.0-1817.x86_64.debug /usr/lib/debug/opt/couchbase/lib/libssl.so.1.1-7.1.0-1817.x86_64.debug /usr/lib/debug/opt/couchbase/lib/liburing.so.1.0.6-7.1.0-1817.x86_64.debug /usr/lib/debug/opt/couchbase/lib/libuv.so.1.0.0-7.1.0-1817.x86_64.debug /usr/lib/debug/opt/couchbase/lib/libv8.so-7.1.0-1817.x86_64.debug /usr/lib/debug/opt/couchbase/lib/libv8_libbase.so-7.1.0-1817.x86_64.debug /usr/lib/debug/opt/couchbase/lib/libv8_libplatform.so-7.1.0-1817.x86_64.debug /usr/lib/debug/opt/couchbase/lib/libz.so.1.2.11-7.1.0-1817.x86_64.debug {code} (Seen while investigating |
Assignee | Couchbase Build Team [ build-team ] | Chris Hillery [ ceej ] |
Sprint | Build Team 2021 Sprint 24 [ 1875 ] |
Description |
When trying to debug a memcached issue on CB Server 7.1.0-1817 on CentOS 7, GDB is reporting that debugging information even when the -debuginfo RPM is installed:
{code} rpm -qa|grep couchbase couchbase-server-debuginfo-7.1.0-1817.x86_64 couchbase-server-7.1.0-1817.x86_64 {code} h3. Observed Behaviour GDB cannot find debugging information for our version of the C++ standard library {{/opt/couchbase/bin/../lib/libstdc++.so.6}}: {code:highlight=21} gdb -p $(pgrep memcached) ... (gdb) info sharedlibrary From To Syms Read Shared Object Library 0x00007f0d19a102c0 0x00007f0d19a1493e Yes /opt/couchbase/bin/../lib/libnuma.so.1 0x00007f0d19809fe0 0x00007f0d1980abfa Yes /opt/couchbase/bin/../lib/liburing.so.1 0x00007f0d195ee290 0x00007f0d19601670 Yes (*) /opt/couchbase/bin/../lib/libz.so.1 0x00007f0d193d0030 0x00007f0d193e2455 Yes /opt/couchbase/bin/../lib/libphosphor.so 0x00007f0d191c3e50 0x00007f0d191c494e Yes /lib64/libdl.so.2 0x00007f0d18fac8f0 0x00007f0d18fb7db1 Yes /lib64/libpthread.so.0 0x00007f0d18da1230 0x00007f0d18da41bc Yes /lib64/librt.so.1 0x00007f0d18b71b90 0x00007f0d18b9b3a7 Yes (*) /opt/couchbase/bin/../lib/liblz4.so.1 0x00007f0d189675c0 0x00007f0d1896c97f Yes /opt/couchbase/bin/../lib/libsnappy.so.1 0x00007f0d18495750 0x00007f0d1852abfa Yes /opt/couchbase/bin/../lib/libjemalloc.so.2 0x00007f0d1826a2f0 0x00007f0d182836c1 Yes /opt/couchbase/bin/../lib/libevent_core-2.1.so.7 0x00007f0d18048e90 0x00007f0d1805961f Yes /opt/couchbase/bin/../lib/libevent_extra-2.1.so.7 0x00007f0d17e3fd50 0x00007f0d17e400f7 Yes /opt/couchbase/bin/../lib/libevent_pthreads-2.1.so.7 0x00007f0d17c3a6f0 0x00007f0d17c3caa4 Yes /opt/couchbase/bin/../lib/libevent_openssl-2.1.so.7 0x00007f0d179c20d0 0x00007f0d17a0fb16 Yes (*) /opt/couchbase/bin/../lib/libssl.so.1.1 0x00007f0d1751d000 0x00007f0d176dbf4a Yes (*) /opt/couchbase/bin/../lib/libcrypto.so.1.1 0x00007f0d17171ef0 0x00007f0d172498ba Yes (*) /opt/couchbase/bin/../lib/libstdc++.so.6 0x00007f0d16ddc350 0x00007f0d16e47316 Yes /lib64/libm.so.6 0x00007f0d16bc1af0 0x00007f0d16bd22dd Yes (*) /opt/couchbase/bin/../lib/libgcc_s.so.1 0x00007f0d168109f0 0x00007f0d1696093f Yes /lib64/libc.so.6 0x00007f0d19c18af0 0x00007f0d19c34050 Yes /lib64/ld-linux-x86-64.so.2 (*): Shared library is missing debugging information. {code} h3. Expected behaviour Like our other libraries (e.g. /opt/couchbase/bin/../lib/libjemalloc.so.2) debugging information should be present. h3. Initial analysis The expected .debug file is missing from the RPM - for example here are all "lib" prefixed debug files in the lib directory - note no libstdc++: {code} # rpm -ql couchbase-server-debuginfo-7.1.0-1817.x86_64|grep /usr/lib/debug/opt/couchbase/lib/lib /usr/lib/debug/opt/couchbase/lib/libbreakpad_wrapper.so-7.1.0-1817.x86_64.debug /usr/lib/debug/opt/couchbase/lib/libchrome_zlib.so-7.1.0-1817.x86_64.debug /usr/lib/debug/opt/couchbase/lib/libcouchbase.so.8.0.5-7.1.0-1817.x86_64.debug /usr/lib/debug/opt/couchbase/lib/libcouchstore.so-7.1.0-1817.x86_64.debug /usr/lib/debug/opt/couchbase/lib/libcouchstore_views.so-7.1.0-1817.x86_64.debug /usr/lib/debug/opt/couchbase/lib/libcrypto.so.1.1-7.1.0-1817.x86_64.debug /usr/lib/debug/opt/couchbase/lib/libcurl.so.4.7.0-7.1.0-1817.x86_64.debug /usr/lib/debug/opt/couchbase/lib/libevent-2.1.so.7.0.0-7.1.0-1817.x86_64.debug /usr/lib/debug/opt/couchbase/lib/libevent_core-2.1.so.7.0.0-7.1.0-1817.x86_64.debug /usr/lib/debug/opt/couchbase/lib/libevent_extra-2.1.so.7.0.0-7.1.0-1817.x86_64.debug /usr/lib/debug/opt/couchbase/lib/libevent_openssl-2.1.so.7.0.0-7.1.0-1817.x86_64.debug /usr/lib/debug/opt/couchbase/lib/libevent_pthreads-2.1.so.7.0.0-7.1.0-1817.x86_64.debug /usr/lib/debug/opt/couchbase/lib/libforestdb.so-7.1.0-1817.x86_64.debug /usr/lib/debug/opt/couchbase/lib/libicui18n.so-7.1.0-1817.x86_64.debug /usr/lib/debug/opt/couchbase/lib/libicuuc.so-7.1.0-1817.x86_64.debug /usr/lib/debug/opt/couchbase/lib/libjemalloc.so.2-7.1.0-1817.x86_64.debug /usr/lib/debug/opt/couchbase/lib/libjseval.so-7.1.0-1817.x86_64.debug /usr/lib/debug/opt/couchbase/lib/liblz4.so.1.9.2-7.1.0-1817.x86_64.debug /usr/lib/debug/opt/couchbase/lib/libnuma.so.1.0.0-7.1.0-1817.x86_64.debug /usr/lib/debug/opt/couchbase/lib/libpcre.so.1.2.12-7.1.0-1817.x86_64.debug /usr/lib/debug/opt/couchbase/lib/libpcrecpp.so.0.0.2-7.1.0-1817.x86_64.debug /usr/lib/debug/opt/couchbase/lib/libpcreposix.so.0.0.7-7.1.0-1817.x86_64.debug /usr/lib/debug/opt/couchbase/lib/libphosphor.so-7.1.0-1817.x86_64.debug /usr/lib/debug/opt/couchbase/lib/libsigar.so-7.1.0-1817.x86_64.debug /usr/lib/debug/opt/couchbase/lib/libsnappy.so.1.1.8-7.1.0-1817.x86_64.debug /usr/lib/debug/opt/couchbase/lib/libssl.so.1.1-7.1.0-1817.x86_64.debug /usr/lib/debug/opt/couchbase/lib/liburing.so.1.0.6-7.1.0-1817.x86_64.debug /usr/lib/debug/opt/couchbase/lib/libuv.so.1.0.0-7.1.0-1817.x86_64.debug /usr/lib/debug/opt/couchbase/lib/libv8.so-7.1.0-1817.x86_64.debug /usr/lib/debug/opt/couchbase/lib/libv8_libbase.so-7.1.0-1817.x86_64.debug /usr/lib/debug/opt/couchbase/lib/libv8_libplatform.so-7.1.0-1817.x86_64.debug /usr/lib/debug/opt/couchbase/lib/libz.so.1.2.11-7.1.0-1817.x86_64.debug {code} (Seen while investigating |
When trying to debug a memcached issue on CB Server 7.1.0-1817 on CentOS 7, GDB is reporting that debugging information is missing even when the -debuginfo RPM is installed:
{code} rpm -qa|grep couchbase couchbase-server-debuginfo-7.1.0-1817.x86_64 couchbase-server-7.1.0-1817.x86_64 {code} h3. Observed Behaviour GDB cannot find debugging information for our version of the C++ standard library {{/opt/couchbase/bin/../lib/libstdc++.so.6}}: {code:highlight=21} gdb -p $(pgrep memcached) ... (gdb) info sharedlibrary From To Syms Read Shared Object Library 0x00007f0d19a102c0 0x00007f0d19a1493e Yes /opt/couchbase/bin/../lib/libnuma.so.1 0x00007f0d19809fe0 0x00007f0d1980abfa Yes /opt/couchbase/bin/../lib/liburing.so.1 0x00007f0d195ee290 0x00007f0d19601670 Yes (*) /opt/couchbase/bin/../lib/libz.so.1 0x00007f0d193d0030 0x00007f0d193e2455 Yes /opt/couchbase/bin/../lib/libphosphor.so 0x00007f0d191c3e50 0x00007f0d191c494e Yes /lib64/libdl.so.2 0x00007f0d18fac8f0 0x00007f0d18fb7db1 Yes /lib64/libpthread.so.0 0x00007f0d18da1230 0x00007f0d18da41bc Yes /lib64/librt.so.1 0x00007f0d18b71b90 0x00007f0d18b9b3a7 Yes (*) /opt/couchbase/bin/../lib/liblz4.so.1 0x00007f0d189675c0 0x00007f0d1896c97f Yes /opt/couchbase/bin/../lib/libsnappy.so.1 0x00007f0d18495750 0x00007f0d1852abfa Yes /opt/couchbase/bin/../lib/libjemalloc.so.2 0x00007f0d1826a2f0 0x00007f0d182836c1 Yes /opt/couchbase/bin/../lib/libevent_core-2.1.so.7 0x00007f0d18048e90 0x00007f0d1805961f Yes /opt/couchbase/bin/../lib/libevent_extra-2.1.so.7 0x00007f0d17e3fd50 0x00007f0d17e400f7 Yes /opt/couchbase/bin/../lib/libevent_pthreads-2.1.so.7 0x00007f0d17c3a6f0 0x00007f0d17c3caa4 Yes /opt/couchbase/bin/../lib/libevent_openssl-2.1.so.7 0x00007f0d179c20d0 0x00007f0d17a0fb16 Yes (*) /opt/couchbase/bin/../lib/libssl.so.1.1 0x00007f0d1751d000 0x00007f0d176dbf4a Yes (*) /opt/couchbase/bin/../lib/libcrypto.so.1.1 0x00007f0d17171ef0 0x00007f0d172498ba Yes (*) /opt/couchbase/bin/../lib/libstdc++.so.6 0x00007f0d16ddc350 0x00007f0d16e47316 Yes /lib64/libm.so.6 0x00007f0d16bc1af0 0x00007f0d16bd22dd Yes (*) /opt/couchbase/bin/../lib/libgcc_s.so.1 0x00007f0d168109f0 0x00007f0d1696093f Yes /lib64/libc.so.6 0x00007f0d19c18af0 0x00007f0d19c34050 Yes /lib64/ld-linux-x86-64.so.2 (*): Shared library is missing debugging information. {code} h3. Expected behaviour Like our other libraries (e.g. /opt/couchbase/bin/../lib/libjemalloc.so.2) debugging information should be present. h3. Initial analysis The expected .debug file is missing from the RPM - for example here are all "lib" prefixed debug files in the lib directory - note no libstdc++: {code} # rpm -ql couchbase-server-debuginfo-7.1.0-1817.x86_64|grep /usr/lib/debug/opt/couchbase/lib/lib /usr/lib/debug/opt/couchbase/lib/libbreakpad_wrapper.so-7.1.0-1817.x86_64.debug /usr/lib/debug/opt/couchbase/lib/libchrome_zlib.so-7.1.0-1817.x86_64.debug /usr/lib/debug/opt/couchbase/lib/libcouchbase.so.8.0.5-7.1.0-1817.x86_64.debug /usr/lib/debug/opt/couchbase/lib/libcouchstore.so-7.1.0-1817.x86_64.debug /usr/lib/debug/opt/couchbase/lib/libcouchstore_views.so-7.1.0-1817.x86_64.debug /usr/lib/debug/opt/couchbase/lib/libcrypto.so.1.1-7.1.0-1817.x86_64.debug /usr/lib/debug/opt/couchbase/lib/libcurl.so.4.7.0-7.1.0-1817.x86_64.debug /usr/lib/debug/opt/couchbase/lib/libevent-2.1.so.7.0.0-7.1.0-1817.x86_64.debug /usr/lib/debug/opt/couchbase/lib/libevent_core-2.1.so.7.0.0-7.1.0-1817.x86_64.debug /usr/lib/debug/opt/couchbase/lib/libevent_extra-2.1.so.7.0.0-7.1.0-1817.x86_64.debug /usr/lib/debug/opt/couchbase/lib/libevent_openssl-2.1.so.7.0.0-7.1.0-1817.x86_64.debug /usr/lib/debug/opt/couchbase/lib/libevent_pthreads-2.1.so.7.0.0-7.1.0-1817.x86_64.debug /usr/lib/debug/opt/couchbase/lib/libforestdb.so-7.1.0-1817.x86_64.debug /usr/lib/debug/opt/couchbase/lib/libicui18n.so-7.1.0-1817.x86_64.debug /usr/lib/debug/opt/couchbase/lib/libicuuc.so-7.1.0-1817.x86_64.debug /usr/lib/debug/opt/couchbase/lib/libjemalloc.so.2-7.1.0-1817.x86_64.debug /usr/lib/debug/opt/couchbase/lib/libjseval.so-7.1.0-1817.x86_64.debug /usr/lib/debug/opt/couchbase/lib/liblz4.so.1.9.2-7.1.0-1817.x86_64.debug /usr/lib/debug/opt/couchbase/lib/libnuma.so.1.0.0-7.1.0-1817.x86_64.debug /usr/lib/debug/opt/couchbase/lib/libpcre.so.1.2.12-7.1.0-1817.x86_64.debug /usr/lib/debug/opt/couchbase/lib/libpcrecpp.so.0.0.2-7.1.0-1817.x86_64.debug /usr/lib/debug/opt/couchbase/lib/libpcreposix.so.0.0.7-7.1.0-1817.x86_64.debug /usr/lib/debug/opt/couchbase/lib/libphosphor.so-7.1.0-1817.x86_64.debug /usr/lib/debug/opt/couchbase/lib/libsigar.so-7.1.0-1817.x86_64.debug /usr/lib/debug/opt/couchbase/lib/libsnappy.so.1.1.8-7.1.0-1817.x86_64.debug /usr/lib/debug/opt/couchbase/lib/libssl.so.1.1-7.1.0-1817.x86_64.debug /usr/lib/debug/opt/couchbase/lib/liburing.so.1.0.6-7.1.0-1817.x86_64.debug /usr/lib/debug/opt/couchbase/lib/libuv.so.1.0.0-7.1.0-1817.x86_64.debug /usr/lib/debug/opt/couchbase/lib/libv8.so-7.1.0-1817.x86_64.debug /usr/lib/debug/opt/couchbase/lib/libv8_libbase.so-7.1.0-1817.x86_64.debug /usr/lib/debug/opt/couchbase/lib/libv8_libplatform.so-7.1.0-1817.x86_64.debug /usr/lib/debug/opt/couchbase/lib/libz.so.1.2.11-7.1.0-1817.x86_64.debug {code} (Seen while investigating |
Affects Version/s | 7.0.0 [ 17233 ] |
Remote Link | This issue links to "Page (Couchbase, Inc. Wiki)" [ 23538 ] |
Status | Open [ 1 ] | In Progress [ 3 ] |
Sprint | Build Team 2021 Sprint 24 [ 1875 ] | Build Team 2021 Sprint 24, Build Team 2021 Sprint 25 [ 1875, 1894 ] |
Sprint | Build Team 2021 Sprint 24, Build Team 2021 Sprint 25 [ 1875, 1894 ] | Build Team 2021 Sprint 24, Build Team 2021 Sprint 25, Build Team 2022 Sprint 1 [ 1875, 1894, 1955 ] |
Sprint | Build Team 2021 Sprint 24, Build Team 2021 Sprint 25, Build Team 2022 Sprint 1 [ 1875, 1894, 1955 ] | Build Team 2021 Sprint 24, Build Team 2021 Sprint 25, Build Team 2022 Sprint 1, Build Team 2022 Sprint 2 [ 1875, 1894, 1955, 1956 ] |
Remote Link | This issue links to "Page (Couchbase, Inc. Wiki)" [ 23622 ] |
Link | This issue blocks MB-48997 [ MB-48997 ] |
Fix Version/s | 6.6.5 [ 17614 ] |
Fix Version/s | CheshireCat.Next [ 16908 ] | |
Fix Version/s | 6.6.5 [ 17614 ] |
Assignee | Chris Hillery [ ceej ] | Dave Rigby [ drigby ] |
Resolution | Fixed [ 1 ] | |
Status | In Progress [ 3 ] | Resolved [ 5 ] |
Worklog Id | 15861 [ 15861 ] | |
Remaining Estimate | 0h [ 0 ] | |
Time Spent | 4h [ 14400 ] |
Fix Version/s | CheshireCat.Next [ 16908 ] |
Labels | candidate-for-7.0.4 |
Labels | candidate-for-7.0.4 | candidate-for-7.0.4 request-dev-verify |
Labels | candidate-for-7.0.4 request-dev-verify | approved-for-7.0.3 candidate-for-7.0.4 request-dev-verify |
Labels | approved-for-7.0.3 candidate-for-7.0.4 request-dev-verify | approved-for-7.0.4 candidate-for-7.0.4 request-dev-verify |
Fix Version/s | 7.0.4 [ 18322 ] |
VERIFICATION STEPS |
Confirmed that debug RPM now includes debug symbols for libstdc++:
{code} # rpm -qpl couchbase-server-enterprise-debuginfo-7.1.0-2535-centos7.x86_64.rpm |grep libstdc\+\+ /usr/lib/debug/opt/couchbase/lib/libstdc++.so.6.0.28-7.1.0-2535.x86_64.debug /usr/lib/debug/opt/couchbase/lib/python/interp/lib/libstdc++.so.6.0.29-7.1.0-2535.x86_64.debug {code} |
|
Status | Resolved [ 5 ] | Closed [ 6 ] |
So libstdc++.so.6.0.29 that we install in /opt/couchbase/lib is not stripped, and we tweak the gcc build process to ensure it still has debug information in it: https://github.com/couchbase/build-infra/blob/master/docker/compile/gcc/centos-7.4/Dockerfile#L23-L29
I do see the following output from rpmbuild:
Does that mean anything to you, Dave Rigby ?