diff options
3 files changed, 50 insertions, 2 deletions
diff --git a/meta-oe/conf/include/ptest-packagelists-meta-oe.inc b/meta-oe/conf/include/ptest-packagelists-meta-oe.inc index 25db9fe5cc..ea336f1058 100644 --- a/meta-oe/conf/include/ptest-packagelists-meta-oe.inc +++ b/meta-oe/conf/include/ptest-packagelists-meta-oe.inc | |||
| @@ -73,7 +73,7 @@ PTESTS_SLOW_META_OE = "\ | |||
| 73 | " | 73 | " |
| 74 | PTESTS_SLOW_META_OE:append:x86 = " kernel-selftest" | 74 | PTESTS_SLOW_META_OE:append:x86 = " kernel-selftest" |
| 75 | PTESTS_SLOW_META_OE:append:x86-64 = " kernel-selftest" | 75 | PTESTS_SLOW_META_OE:append:x86-64 = " kernel-selftest" |
| 76 | PTESTS_SLOW_META_OE:remove:libc-musl = "kernel-selftest mariadb" | 76 | PTESTS_SLOW_META_OE:remove:libc-musl = "kernel-selftest" |
| 77 | 77 | ||
| 78 | PTESTS_PROBLEMS_META_OE = "\ | 78 | PTESTS_PROBLEMS_META_OE = "\ |
| 79 | keyutils \ | 79 | keyutils \ |
| @@ -82,4 +82,4 @@ PTESTS_PROBLEMS_META_OE = "\ | |||
| 82 | psqlodbc \ | 82 | psqlodbc \ |
| 83 | rsyslog \ | 83 | rsyslog \ |
| 84 | " | 84 | " |
| 85 | PTESTS_PROBLEMS_META_OE:append:libc-musl = " jemalloc minicoredumper oprofile mariadb" | 85 | PTESTS_PROBLEMS_META_OE:append:libc-musl = " jemalloc minicoredumper oprofile" |
diff --git a/meta-oe/recipes-dbs/mysql/mariadb.inc b/meta-oe/recipes-dbs/mysql/mariadb.inc index a757a10bfe..82479c248f 100644 --- a/meta-oe/recipes-dbs/mysql/mariadb.inc +++ b/meta-oe/recipes-dbs/mysql/mariadb.inc | |||
| @@ -27,6 +27,7 @@ SRC_URI = "https://archive.mariadb.org/${BP}/source/${BP}.tar.gz \ | |||
| 27 | file://0001-Remove-x86-specific-loop-in-my_convert.patch \ | 27 | file://0001-Remove-x86-specific-loop-in-my_convert.patch \ |
| 28 | file://0001-support-reproducible-builds.patch \ | 28 | file://0001-support-reproducible-builds.patch \ |
| 29 | file://0001-storage-mroonga-CMakeLists.txt-fix-reproducible-buil.patch \ | 29 | file://0001-storage-mroonga-CMakeLists.txt-fix-reproducible-buil.patch \ |
| 30 | file://0001-MDEV-38029-my_tzinfo-t-fails-for-certain-TZ-values-o.patch \ | ||
| 30 | " | 31 | " |
| 31 | SRC_URI[sha256sum] = "52fa4dca2c5f80afc1667d523a27c06176d98532298a6b0c31ed73505f49e15c" | 32 | SRC_URI[sha256sum] = "52fa4dca2c5f80afc1667d523a27c06176d98532298a6b0c31ed73505f49e15c" |
| 32 | 33 | ||
diff --git a/meta-oe/recipes-dbs/mysql/mariadb/0001-MDEV-38029-my_tzinfo-t-fails-for-certain-TZ-values-o.patch b/meta-oe/recipes-dbs/mysql/mariadb/0001-MDEV-38029-my_tzinfo-t-fails-for-certain-TZ-values-o.patch new file mode 100644 index 0000000000..f1e07e304a --- /dev/null +++ b/meta-oe/recipes-dbs/mysql/mariadb/0001-MDEV-38029-my_tzinfo-t-fails-for-certain-TZ-values-o.patch | |||
| @@ -0,0 +1,47 @@ | |||
| 1 | From 61bc216ff9e1d0a8a7fafce57ba916018cd6ac6d Mon Sep 17 00:00:00 2001 | ||
| 2 | From: Vladislav Vaintroub <vvaintroub@gmail.com> | ||
| 3 | Date: Wed, 19 Nov 2025 13:01:56 +0100 | ||
| 4 | Subject: [PATCH] MDEV-38029 my_tzinfo-t fails for certain TZ values on musl | ||
| 5 | |||
| 6 | From: Vladislav Vaintroub <vvaintroub@gmail.com> | ||
| 7 | |||
| 8 | The test fails for TZ values such as `PST8PDT` (present but outdated in | ||
| 9 | tzdb) and custom forms like `GST-1GDT`. On musl, these values do not | ||
| 10 | trigger the expected DST transitions, leading to incorrect DST offsets | ||
| 11 | or abbreviations. | ||
| 12 | |||
| 13 | This appears to be a musl libc bug; the same TZ values behave correctly | ||
| 14 | elsewhere, including Windows. We work around it by skipping the | ||
| 15 | affected tests when musl is detected. | ||
| 16 | |||
| 17 | Upstream-Status: Submitted [https://github.com/MariaDB/server/pull/4452] | ||
| 18 | Signed-off-by: Gyorgy Sarvari <skandigraun@gmail.com> | ||
| 19 | --- | ||
| 20 | unittest/mysys/my_tzinfo-t.c | 14 ++++++++++++++ | ||
| 21 | 1 file changed, 14 insertions(+) | ||
| 22 | |||
| 23 | diff --git a/unittest/mysys/my_tzinfo-t.c b/unittest/mysys/my_tzinfo-t.c | ||
| 24 | index b38ebd37..585d52f8 100644 | ||
| 25 | --- a/unittest/mysys/my_tzinfo-t.c | ||
| 26 | +++ b/unittest/mysys/my_tzinfo-t.c | ||
| 27 | @@ -112,6 +112,20 @@ void test_timezone(const char *tz_env, const char **expected_tznames, | ||
| 28 | } | ||
| 29 | } | ||
| 30 | ok(found, "%s: timezone_name = %s", tz_env, timezone_name); | ||
| 31 | + | ||
| 32 | +#if defined __linux__ && !defined __GLIBC__ && !defined __UCLIBC__ | ||
| 33 | + /* | ||
| 34 | + MUSL incorrectly calculates UTC offsets and abbreviations | ||
| 35 | + for certain values of TZ (DST related). See MDEV-38029 | ||
| 36 | + Skip tests in this case. | ||
| 37 | + */ | ||
| 38 | + if (!strcmp(tz_env, "PST8PDT") || !strcmp(tz_env, "GST-1GDT")) | ||
| 39 | + { | ||
| 40 | + skip(6, "musl UTC offset/abbreviation bug, tzname %s, see MDEV-38029", tz_env); | ||
| 41 | + return; | ||
| 42 | + } | ||
| 43 | +#endif | ||
| 44 | + | ||
| 45 | my_tzinfo(SUMMER_TIMESTAMP, &tz); | ||
| 46 | ok(summer_gmt_off == tz.seconds_offset, "%s: Summer GMT offset %ld", tz_env, tz.seconds_offset); | ||
| 47 | check_utc_offset(SUMMER_TIMESTAMP,tz.seconds_offset, tz_env); | ||
