diff options
author | taca <taca@pkgsrc.org> | 2011-03-08 14:06:43 +0000 |
---|---|---|
committer | taca <taca@pkgsrc.org> | 2011-03-08 14:06:43 +0000 |
commit | 4db06b3de5b0ea822978c2db025b49ea89a348fa (patch) | |
tree | 36644dcb1ce1ba1a341cfb186c6569028330568d /databases | |
parent | 5b2fd799959cf45414868b6aa075c7ac74adb55e (diff) | |
download | pkgsrc-4db06b3de5b0ea822978c2db025b49ea89a348fa.tar.gz |
Update MySQL package to 5.1.56.
Functionality added or changed:
* mysqldump --xml now displays comments from column definitions. (Bug #13618)
Bugs fixed:
* InnoDB Storage Engine: InnoDB returned values for ¡Èrows examined¡É
in the query plan that were higher than expected. NULL values were
treated in an inconsistent way. The inaccurate statistics could
trigger ¡Èfalse positives¡É in combination with the MAX_JOIN_SIZE
setting, because the queries did not really examine as many rows as
reported. (Bug #30423)
* Partitioning: Trying to use the same column more than once in the
partitioning key when partitioning a table by KEY caused mysqld to
crash. Such duplication of key columns is now expressly disallowed,
and fails with an appropriate error. (Bug #53354, Bug #57924)
* Replication: When using the statement-based logging format, INSERT
ON DUPLICATE KEY UPDATE and INSERT IGNORE statements affecting
transactional tables that did not fail were not written to the
binary log if they did not insert any rows. (With statement-based
logging, all successful statements should be logged, whether they do
or do not cause any rows to be changed.) (Bug #59338)
* Replication: Formerly, STOP SLAVE stopped the slave I/O thread first
and then stopped the slave SQL thread; thus, it was possible for the
I/O thread to stop after replicating only part of a transaction
which the SQL thread was executing, in wich case¡½if the transaction
could not be rolled back safely¡½the SQL thread could hang.
Now, STOP SLAVE stops the slave SQL thread first and then stops the
I/O thread; this guarantees that the I/O thread can fetch any
remaining events in the transaction that the SQL thread is
executing, so that the SQL thread can finish the transaction if it
cannot be rolled back safely. (Bug #58546)
* A query of the following form returned an incorrect result, where
the values for col_name in the result set were entirely replaced
with NULL values:
SELECT DISTINCT col_name ... ORDER BY col_name DESC;
(Bug #59308, Bug #11766241)
* DELETE or UPDATE statements could fail if they used DATE or DATETIME
values with a year, month, or day part of zero. (Bug #59173)
* The ESCAPE clause for the LIKE operator allows only expressions that
evaluate to a constant at execution time, but aggregrate functions
were not being rejected. (Bug #59149)
* Memory leaks detected by Valgrind, some of which could cause
incorrect query results, were corrected. (Bug #59110, Bug #11766075)
mysqlslap failed to check for a NULL return from mysql_store_result()
and crashed trying to process the result set. (Bug #59109)
* In debug builds, SUBSTRING_INDEX(FORMAT(...), FORMAT(...)) could
cause a server crash. (Bug #58371)
* When mysqldadmin was run with the --sleep and --count options, it
went into an infinite loop executing the specified command. (Bug
#58221)
* Some string manipulating SQL functions use a shared string object
intended to contain an immutable empty string. This object was used
by the SQL function SUBSTRING_INDEX() to return an empty string when
one argument was of the wrong datatype. If the string object was
then modified by the SQL function INSERT(), undefined behavior
ensued. (Bug #58165, Bug #11765225)
* Parsing nested regular expressions could lead to recursion resulting
in a stack overflow crash. (Bug #58026, Bug #11765099)
* The mysql client went into an infinite loop if the standard input
was a directory. (Bug #57450)
* The expression const1 BETWEEN const2 AND field was optimized
incorrectly and produced incorrect results. (Bug #57030, Bug
#11764215)
* Some RPM installation scripts used a hardcoded value for the data
directory, which could result in a failed installation for users who
have a nonstandard data directory location. The same was true for
other configuration values such as the PID file name. (Bug #56581,
Bug #11763817)
* On FreeBSD and OpenBSD, the server incorrectly checked the range of
the system date, causing legal values to be rejected. (Bug #55755,
Bug #11763089)
* When using ExtractValue() or UpdateXML(), if the XML to be read
contained an incomplete XML comment, MySQL read beyond the end of
the XML string when processing, leading to a crash of the
server. (Bug #44332)
Diffstat (limited to 'databases')
-rw-r--r-- | databases/mysql51-client/Makefile.common | 4 | ||||
-rw-r--r-- | databases/mysql51-client/distinfo | 8 | ||||
-rw-r--r-- | databases/mysql51-server/PLIST | 17 | ||||
-rw-r--r-- | databases/mysql51-server/distinfo | 12 | ||||
-rw-r--r-- | databases/mysql51-server/patches/patch-ay | 14 | ||||
-rw-r--r-- | databases/mysql51-server/patches/patch-az | 26 | ||||
-rw-r--r-- | databases/mysql51-server/patches/patch-ba | 22 | ||||
-rw-r--r-- | databases/mysql51-server/patches/patch-bb | 25 |
8 files changed, 24 insertions, 104 deletions
diff --git a/databases/mysql51-client/Makefile.common b/databases/mysql51-client/Makefile.common index 343e8f23c9c..922935ab477 100644 --- a/databases/mysql51-client/Makefile.common +++ b/databases/mysql51-client/Makefile.common @@ -1,10 +1,10 @@ -# $NetBSD: Makefile.common,v 1.17 2011/02/13 16:19:45 taca Exp $ +# $NetBSD: Makefile.common,v 1.18 2011/03/08 14:06:43 taca Exp $ # # used by databases/mysql51-client/Makefile # used by databases/mysql51-server/Makefile # -DISTNAME= mysql-5.1.55 +DISTNAME= mysql-5.1.56 CATEGORIES= databases MASTER_SITES= ${MASTER_SITE_MYSQL:=MySQL-5.1/} diff --git a/databases/mysql51-client/distinfo b/databases/mysql51-client/distinfo index dac2b1042a0..a078bb6c333 100644 --- a/databases/mysql51-client/distinfo +++ b/databases/mysql51-client/distinfo @@ -1,8 +1,8 @@ -$NetBSD: distinfo,v 1.13 2011/02/13 16:19:45 taca Exp $ +$NetBSD: distinfo,v 1.14 2011/03/08 14:06:43 taca Exp $ -SHA1 (mysql-5.1.55.tar.gz) = 8bf67d2d527368e325e5dbdd833f6f47eaf7a8c1 -RMD160 (mysql-5.1.55.tar.gz) = f4ab2500c5d1f15b343b6bbf798b89081d4d0e7c -Size (mysql-5.1.55.tar.gz) = 23769743 bytes +SHA1 (mysql-5.1.56.tar.gz) = 8665c76ab4ab36e8d2379ddf6d678c89b95d9321 +RMD160 (mysql-5.1.56.tar.gz) = c2ff6eb06d0797d4b56630b783d4ad2d1add1422 +Size (mysql-5.1.56.tar.gz) = 24795624 bytes SHA1 (patch-aa) = 344bc9ab7013fbf64be6adbe8a9fc6279887beb1 SHA1 (patch-ab) = 66ea5217d98d33e1be44e4dda754a94496f1ea44 SHA1 (patch-ac) = a250b9797fbaad51d054cbb324feb0f7c29096d4 diff --git a/databases/mysql51-server/PLIST b/databases/mysql51-server/PLIST index ba5d732e784..1375d998500 100644 --- a/databases/mysql51-server/PLIST +++ b/databases/mysql51-server/PLIST @@ -1,4 +1,4 @@ -@comment $NetBSD: PLIST,v 1.13 2011/02/13 16:19:45 taca Exp $ +@comment $NetBSD: PLIST,v 1.14 2011/03/08 14:06:44 taca Exp $ bin/innochecksum bin/my_print_defaults bin/myisam_ftdump @@ -101,8 +101,6 @@ share/mysql-test/collections/default.daily share/mysql-test/collections/default.experimental share/mysql-test/collections/default.push share/mysql-test/collections/default.weekly -share/mysql-test/collections/mysql-5.1-bugteam.daily -share/mysql-test/collections/mysql-5.1-bugteam.push share/mysql-test/extra/binlog_tests/binlog.test share/mysql-test/extra/binlog_tests/binlog_failure_mixing_engines.test share/mysql-test/extra/binlog_tests/binlog_insert_delayed.test @@ -136,6 +134,7 @@ share/mysql-test/extra/rpl_tests/rpl_flsh_tbls.test share/mysql-test/extra/rpl_tests/rpl_foreign_key.test share/mysql-test/extra/rpl_tests/rpl_get_master_version_and_clock.test share/mysql-test/extra/rpl_tests/rpl_insert_delayed.test +share/mysql-test/extra/rpl_tests/rpl_insert_duplicate.test share/mysql-test/extra/rpl_tests/rpl_insert_id.test share/mysql-test/extra/rpl_tests/rpl_insert_id_pk.test share/mysql-test/extra/rpl_tests/rpl_insert_ignore.test @@ -253,6 +252,7 @@ share/mysql-test/include/have_cp866.inc share/mysql-test/include/have_cp932.inc share/mysql-test/include/have_crypt.inc share/mysql-test/include/have_csv.inc +share/mysql-test/include/have_dbi_dbd-mysql.inc share/mysql-test/include/have_debug.inc share/mysql-test/include/have_debug_sync.inc share/mysql-test/include/have_dynamic_loading.inc @@ -353,10 +353,14 @@ share/mysql-test/include/query_cache_sql_prepare.inc share/mysql-test/include/read_many_rows.inc share/mysql-test/include/report-features.test share/mysql-test/include/restart_mysqld.inc +share/mysql-test/include/restart_slave_sql.inc share/mysql-test/include/rowid_order.inc share/mysql-test/include/rpl_change_topology.inc share/mysql-test/include/rpl_connect.inc share/mysql-test/include/rpl_connection.inc +share/mysql-test/include/rpl_connection_master.inc +share/mysql-test/include/rpl_connection_slave.inc +share/mysql-test/include/rpl_connection_slave1.inc share/mysql-test/include/rpl_diff.inc share/mysql-test/include/rpl_end.inc share/mysql-test/include/rpl_events.inc @@ -1079,6 +1083,7 @@ share/mysql-test/std_data/bug49823.CSV share/mysql-test/std_data/bug49823.frm share/mysql-test/std_data/cacert.pem share/mysql-test/std_data/charset_utf8.txt +share/mysql-test/std_data/checkDBI_DBD-mysql.pl share/mysql-test/std_data/client-cert.pem share/mysql-test/std_data/client-key.pem share/mysql-test/std_data/corrupt-relay-bin.000624 @@ -2658,6 +2663,7 @@ share/mysql-test/suite/innodb/r/innodb-ucs2.result share/mysql-test/suite/innodb/r/innodb.result share/mysql-test/suite/innodb/r/innodb_autoinc_lock_mode_zero.result share/mysql-test/suite/innodb/r/innodb_bug21704.result +share/mysql-test/suite/innodb/r/innodb_bug30423.result share/mysql-test/suite/innodb/r/innodb_bug30919.result share/mysql-test/suite/innodb/r/innodb_bug34053.result share/mysql-test/suite/innodb/r/innodb_bug34300.result @@ -2708,6 +2714,7 @@ share/mysql-test/suite/innodb/t/innodb.test share/mysql-test/suite/innodb/t/innodb_autoinc_lock_mode_zero-master.opt share/mysql-test/suite/innodb/t/innodb_autoinc_lock_mode_zero.test share/mysql-test/suite/innodb/t/innodb_bug21704.test +share/mysql-test/suite/innodb/t/innodb_bug30423.test share/mysql-test/suite/innodb/t/innodb_bug30919-master.opt share/mysql-test/suite/innodb/t/innodb_bug30919.test share/mysql-test/suite/innodb/t/innodb_bug34053.test @@ -2778,6 +2785,7 @@ share/mysql-test/suite/innodb_plugin/r/innodb-zip.result share/mysql-test/suite/innodb_plugin/r/innodb.result share/mysql-test/suite/innodb_plugin/r/innodb_autoinc_lock_mode_zero.result share/mysql-test/suite/innodb_plugin/r/innodb_bug21704.result +share/mysql-test/suite/innodb_plugin/r/innodb_bug30423.result share/mysql-test/suite/innodb_plugin/r/innodb_bug30919.result share/mysql-test/suite/innodb_plugin/r/innodb_bug34053.result share/mysql-test/suite/innodb_plugin/r/innodb_bug34300.result @@ -2859,6 +2867,7 @@ share/mysql-test/suite/innodb_plugin/t/innodb.test share/mysql-test/suite/innodb_plugin/t/innodb_autoinc_lock_mode_zero-master.opt share/mysql-test/suite/innodb_plugin/t/innodb_autoinc_lock_mode_zero.test share/mysql-test/suite/innodb_plugin/t/innodb_bug21704.test +share/mysql-test/suite/innodb_plugin/t/innodb_bug30423.test share/mysql-test/suite/innodb_plugin/t/innodb_bug30919-master.opt share/mysql-test/suite/innodb_plugin/t/innodb_bug30919.test share/mysql-test/suite/innodb_plugin/t/innodb_bug34053.test @@ -3680,6 +3689,7 @@ share/mysql-test/suite/rpl/r/rpl_innodb_bug30888.result share/mysql-test/suite/rpl/r/rpl_innodb_mixed_ddl.result share/mysql-test/suite/rpl/r/rpl_innodb_mixed_dml.result share/mysql-test/suite/rpl/r/rpl_insert.result +share/mysql-test/suite/rpl/r/rpl_insert_duplicate.result share/mysql-test/suite/rpl/r/rpl_insert_id.result share/mysql-test/suite/rpl/r/rpl_insert_id_pk.result share/mysql-test/suite/rpl/r/rpl_insert_ignore.result @@ -3969,6 +3979,7 @@ share/mysql-test/suite/rpl/t/rpl_innodb_bug30888.test share/mysql-test/suite/rpl/t/rpl_innodb_mixed_ddl.test share/mysql-test/suite/rpl/t/rpl_innodb_mixed_dml.test share/mysql-test/suite/rpl/t/rpl_insert.test +share/mysql-test/suite/rpl/t/rpl_insert_duplicate.test share/mysql-test/suite/rpl/t/rpl_insert_id.test share/mysql-test/suite/rpl/t/rpl_insert_id_pk.test share/mysql-test/suite/rpl/t/rpl_insert_ignore.test diff --git a/databases/mysql51-server/distinfo b/databases/mysql51-server/distinfo index c2341c0f140..b34433b8476 100644 --- a/databases/mysql51-server/distinfo +++ b/databases/mysql51-server/distinfo @@ -1,8 +1,8 @@ -$NetBSD: distinfo,v 1.15 2011/02/13 16:19:45 taca Exp $ +$NetBSD: distinfo,v 1.16 2011/03/08 14:06:44 taca Exp $ -SHA1 (mysql-5.1.55.tar.gz) = 8bf67d2d527368e325e5dbdd833f6f47eaf7a8c1 -RMD160 (mysql-5.1.55.tar.gz) = f4ab2500c5d1f15b343b6bbf798b89081d4d0e7c -Size (mysql-5.1.55.tar.gz) = 23769743 bytes +SHA1 (mysql-5.1.56.tar.gz) = 8665c76ab4ab36e8d2379ddf6d678c89b95d9321 +RMD160 (mysql-5.1.56.tar.gz) = c2ff6eb06d0797d4b56630b783d4ad2d1add1422 +Size (mysql-5.1.56.tar.gz) = 24795624 bytes SHA1 (patch-aa) = 2a5321738e637a56e57cd6b1b40908d2bf275506 SHA1 (patch-ab) = 1fc6939bb3021153b72479aa2413e50940878c98 SHA1 (patch-ac) = bfb6eec77d7c5aa8d2b849632769005dcf2e272c @@ -25,7 +25,3 @@ SHA1 (patch-at) = 307a0785190f8bc175226ce83288cc85f7da4631 SHA1 (patch-au) = 51291771b994d199fb6de6a17dd7809a7bf39b68 SHA1 (patch-aw) = 93ba34d66fd054fbcf9e1eb3a042770d4d6820ec SHA1 (patch-ax) = dbf68af2d2ded85140aac3602d4f6ce5d68cc78a -SHA1 (patch-ay) = f70896ae71e0ca7840e9966f43c757dd5b6c87b9 -SHA1 (patch-az) = cfe77df58645dfad65ce4ff8eae868f059231233 -SHA1 (patch-ba) = f595d2063ff18c0afb7e45c41d84a22ca9c99b44 -SHA1 (patch-bb) = 11f23c63a14d301a7dfa67d6c399a748ec5631b2 diff --git a/databases/mysql51-server/patches/patch-ay b/databases/mysql51-server/patches/patch-ay deleted file mode 100644 index ee719e18e8b..00000000000 --- a/databases/mysql51-server/patches/patch-ay +++ /dev/null @@ -1,14 +0,0 @@ -$NetBSD: patch-ay,v 1.3 2010/08/13 14:25:35 taca Exp $ - ---- include/config.h.in.orig 2010-08-12 15:56:26.000000000 +0000 -+++ include/config.h.in -@@ -1199,6 +1199,9 @@ - /* The size of `short', as computed by sizeof. */ - #undef SIZEOF_SHORT - -+/* The size of `time_t', as computed by sizeof. */ -+#undef SIZEOF_TIME_T -+ - /* The size of `void*', as computed by sizeof. */ - #undef SIZEOF_VOIDP - diff --git a/databases/mysql51-server/patches/patch-az b/databases/mysql51-server/patches/patch-az deleted file mode 100644 index b8bed5c32d4..00000000000 --- a/databases/mysql51-server/patches/patch-az +++ /dev/null @@ -1,26 +0,0 @@ -$NetBSD: patch-az,v 1.1 2010/08/13 14:25:35 taca Exp $ - -* if long is int64_t and time_t is int32_t, "(time_t) MY_TIME_T_MAX" - results -1 and server_start_time is always parsed as exceeding limit. - So, use TIMESTAMP_MAX_VALUE which is INT_MAX32. -* if time_t is int32_t, comparsion with TIMESTAMP_MAX_VALUE is always - true here. So, limit the comparsion to other cases. - ---- sql/mysqld.cc.orig 2010-07-09 12:34:57.000000000 +0000 -+++ sql/mysqld.cc -@@ -3240,12 +3240,13 @@ static int init_common_variables(const c - - max_system_variables.pseudo_thread_id= (ulong)~0; - server_start_time= flush_status_time= my_time(0); -- /* TODO: remove this when my_time_t is 64 bit compatible */ -- if (server_start_time >= (time_t) MY_TIME_T_MAX) -+#if defined(TIME_T_UNSIGNE) || (SIZEOF_TIME_T > 4) -+ if (server_start_time >= TIMESTAMP_MAX_VALUE) - { - sql_print_error("This MySQL server doesn't support dates later then 2038"); - return 1; - } -+#endif - - rpl_filter= new Rpl_filter; - binlog_filter= new Rpl_filter; diff --git a/databases/mysql51-server/patches/patch-ba b/databases/mysql51-server/patches/patch-ba deleted file mode 100644 index 8553c2614b7..00000000000 --- a/databases/mysql51-server/patches/patch-ba +++ /dev/null @@ -1,22 +0,0 @@ -$NetBSD: patch-ba,v 1.1 2010/08/13 14:25:35 taca Exp $ - -* if long is int64_t and time_t is int32_t, "(time_t) MY_TIME_T_MAX" - results -1 and val is always parsed as exceeding limit. - So, use TIMESTAMP_MAX_VALUE which is INT_MAX32 and make val to ulonglong - for safer comparsion. - ---- sql/set_var.cc.orig 2010-07-09 12:34:53.000000000 +0000 -+++ sql/set_var.cc -@@ -2720,10 +2720,9 @@ int set_var_collation_client::update(THD - - bool sys_var_timestamp::check(THD *thd, set_var *var) - { -- time_t val; -+ ulonglong val; - var->save_result.ulonglong_value= var->value->val_int(); -- val= (time_t) var->save_result.ulonglong_value; -- if (val < (time_t) MY_TIME_T_MIN || val > (time_t) MY_TIME_T_MAX) -+ if (val < TIMESTAMP_MIN_VALUE || val > TIMESTAMP_MAX_VALUE) - { - my_message(ER_UNKNOWN_ERROR, - "This version of MySQL doesn't support dates later than 2038", diff --git a/databases/mysql51-server/patches/patch-bb b/databases/mysql51-server/patches/patch-bb deleted file mode 100644 index b99d6bf184d..00000000000 --- a/databases/mysql51-server/patches/patch-bb +++ /dev/null @@ -1,25 +0,0 @@ -$NetBSD: patch-bb,v 1.1 2010/08/13 14:25:35 taca Exp $ - -* if long is int64_t and time_t is int32_t, "(time_t) MY_TIME_T_MAX" - results -1 and server_start_time is always parsed as exceeding limit. - So, use TIMESTAMP_MAX_VALUE which is INT_MAX32. -* if time_t is int32_t, comparsion with TIMESTAMP_MAX_VALUE is always - true here. So, limit the comparsion to other cases. - ---- sql/sql_class.h.orig 2010-07-09 12:34:57.000000000 +0000 -+++ sql/sql_class.h -@@ -2031,8 +2031,12 @@ public: - } - /*TODO: this will be obsolete when we have support for 64 bit my_time_t */ - inline bool is_valid_time() -- { -- return (start_time < (time_t) MY_TIME_T_MAX); -+ { -+#if defined(TIME_T_UNSIGNE) || (SIZEOF_TIME_T > 4) -+ return (start_time < TIMESTAMP_MAX_VALUE); -+#else -+ return 1; -+#endif - } - void set_time_after_lock() { utime_after_lock= my_micro_time(); } - ulonglong current_utime() { return my_micro_time(); } |