(mysql.info) news-5-0-10
Info Catalog
(mysql.info) news-5-0-11
(mysql.info) news-5-0-x
(mysql.info) news-5-0-9
D.1.11 Changes in release 5.0.10 (27 July 2005)
-----------------------------------------------
Functionality added or changed:
* Security improvement: Applied a patch that addresses a
`zlib' data vulnerability that could result in a
buffer overflow and code execution. (CAN-2005-2096
(http://cve.mitre.org/cgi-bin/cvename.cgi?name=CAN-2005-2096))
(Bug #11844 (http://bugs.mysql.com/11844))
* *Incompatible change:* The namespace for
triggers has changed. Previously, trigger names had to
be unique per table. Now they must be unique within the
schema (database). An implication of this change is that
`DROP TRIGGER' syntax now uses a schema name instead of
a table name (schema name is optional and, if omitted,
the current schema will be used). (Bug #5892
(http://bugs.mysql.com/5892))
_Note_: When upgrading from a previous version of MySQL
5 to MySQL 5.0.10 or newer, you must drop all triggers
and re-create them or `DROP TRIGGER' will not work after
the upgrade. A suggested procedure for doing this is
given in upgrading-from-4-1.
* The viewing of triggers and trigger metadata has been
enhanced as follows:
* An extension to the `SHOW' command has
been added: `SHOW TRIGGERS' can be used to
view a listing of triggers. See
show-triggers, for details.
* The `INFORMATION_SCHEMA' database now
includes a `TRIGGERS' table. See
triggers-table, for details. (Bug #9586
(http://bugs.mysql.com/9586))
* Triggers can now reference tables by name. See
create-trigger, for more information.
* The output of `perror --help' now displays the
-ndb option. (Bug #11999 (http://bugs.mysql.com/11999))
* On Windows, the search path used by MySQL applications
for `my.ini' now includes `..\my.ini' (that
is, the application's parent directory, and hence, the
installation directory). (Bug #10419 (http://bugs.mysql.com/10419))
* Added `mysql_get_character_set_info()' C API
function for obtaining information about the default character
set of the current connection.
* The bundled version of the `readline' library
was upgraded to version 5.0.
* It is no longer necessary to issue an explicit `LOCK
TABLES' for any tables accessed by a trigger prior to
executing any statements that might invoke the trigger. (Bug
#9581 (http://bugs.mysql.com/9581), Bug #8406
(http://bugs.mysql.com/8406))
* `MySQL Cluster': A new -P option is available
for use with the `ndb_mgmd' client. When called with this
option, `ndb_mgmd' prints all configuration
data to `stdout', then exits.
Bugs fixed:
* `NDB': Trying to use a greater number of
tables then specified by the value of `MaxNoOfTables'
caused table corruption such that data nodes could not
be restarted. (Bug #9994 (http://bugs.mysql.com/9994))
* `NDB': Attempting to create or drop tables
during a backup would cause the cluster to shut down. (Bug #11942
(http://bugs.mysql.com/11942))
* When attempting to drop a table with a broken unique
index, `NDB' failed to drop the table and
erroneously report that the table was unknown. (Bug #11355
(http://bugs.mysql.com/11355))
* `SELECT ... NOT IN()' gave unexpected results
when only static value present between the `()'. (Bug
#11885 (http://bugs.mysql.com/11885))
* Fixed compile error when using GCC4 on AMD64. (Bug
#12040 (http://bugs.mysql.com/12040))
* `NDB' ignored the `Hostname' option in the
`NDBD DEFAULT' section of the Cluster configuration
file. (Bug #12028 (http://bugs.mysql.com/12028))
* `SHOW PROCEDURE/FUNCTION STATUS' didn't work
for users with limited access. (Bug #11577
(http://bugs.mysql.com/11577))
* MySQL server would crash is a fetch was performed after a
`ROLLBACK' when cursors were involved. (Bug #10760
(http://bugs.mysql.com/10760))
* The temporary tables created by an `ALTER
TABLE' on a cluster table were visible to all MySQL
servers. (Bug #12055 (http://bugs.mysql.com/12055))
* `NDB_MGMD' was leaking file descriptors. (Bug #11898
(http://bugs.mysql.com/11898))
* IP addresses not shown in `ndb_mgm SHOW'
command on second ndb_mgmd (or on ndb_mgmd restart). (Bug #11596
(http://bugs.mysql.com/11596))
* Functions that evaluate to constants (such as
`NOW()' and `CURRENT_USER()' were being evaluated in the
definition of a `VIEW' rather than included verbatim.
(Bug #4663 (http://bugs.mysql.com/4663))
* Execution of `SHOW TABLES' failed to increment
the `Com_show_tables' status variable. (Bug #11685
(http://bugs.mysql.com/11685))
* For execution of a stored procedure that refers to a
view, changes to the view definition were not seen. The
procedure continued to see the old contents of the view.
(Bug #6120 (http://bugs.mysql.com/6120))
* For prepared statements, the SQL parser did not disallow
‘`?'’ parameter markers immediately
adjacent to other tokens, which could result in
malformed statements in the binary log. (For example,
`SELECT * FROM t WHERE? = 1' could become `SELECT * FROM
t WHERE0 = 1'.) (Bug #11299 (http://bugs.mysql.com/11299))
* When two threads compete for the same table, a deadlock
could occur if one thread has also a lock on another
table through `LOCK TABLES' and the thread is attempting
to remove the table in some manner and the other thread
want locks on both tables. (Bug #10600
(http://bugs.mysql.com/10600))
* Aliasing the column names in a `VIEW' did not
work when executing a `SELECT' query on the `VIEW'. (Bug
#11399 (http://bugs.mysql.com/11399))
* Performing an `ORDER BY' on a `SELECT' from a
`VIEW' produced unexpected results when `VIEW' and
underlying table had the same column name on different
columns. Bug #11709 (http://bugs.mysql.com/11709))
* The C API function `mysql_statement_reset()'
did not clear error information. (Bug #11183
(http://bugs.mysql.com/11183))
* When used within a subquery, `SUBSTRING()'
returned an empty string. (Bug #10269
(http://bugs.mysql.com/10269))
* Multiple-table `UPDATE' queries using
`CONVERT_TZ()' would fail with an error. (Bug #9979
(http://bugs.mysql.com/9979))
* `mysql_fetch_fields()' returned incorrect
length information for `MEDIUM' and `LONG' `TEXT' and
`BLOB' columns. (Bug #9735 (http://bugs.mysql.com/9735))
* `mysqlbinlog' was failing the test suite on
Windows due to `BOOL' being incorrectly cast to `INT'.
(Bug #11567 (http://bugs.mysql.com/11567))
* `NDBCLuster': Server left core files following
shutdown if data nodes had failed. (Bug #11516
(http://bugs.mysql.com/11516))
* Creating a trigger in one database that references a
table in another database was being allowed without
generating errors. (Bug #8751
(http://bugs.mysql.com/8751))
* Duplicate trigger names were allowed within a single
schema. (Bug #6182 (http://bugs.mysql.com/6182))
* Server did not accept some fully-qualified trigger
names. (Bug #8758 (http://bugs.mysql.com/8758))
* The `traditional' SQL mode accepted invalid
dates if the date value provided was the result of an implicit
type conversion. (Bug #5906 (http://bugs.mysql.com/5906))
* The MySQL server had issues with certain combinations of
basedir and datadir. (Bug #7249
(http://bugs.mysql.com/7249))
* `INFORMATION_SCHEMA.COLUMNS' had some
inaccurate values for some data types. (Bug #11057
(http://bugs.mysql.com/11057))
* LIKE pattern matching using prefix index didn't return
correct result. (Bug #11650
(http://bugs.mysql.com/11650))
* For several character sets, MySQL incorrectly converted
the character code for the division sign to the
`eucjpms' character set. (Bug #11717
(http://bugs.mysql.com/11717))
* When invoked within a view, `SUBTIME()'
returned incorrect values. (Bug #11760
(http://bugs.mysql.com/11760))
* `SHOW BINARY LOGS' displayed a file size of 0
for all log files but the current one if the files were not
located in the data directory. (Bug #12004
(http://bugs.mysql.com/12004))
* Server-side prepared statements failed for columns with a
character set of `ucs2'. (Bug #9442
(http://bugs.mysql.com/9442))
* References to system variables in an SQL statement
prepared with `PREPARE' were evaluated during
`EXECUTE' to their values at prepare time, not to their
values at execution time. (Bug #9359 (http://bugs.mysql.com/9359))
* For server shutdown on Windows, error messages of the
form `Forcing close of thread N user: 'NAME''
were being written to the error log. Now connections are
closed more gracefully without generating error
messages. (Bug #7403 (http://bugs.mysql.com/7403))
* Increased the version number of the
`libmysqlclient' shared library from 14 to 15 because it
is binary incompatible with the MySQL 4.1 client
library. (Bug #11893 (http://bugs.mysql.com/11893))
* A recent optimizer change caused `DELETE ... WHERE ...
NOT LIKE' and `DELETE ... WHERE ... NOT
BETWEEN' to not properly identify the rows to be
deleted. (Bug #11853 (http://bugs.mysql.com/11853))
* Within a stored procedure that selects from a table,
invoking another procedure that requires a write lock
for the table caused that procedure to fail with a
message that the table was read-locked. (Bug #9565
(http://bugs.mysql.com/9565))
* Within a stored procedure, selecting from a table
through a view caused subsequent updates to the table to
fail with a message that the table was read-locked. (Bug
#9597 (http://bugs.mysql.com/9597))
* For a stored procedure defined with `SQL SECURITY
DEFINER' characteristic, `CURRENT_USER()' incorrectly
reported the use invoking the procedure, not the user
who defined it. (Bug #7291 (http://bugs.mysql.com/7291))
* Creating a table with a `SET' or `ENUM' column
with the `DEFAULT 0' clause caused a server crash if the
table's character set was `utf8'. (Bug #11819
(http://bugs.mysql.com/11819))
* With strict SQL mode enabled, `ALTER TABLE'
reported spurious `Invalid default value' messages for
columns that had no `DEFAULT' clause. (Bug #9881
(http://bugs.mysql.com/9881))
* In SQL prepared statements, comparisons could fail for
values not equally space-padded. For example, `SELECT
'a' = 'a ';' returns 1, but `PREPARE s FROM
'SELECT ?=?'; SET @a = 'a', @b = 'a '; PREPARE s FROM
'SELECT ?=?'; EXECUTE s USING @a, @b;' incorrectly
returned 0. (Bug #9379 (http://bugs.mysql.com/9379))
* Labels in stored routines did not work if the character
set was not `latin1'. (Bug #7088
(http://bugs.mysql.com/7088))
* Invoking the `DES_ENCRYPT()' function could
cause a server crash if the server was started without the
-des-key-file option. (Bug #11643 (http://bugs.mysql.com/11643))
* The server crashed upon execution of a statement that
used a stored function indirectly (via a view) if the
function was not yet in the connection-specific stored
routine cache and the statement would update a
`Handler_XXX' status variable. This fix allows the use
of stored routines under `LOCK TABLES' without explicitly
locking the `mysql.lock' table. However, you
cannot use `mysql.proc' in statements that will combine
locking of it with modifications for other tables. (Bug
#11554 (http://bugs.mysql.com/11554))
* The server crashed when dropping a trigger that invoked a
stored procedure, if the procedure was not yet in the
connection-specific stored routine cache. (Bug #11889
(http://bugs.mysql.com/11889))
* Selecting the result of an aggregate function for an
`ENUM' or `SET' column within a subquery could
result in a server crash. (Bug #11821
(http://bugs.mysql.com/11821))
* Incorrect column values could be retrieved from views
defined using statements of the form `SELECT * FROM
TBL_NAME'. (Bug #11771 (http://bugs.mysql.com/11771))
* The `mysql.proc' table was not being created
properly with the proper `utf8' character set and
collation, causing server crashes for stored procedure
operations if the server was using a multi-byte character set.
To take advantage of the bug fix,
`mysql_fix_privilege_tables' should be run to correct
the structure of the `mysql.proc' table. (Bug #11365
(http://bugs.mysql.com/11365))
Note that it is _necessary_ to run
`mysql_fix_privileges_tables' when upgrading from a
previous installation that contains the `mysql.proc'
table (that is, from a previous 5.0 installation).
Otherwise, creating stored procedures might not work.
* Execution of a prepared statement that invoked a
non-existent or dropped stored routine would crash the
server. (Bug #11834 (http://bugs.mysql.com/11834))
* Executing a statement that invoked a trigger would cause
problems unless a `LOCK TABLES' was first
The exact nature of the problem depended upon the MySQL
5.0 release being used: prior to 5.0.3, this resulted in
a crash; from 5.0.3 to 5.0.7, MySQL would issue a
warning; in 5.0.9, the server would issue an error. (Bug
#8406 (http://bugs.mysql.com/8406))
The same issue caused `LOCK TABLES' to fail following
`UNLOCK TABLES' if triggers were involved. (Bug #9581
(http://bugs.mysql.com/9581))
* In a shared Windows environment, MySQL could not find its
configuration file unless the file was in the
`C:\' directory. (Bug #5354 (http://bugs.mysql.com/5354))
Info Catalog
(mysql.info) news-5-0-11
(mysql.info) news-5-0-x
(mysql.info) news-5-0-9
automatically generated byinfo2html