You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@kudu.apache.org by al...@apache.org on 2025/07/11 22:25:48 UTC
(kudu) branch master updated: [glog] Fix minidump-test for cold symbols.
This is an automated email from the ASF dual-hosted git repository.
alexey pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/kudu.git
The following commit(s) were added to refs/heads/master by this push:
new 804d207eb [glog] Fix minidump-test for cold symbols.
804d207eb is described below
commit 804d207eb831d702d30cd27dcc1fc2d96b680917
Author: Zoltan Martonka <zm...@gmail.com>
AuthorDate: Fri May 10 14:02:22 2024 +0000
[glog] Fix minidump-test for cold symbols.
glog 0.6.0 cannot reliably resolve cold symbols. This was only fixed in
recent versions:
https://github.com/google/glog/issues/869
This might cause ASSERT_DEATH checks to fail in minidump-test. The long-
term solution would be to update to a newer version, but 0.7.1 has
a serious issue: stacktrace print crashes for long functions.
Since leaving cold symbols this way is not really an issue, backporting
the fixes just does not seem worth the time.
One affected platform is RHEL 9.3 with default g++.
Change-Id: I18d88790d09e9763223a767617794332859cbfad
Reviewed-on: http://gerrit.cloudera.org:8080/21385
Reviewed-by: Zoltan Chovan <zc...@cloudera.com>
Tested-by: Alexey Serbin <al...@apache.org>
Reviewed-by: Alexey Serbin <al...@apache.org>
---
src/kudu/util/minidump-test.cc | 13 ++++++++++---
1 file changed, 10 insertions(+), 3 deletions(-)
diff --git a/src/kudu/util/minidump-test.cc b/src/kudu/util/minidump-test.cc
index d51b3675b..3b1d5f9a9 100644
--- a/src/kudu/util/minidump-test.cc
+++ b/src/kudu/util/minidump-test.cc
@@ -71,7 +71,14 @@ TEST_F(MinidumpDeathTest, TestRegisterAndDelete) {
abort();
},
// Ensure that a stack trace is produced.
- "kudu::MinidumpDeathTest_TestRegisterAndDelete_Test::TestBody()");
+ // Currently, cold copies are not demangled correctly in glog 0.6.0, there is
+ // an open issue:
+ // https://github.com/google/glog/issues/869
+ // So currently we have to match for both the demangled and raw symbol.
+ // Current regex does not support the "|" operator.
+ // There is a Jira (KUDU-3572) for updating to 0.7.0 and changing string to:
+ // "kudu::MinidumpDeathTest_TestRegisterAndDelete_Test::TestBody()"
+ "kudu\\S*MinidumpDeathTest_TestRegisterAndDelete_Test\\S*TestBody");
// Ensure that a minidump is produced.
string minidump_dir = minidump_handler.minidump_dir();
@@ -97,7 +104,7 @@ TEST_F(MinidumpDeathTest, TestCheckStackTraceAndMinidump) {
CHECK_EQ(1, 0);
},
// Ensure that a stack trace is produced.
- "kudu::MinidumpDeathTest_TestCheckStackTraceAndMinidump_Test::TestBody()");
+ "kudu\\S*MinidumpDeathTest_TestCheckStackTraceAndMinidump_Test\\S*TestBody");
// Ensure that a minidump is produced.
string minidump_dir = minidump_handler.minidump_dir();
@@ -135,7 +142,7 @@ TEST_P(MinidumpSignalDeathTest, TestHaveMinidumpAndStackTrace) {
kill(getpid(), signal);
},
// Ensure that a stack trace is produced.
- "kudu::MinidumpSignalDeathTest_TestHaveMinidumpAndStackTrace_Test::TestBody()");
+ "kudu\\S*MinidumpSignalDeathTest_TestHaveMinidumpAndStackTrace_Test\\S*TestBody");
// Ensure that a mindump is produced, unless it's SIGTERM, which does not
// create a minidump.