diff options
author | Marius Bakke <mbakke@fastmail.com> | 2018-08-07 00:51:48 +0200 |
---|---|---|
committer | Marius Bakke <mbakke@fastmail.com> | 2018-08-07 00:51:48 +0200 |
commit | 3418e43bf55033c15b997a46a56c9efd69c0624e (patch) | |
tree | ebbe5af23c747952de35d2b15dc039028c27bea0 /gnu/packages/patches/mariadb-client-test-32bit.patch | |
parent | 6af7c2b178b4d9bf16aced8bbfc1518643425f13 (diff) | |
download | guix-3418e43bf55033c15b997a46a56c9efd69c0624e.tar guix-3418e43bf55033c15b997a46a56c9efd69c0624e.tar.gz |
gnu: mariadb: Adjust to test failures on Hydra.
* gnu/packages/patches/mariadb-client-test-32bit.patch: New file.
* gnu/local.mk (dist_patch_DATA): Register it.
* gnu/packages/databases.scm (mariadb)[source](patches): Add it.
[arguments]: Increase retry count and test timeout. Disable test
main.myisampack.
Diffstat (limited to 'gnu/packages/patches/mariadb-client-test-32bit.patch')
-rw-r--r-- | gnu/packages/patches/mariadb-client-test-32bit.patch | 37 |
1 files changed, 37 insertions, 0 deletions
diff --git a/gnu/packages/patches/mariadb-client-test-32bit.patch b/gnu/packages/patches/mariadb-client-test-32bit.patch new file mode 100644 index 0000000000..02017e324d --- /dev/null +++ b/gnu/packages/patches/mariadb-client-test-32bit.patch @@ -0,0 +1,37 @@ +From 93efa48a7b972fc463406603574a4d508eefe792 Mon Sep 17 00:00:00 2001 +From: Sergei Golubchik <serg@mariadb.org> +Date: Sun, 13 May 2018 18:50:21 +0200 +Subject: [PATCH] fix failing main.mysql_client_test test on 32bit + +in `ulonglong=ulong*uint` multiplication +is done in ulong, wrapping around on 32bit. + +This became visible after C/C changed the +default charset to utf8, thus changing +mbmaxlem from 1 to 3. +--- + tests/mysql_client_fw.c | 4 ++-- + 1 file changed, 2 insertions(+), 2 deletions(-) + +diff --git a/tests/mysql_client_fw.c b/tests/mysql_client_fw.c +index f69eb28a2871..4d036887629a 100644 +--- a/tests/mysql_client_fw.c ++++ b/tests/mysql_client_fw.c +@@ -768,7 +768,7 @@ static void do_verify_prepare_field(MYSQL_RES *result, + { + MYSQL_FIELD *field; + CHARSET_INFO *cs; +- ulonglong expected_field_length; ++ ulonglong expected_field_length= length; + + if (!(field= mysql_fetch_field_direct(result, no))) + { +@@ -777,7 +777,7 @@ static void do_verify_prepare_field(MYSQL_RES *result, + } + cs= get_charset(field->charsetnr, 0); + DIE_UNLESS(cs); +- if ((expected_field_length= length * cs->mbmaxlen) > UINT_MAX32) ++ if ((expected_field_length*= cs->mbmaxlen) > UINT_MAX32) + expected_field_length= UINT_MAX32; + if (!opt_silent) + { |