From 53f7db282dc982e48c0a944e9c3f68ebc3d26db3 Mon Sep 17 00:00:00 2001 From: unknown Date: Mon, 3 Dec 2007 10:01:56 +0100 Subject: [PATCH] Bug#31177: Server variables can't be set to their current values additional fixes for 64-bit mysql-test/t/variables.test: replace 32-bit and 64-bit values mysys/my_getopt.c: 'mod' no longer used. on 64-bit, limit to (signed) (LONG)LONG_MAX to prevent badness in classes using longlong. --- mysql-test/t/variables.test | 2 +- mysys/my_getopt.c | 4 +++- 2 files changed, 4 insertions(+), 2 deletions(-) diff --git a/mysql-test/t/variables.test b/mysql-test/t/variables.test index be7e7c2b413..a30ba758c27 100644 --- a/mysql-test/t/variables.test +++ b/mysql-test/t/variables.test @@ -126,7 +126,7 @@ set GLOBAL query_cache_size=100000; set GLOBAL myisam_max_sort_file_size=2000000; show global variables like 'myisam_max_sort_file_size'; set GLOBAL myisam_max_sort_file_size=default; ---replace_result 2147482624 FILE_SIZE 2146435072 FILE_SIZE +--replace_result 9223372036853727232 FILE_SIZE 2146435072 FILE_SIZE show variables like 'myisam_max_sort_file_size'; set global net_retry_count=10, session net_retry_count=10; diff --git a/mysys/my_getopt.c b/mysys/my_getopt.c index f41e8166876..9174d91dce7 100644 --- a/mysys/my_getopt.c +++ b/mysys/my_getopt.c @@ -799,7 +799,7 @@ ulonglong getopt_ull_limit_value(ulonglong num, const struct my_option *optp, bool *fix) { bool adjusted= FALSE; - ulonglong old= num, mod; + ulonglong old= num; char buf1[255], buf2[255]; if ((ulonglong) num > (ulonglong) optp->max_value && @@ -824,6 +824,8 @@ ulonglong getopt_ull_limit_value(ulonglong num, const struct my_option *optp, num= ((ulonglong) ULONG_MAX); adjusted= TRUE; } +#else + num= min(num, LONG_MAX); #endif break; default: