diff options
author | Marko Mäkelä <marko.makela@mariadb.com> | 2023-02-10 13:43:53 +0200 |
---|---|---|
committer | Marko Mäkelä <marko.makela@mariadb.com> | 2023-02-10 13:43:53 +0200 |
commit | dbab3e8d90e82aead7f3b504784a1334fda69b1d (patch) | |
tree | aaab820a05398735303553f2cc1e479087da70ba /mysys | |
parent | 29cd17e8d94641f604131af7b4949e29dd34ce2b (diff) | |
parent | 6aec87544c675751141100d6efe3a2d943cb528f (diff) | |
download | mariadb-git-dbab3e8d90e82aead7f3b504784a1334fda69b1d.tar.gz |
Merge 10.6 into 10.8
Diffstat (limited to 'mysys')
-rw-r--r-- | mysys/charset.c | 2 | ||||
-rw-r--r-- | mysys/my_largepage.c | 2 | ||||
-rw-r--r-- | mysys/stacktrace.c | 8 |
3 files changed, 7 insertions, 5 deletions
diff --git a/mysys/charset.c b/mysys/charset.c index da6180dccba..560c713a361 100644 --- a/mysys/charset.c +++ b/mysys/charset.c @@ -393,6 +393,8 @@ static int add_collation(struct charset_info_st *cs) &my_charset_utf8mb4_unicode_ci, cs); newcs->m_ctype= my_charset_utf8mb4_unicode_ci.m_ctype; + if (init_state_maps(newcs)) + return MY_XML_ERROR; newcs->state|= MY_CS_AVAILABLE | MY_CS_LOADED; #endif } diff --git a/mysys/my_largepage.c b/mysys/my_largepage.c index 9cc1e19772b..b5193a9cd8e 100644 --- a/mysys/my_largepage.c +++ b/mysys/my_largepage.c @@ -376,7 +376,7 @@ uchar *my_large_malloc(size_t *size, myf my_flags) ptr= NULL; if (my_flags & MY_WME) { - if (large_page_size) + if (large_page_size && errno == ENOMEM) { my_printf_error(EE_OUTOFMEMORY, "Couldn't allocate %zu bytes (Large/HugeTLB memory " diff --git a/mysys/stacktrace.c b/mysys/stacktrace.c index 844d8a0b28f..f203bba4d8d 100644 --- a/mysys/stacktrace.c +++ b/mysys/stacktrace.c @@ -34,6 +34,9 @@ #include <execinfo.h> #endif +#ifdef HAVE_gcov +#include <gcov.h> +#endif /** Default handler for printing stacktrace */ @@ -409,9 +412,6 @@ end: /* Produce a core for the thread */ void my_write_core(int sig) { -#ifdef HAVE_gcov - extern void __gcov_flush(void); -#endif signal(sig, SIG_DFL); #ifdef HAVE_gcov /* @@ -419,7 +419,7 @@ void my_write_core(int sig) information from this process, causing gcov output to be incomplete. So we force the writing of coverage information here before terminating. */ - __gcov_flush(); + __gcov_dump(); #endif pthread_kill(pthread_self(), sig); #if defined(P_MYID) && !defined(SCO) |