Details
-
Bug
-
Resolution: Fixed
-
Major
-
Elixir
-
None
-
Untriaged
-
1
-
Unknown
Description
As seen during CV for an unrelated patch: http://cv.jenkins.couchbase.com/job/kv_engine.ASan-UBSan/job/master/32103/UndefinedBehaviourSanitizer/ (ASan + UBSan, DebugOptimized build):
...
|
[ RUN ] KVStoreParam/KVStoreParamTest.CompactAndScan/magma
|
runtime error: signed integer overflow: 7310594991874794752 - -4702111234474983746 cannot be represented in type 'long'
|
|
#0 0xa7e5e4 in std::common_type >, std::chrono::duration > >::type std::chrono::operator-, long, std::ratio<1l, 1l> >(std::chrono::duration > const&, std::chrono::duration > const&) /opt/gcc-10.2.0/lib/gcc/x86_64-pc-linux-gnu/10.2.0/../../../../include/c++/10.2.0/chrono:564:34
|
#1 0x380367f in magma::LSMTreeStats::operator+=(magma::LSMTreeStats const&) /home/couchbase/jenkins/workspace/kv_engine.ASan-UBSan_master/magma/magma/db_stats.cc:771:48
|
#2 0x3ad953e in magma::KVStore::GetKVStoreStats() /home/couchbase/jenkins/workspace/kv_engine.ASan-UBSan_master/magma/magma/kvstore/stats.cc:48:14
|
#3 0x3804242 in magma::Magma::GetKVStoreStats(unsigned short) /home/couchbase/jenkins/workspace/kv_engine.ASan-UBSan_master/magma/magma/db_stats.cc:421:24
|
#4 0x89d4f7 in MagmaMemoryTrackingProxy::GetKVStoreStats(unsigned short) /home/couchbase/jenkins/workspace/kv_engine.ASan-UBSan_master/kv_engine/engines/ep/src/kvstore/magma-kvstore/magma-memory-tracking-proxy.cc:294:19
|
#5 0x89d0fd in MagmaKVStore::getDbFileInfo(Vbid) /home/couchbase/jenkins/workspace/kv_engine.ASan-UBSan_master/kv_engine/engines/ep/src/kvstore/magma-kvstore/magma-kvstore.cc:3540:37
|
#6 0x88fafc in MagmaKVStore::compactDBInternal(std::unique_lock&, std::shared_ptr)::$_17::operator()(FileInfo&) const /home/couchbase/jenkins/workspace/kv_engine.ASan-UBSan_master/kv_engine/engines/ep/src/kvstore/magma-kvstore/magma-kvstore.cc:2528:23
|
#7 0x88bf4e in MagmaKVStore::compactDBInternal(std::unique_lock&, std::shared_ptr) /home/couchbase/jenkins/workspace/kv_engine.ASan-UBSan_master/kv_engine/engines/ep/src/kvstore/magma-kvstore/magma-kvstore.cc:2531:5
|
#8 0x88b8cb in MagmaKVStore::compactDB(std::unique_lock&, std::shared_ptr) /home/couchbase/jenkins/workspace/kv_engine.ASan-UBSan_master/kv_engine/engines/ep/src/kvstore/magma-kvstore/magma-kvstore.cc:2499:12
|
#9 0x3006873 in KVStoreParamTest_CompactAndScan_Test::TestBody()::$_12::operator()() const /home/couchbase/jenkins/workspace/kv_engine.ASan-UBSan_master/build/../kv_engine/engines/ep/tests/module_tests/kvstore_test.cc:1062:13
|
#10 0x7f10e17e12ef in execute_native_thread_routine /tmp/deploy/objdir/../gcc-10.2.0/libstdc++-v3/src/c++11/thread.cc:80:18
|
#11 0x7f10e2b756da in start_thread (/lib/x86_64-linux-gnu/libpthread.so.0+0x76da)
|
#12 0x7f10e122361e in clone /build/glibc-CVJwZb/glibc-2.27/misc/../sysdeps/unix/sysv/linux/x86_64/clone.S:95
|
There's also a second instance during compaction:
runtime error: signed integer overflow: 7310594991874794752 - -4702111234474983746 cannot be represented in type 'long'
|
|
#0 0xa7e5e4 in std::common_type >, std::chrono::duration > >::type std::chrono::operator-, long, std::ratio<1l, 1l> >(std::chrono::duration > const&, std::chrono::duration > const&) /opt/gcc-10.2.0/lib/gcc/x86_64-pc-linux-gnu/10.2.0/../../../../include/c++/10.2.0/chrono:564:34
|
#1 0x380367f in magma::LSMTreeStats::operator+=(magma::LSMTreeStats const&) /home/couchbase/jenkins/workspace/kv_engine.ASan-UBSan_master/magma/magma/db_stats.cc:771:48
|
#2 0x3ad953e in magma::KVStore::GetKVStoreStats() /home/couchbase/jenkins/workspace/kv_engine.ASan-UBSan_master/magma/magma/kvstore/stats.cc:48:14
|
#3 0x3804242 in magma::Magma::GetKVStoreStats(unsigned short) /home/couchbase/jenkins/workspace/kv_engine.ASan-UBSan_master/magma/magma/db_stats.cc:421:24
|
#4 0x89d4f7 in MagmaMemoryTrackingProxy::GetKVStoreStats(unsigned short) /home/couchbase/jenkins/workspace/kv_engine.ASan-UBSan_master/kv_engine/engines/ep/src/kvstore/magma-kvstore/magma-memory-tracking-proxy.cc:294:19
|
#5 0x89d0fd in MagmaKVStore::getDbFileInfo(Vbid) /home/couchbase/jenkins/workspace/kv_engine.ASan-UBSan_master/kv_engine/engines/ep/src/kvstore/magma-kvstore/magma-kvstore.cc:3540:37
|
#6 0x88fafc in MagmaKVStore::compactDBInternal(std::unique_lock&, std::shared_ptr)::$_17::operator()(FileInfo&) const /home/couchbase/jenkins/workspace/kv_engine.ASan-UBSan_master/kv_engine/engines/ep/src/kvstore/magma-kvstore/magma-kvstore.cc:2528:23
|
#7 0x88bf4e in MagmaKVStore::compactDBInternal(std::unique_lock&, std::shared_ptr) /home/couchbase/jenkins/workspace/kv_engine.ASan-UBSan_master/kv_engine/engines/ep/src/kvstore/magma-kvstore/magma-kvstore.cc:2531:5
|
#8 0x88b8cb in MagmaKVStore::compactDB(std::unique_lock&, std::shared_ptr) /home/couchbase/jenkins/workspace/kv_engine.ASan-UBSan_master/kv_engine/engines/ep/src/kvstore/magma-kvstore/magma-kvstore.cc:2499:12
|
#9 0x2fd1f96 in KVStoreParamTestSkipRocks_ListPersistedVBucketsPurgeSeqnoAfterRestart_Test::TestBody() /home/couchbase/jenkins/workspace/kv_engine.ASan-UBSan_master/build/../kv_engine/engines/ep/tests/module_tests/kvstore_test.cc:800:13
|
#10 0x3648ca9 in void testing::internal::HandleSehExceptionsInMethodIfSupported(testing::Test*, void (testing::Test::*)(), char const*) /home/couchbase/jenkins/workspace/cbdeps-platform-build-old/deps/packages/build/googletest/googletest-prefix/src/googletest/googletest/src/gtest.cc:2607
|
#11 0x3648ca9 in void testing::internal::HandleExceptionsInMethodIfSupported(testing::Test*, void (testing::Test::*)(), char const*) /home/couchbase/jenkins/workspace/cbdeps-platform-build-old/deps/packages/build/googletest/googletest-prefix/src/googletest/googletest/src/gtest.cc:2643
|
#12 0x363d91f in testing::Test::Run() (.part.647) /home/couchbase/jenkins/workspace/cbdeps-platform-build-old/deps/packages/build/googletest/googletest-prefix/src/googletest/googletest/src/gtest.cc:2682
|
#13 0x363db51 in testing::Test::Run() /home/couchbase/jenkins/workspace/cbdeps-platform-build-old/deps/packages/build/googletest/googletest-prefix/src/googletest/googletest/src/gtest.cc:2673
|
#14 0x363db51 in testing::TestInfo::Run() (.part.648) /home/couchbase/jenkins/workspace/cbdeps-platform-build-old/deps/packages/build/googletest/googletest-prefix/src/googletest/googletest/src/gtest.cc:2861
|
#15 0x363e21e in testing::TestInfo::Run() /home/couchbase/jenkins/workspace/cbdeps-platform-build-old/deps/packages/build/googletest/googletest-prefix/src/googletest/googletest/src/gtest.cc:2834
|
#16 0x363e21e in testing::TestSuite::Run() (.part.649) /home/couchbase/jenkins/workspace/cbdeps-platform-build-old/deps/packages/build/googletest/googletest-prefix/src/googletest/googletest/src/gtest.cc:3015
|
#17 0x363fa24 in testing::TestSuite::Run() /home/couchbase/jenkins/workspace/cbdeps-platform-build-old/deps/packages/build/googletest/googletest-prefix/src/googletest/googletest/src/gtest.cc:3041
|
#18 0x363fa24 in testing::internal::UnitTestImpl::RunAllTests() /home/couchbase/jenkins/workspace/cbdeps-platform-build-old/deps/packages/build/googletest/googletest-prefix/src/googletest/googletest/src/gtest.cc:5855
|
#19 0x3649159 in bool testing::internal::HandleSehExceptionsInMethodIfSupported(testing::internal::UnitTestImpl*, bool (testing::internal::UnitTestImpl::*)(), char const*) /home/couchbase/jenkins/workspace/cbdeps-platform-build-old/deps/packages/build/googletest/googletest-prefix/src/googletest/googletest/src/gtest.cc:2607
|
#20 0x3649159 in bool testing::internal::HandleExceptionsInMethodIfSupported(testing::internal::UnitTestImpl*, bool (testing::internal::UnitTestImpl::*)(), char const*) /home/couchbase/jenkins/workspace/cbdeps-platform-build-old/deps/packages/build/googletest/googletest-prefix/src/googletest/googletest/src/gtest.cc:2643
|
#21 0x363dc51 in testing::UnitTest::Run() /home/couchbase/jenkins/workspace/cbdeps-platform-build-old/deps/packages/build/googletest/googletest-prefix/src/googletest/googletest/src/gtest.cc:5438
|
#22 0x2616ba4 in main /home/couchbase/jenkins/workspace/kv_engine.ASan-UBSan_master/build/../kv_engine/engines/ep/tests/module_tests/ep_unit_tests_main.cc:170:16
|
#23 0x7f37a44d1c86 in __libc_start_main /build/glibc-CVJwZb/glibc-2.27/csu/../csu/libc-start.c:310
|
#24 0x5e66b9 in _start (/home/couchbase/jenkins/workspace/kv_engine.ASan-UBSan_master/build/kv_engine/ep-engine_ep_unit_tests+0x5e66b9)
|
Steps to Reproduce
Either run above CV job, or ctest -R ep-engine_ep_unit_tests.KVStoreParam/KVStoreParamTest after enabling UndefinedSanitizer.
Attachments
Issue Links
- is duplicated by
-
MB-55652 UBSan: signed integer overflow in LSMTreeStats::Merge
-
- Closed
-