List:General Discussion« Previous MessageNext Message »
From:Joerg Bruehe Date:November 21 2005 8:32pm
Subject:MySQL 5.0.16 has been released
View as plain text  
Hi,


MySQL 5.0.16, a new GA/production version of the popular Open Source 
Database Management System, has been released. The Community Edition is
now available in source and binary form for a number of platforms from
our download pages at
     http://dev.mysql.com/downloads/
and mirror sites.

Note that not all mirror sites may be up to date at this point in time -
if you can't find this version on some mirror, please try again later or
choose another download site.

This is a bugfix release for the current production version.

If you are not aware of the changes introduced with version 5.0, please 
see the high-level description at
    http://dev.mysql.com/doc/mysql/en/MySQL_5.0_Nutshell.html
and pay special attention to the manual, section 2.10.2,
    "Upgrading from Version 4.1 to 5.0."

Please refer to our bug database at http://bugs.mysql.com/ for more
details about the individual bugs fixed in this version.


News from the ChangeLog:


Functionality added or changed:
* The InnoDB, NDB, BDB, and ARCHIVE storage engines now support
   spatial columns. See Chapter 16, "Spatial Extensions in MySQL."
* You must now declare a prefix for an index on any column of
   any Geometry class, the only exception being when the column
   is a POINT.  (Bug #12267 (http://bugs.mysql.com/12267))
* Added a --hexdump option to mysqlbinlog that displays a hex
   dump of the log in comments. This output can be helpful for
   replication debugging.
* MySQL 5.0 now supports character set conversion for seven
   additional cp950 characters into the big5 character set:
   0xF9D6, 0xF9D7, 0xF9D8, 0xF9D9, 0xF9DA, 0xF9DB, and 0xF9DC.
   Note: If you move data containing these additional characters
   to an older MySQL installation which does not support them,
   you may encounter errors.
   (Bug #12476 (http://bugs.mysql.com/12476))


Packaging changes:
* The Solaris packages ("pkgadd" format) has changed. In earlier
   releases, running "pkgadd" simply unpacked the distribution into
   "/usr/local/mysql-<product>-<version>/", i.e. nothing more than
   unpacking a TAR package would do. The new packages
    - install into "/opt/mysql/mysql/" (vendor/product)
    - register the package with the name "mysql"
    - add and set group/user
    - initiate/update the data directory "/var/lib/mysql",
      run "mysql_install_db" to initialize system tables
    - install a startup script as "/etc/init.d/mysql"
    - add a soft link from "/usr/local/mysql" to "/opt/mysql/mysql"
      (for compatibility and to enable the binaries to find
      character set definitions etc)
    - add soft links in "/usr/bin", "/usr/sbin", "/usr/lib"
      and other locations to files in "/opt/mysql/mysql/"
    - stop the server when the package is removed with "pkgrm"
   Note that the server is *not* started as part of the package
   install, and that the directory "/var/lib/mysql" is not altered
   during package removal using "pkgrm".
* Please see the "additional notes" in the 5.0.15 announcement mail,
   if you did not already do so earlier. The mail is archived here:
      http://lists.mysql.com/mysql/190752


Bugs fixed:
* ORDER BY DESC within the GROUP_CONCAT() function was not
   honored when used in a view.
   (Bug #14466 (http://bugs.mysql.com/14466))
* A comparison with an invalid date (such as WHERE col_name >
   '2005-09-31') caused any index on col_name not to be used and
   a string comparison for each row, resulting in slow performance.
   (Bug #14093 (http://bugs.mysql.com/14093))
* Within stored routines, REPLACE() could return an empty
   string (rather than the original string) when no replacement
   was done, and IFNULL() could return garbage results.
   (Bug #13941 (http://bugs.mysql.com/13941))
* Inserts of too-large DECIMAL values were handled inconsistently
   (sometimes set to the maximum DECIMAL value, sometimes set to 0).
   (Bug #13573 (http://bugs.mysql.com/13573))
* Executing REPAIR TABLE, ANALYZE TABLE, or OPTIMIZE TABLE on
   a view for which an underlying table had been dropped caused
   a server crash. (Bug #14540 (http://bugs.mysql.com/14540))
* A prepared statement that selected from a view processed
   using the merge algorithm could crash on the second execution.
   (Bug #14026 (http://bugs.mysql.com/14026))
* Deletes from a CSV table could cause table corruption.
   (Bug #14672 (http://bugs.mysql.com/14672))
* An update of a CSV table could cause a server crash.
   (Bug #13894(http://bugs.mysql.com/13894))
* For queries with nested outer joins, the optimizer could
   choose join orders that query execution could not handle.
   The fix is that now the optimizer avoids choosing such join
   orders. (Bug #13126 (http://bugs.mysql.com/13126))
* Starting mysqld with the --skip-innodb and
   --default-storage-engine=innodb (or --default-table-type=innodb
   caused a server crash.
   (Bug #9815 (http://bugs.mysql.com/9815), re-fix of bug from 5.0.5)
* mysqlmanager did not start up correctly on Windows 2003.
   (Bug #14537 (http://bugs.mysql.com/14537))
* The parser did not correctly recognize wildcards in the
   host part of the DEFINER user in CREATE VIEW statements.
   (Bug #14256 (http://bugs.mysql.com/14256))
* Memory corruption and a server crash could be caused by
   statements that used a cursor and generated a result set
   larger than max_heap_table_size.
   (Bug #14210 (http://bugs.mysql.com/14210))
* mysqld_safe did not correctly start the -max version of the
   server (if it was present) if the --ledir option was given.
   (Bug #13774 (http://bugs.mysql.com/13774))
* The mysql parser did not properly strip the delimiter from
   input lines less than nine characters long. For example,
   this could cause USE abc; to result in an Unknown database:
   abc; error. (Bug #14358 (http://bugs.mysql.com/14358))
* Statements of the form CREATE TABLE ... SELECT ... that
   created a column with a multi-byte character set could
   incorrectly calculate the maximum length of the column,
   resulting in a Specified key was too long error.
   (Bug #14139 (http://bugs.mysql.com/14139))
* Some updatable views could not be updated.
   (Bug #14027 (http://bugs.mysql.com/14027))
* Running OPTIMIZE TABLE and other data-updating statements
   concurrently on an InnoDB table could cause a crash or the
   following warnings in the error log:
   Warning: Found locks from different threads in write:
            enter write_lock,
   Warning: Found locks from different threads in write:
            start of release lock.
   (Bug #11704 (http://bugs.mysql.com/11704))
* Indexes for BDB tables were being limited incorrectly to
   255 bytes. (Bug #14381 (http://bugs.mysql.com/14381))
* Use of col_name = VALUES(col_name) in the ON DUPLICATE KEY
   UPDATE clause of an INSERT statement failed with an Column
   'col_name' in field list is ambiguous error.
   (Bug #13392 (http://bugs.mysql.com/13392))
* On Windows, the server was not ignoring hidden or system
   directories that Windows may have created in the data directory,
   and would treat them as available databases.
   (Bug #4375 (http://bugs.mysql.com/4375))
* mysqldump could not dump views if the -x option was given.
   (Bug #12838 (http://bugs.mysql.com/12838))
* mysqlimport now issues a SET @@character_set_database =
   binary statement before loading data so that a file containing
   mixed character sets (columns with different character sets)
   can be loaded properly. (Bug #12123 (http://bugs.mysql.com/12123))
* Use of the deprecated --sql-bin-update-same option caused
   a server crash. (Bug #12974 (http://bugs.mysql.com/12974))
* Maximum values were handled incorrectly for command-line
   options of type GET_LL. (Bug #12925 (http://bugs.mysql.com/12925))
* For a user that has the SELECT privilege on a view, the
   server erroneously was also requiring the user to have the
   EXECUTE privilege at view execution time for stored functions
   used in the view definition. (Bug #9505 (http://bugs.mysql.com/9505))
* Use of WITH ROLLUP PROCEDURE ANALYSE() could hang the server.
   (Bug #14138 (http://bugs.mysql.com/14138))
* TIMEDIFF(), ADDTIME(), and STR_TO_DATE() were not reporting
   that they could return NULL, so functions that invoked them
   might misinterpret their results.
   (Bug #14009 (http://bugs.mysql.com/14009))
* The example configuration files supplied with MySQL
   distributions listed the thread_cache_size variable as
   thread_cache. (Bug #13811 (http://bugs.mysql.com/13811))
* Using ALTER TABLE to add an index could fail if the operation
   ran out of temporary file space. Now it automatically makes
   a second attempt that uses a slower method but no temporary
   file. In this case, problems that occurred during the first
   attempt can be displayed with SHOW WARNINGS.
   (Bug #12166 (http://bugs.mysql.com/12166))
* The input polling loop for Instance Manager did not sleep
   properly. Instance Manager used up too much CPU as a result.
   (Bug #14388 (http://bugs.mysql.com/14388))
* Trying to take the logarithm of a negative value is now
   handled in the same fashion as division by zero. That is, it
   produces a warning when ERROR_FOR_DIVISION_BY_ZERO is set,
   and an error in strict mode.
   (Bug #13820 (http://bugs.mysql.com/13820))
* LOAD DATA INFILE would not accept the same character for
   both the ESCAPED BY and the ENCLOSED BY clauses.
   (Bug #11203 (http://bugs.mysql.com/11203))
* The value of Last_query_cost was not updated for queries
   served from the query cache.
   (Bug #10303 (http://bugs.mysql.com/10303))
* TIMESTAMPDIFF() returned an incorrect result if one argument
   but not the other was a leap year and a date was from March
   or later. (Bug #13534 (http://bugs.mysql.com/13534))
* The server incorrectly accepted column definitions of the
   form DECIMAL(0,D) for D less than 11.
   (Bug #13667 (http://bugs.mysql.com/13667))
* The displayed value for the CHARACTER_MAXIMUM_LENGTH column
   in the INFORMATION_SCHEMA.COLUMNS table was not adjusted for
   multi-byte character sets. (Bug #14290 (http://bugs.mysql.com/14290))
* A bugfix in MySQL 5.0.15 caused the displayed values for
   the CHARACTER_MAXIMUM_LENGTH and CHARACTER_OCTET_LENGTH
   columns in the INFORMATION_SCHEMA.COLUMNS table to be reversed.
   (Bug #14207 (http://bugs.mysql.com/14207))
* On Windows, the value of character_sets_dir in SHOW VARIABLES
   output was displayed inconsistenly (using both `/' and `\' as
   pathname component separators).
   (Bug #14137 (http://bugs.mysql.com/14137))
* Subqueries in the FROM clause failed if the current database
   was INFORMATION_SCHEMA. (Bug #14089 (http://bugs.mysql.com/14089))
* Corrected a parser precedence problem that resulted in an
   Unknown column ... in 'on clause' error for some joins.
   (Bug #13832 (http://bugs.mysql.com/13832))
* For LIKE ... ESCAPE, an escape sequence longer than one
   character was accepted as valid. Now the sequence must be
   empty or one character long. If the NO_BACKSLASH_ESCAPES SQL
   mode is enabled, the sequence must be one character long.
   (Bug #12595 (http://bugs.mysql.com/12595))
* SELECT DISTINCT CHAR(col_name) returned incorrect results
   after SET NAMES utf8. (Bug #13233 (http://bugs.mysql.com/13233))
* A prepared statement failed with Illegal mix of collations
   if the client character set was utf8 and the statement used
   a table that had a character set of latin1.
   (Bug #12371 (http://bugs.mysql.com/12371))
* Inserting a new row into an InnoDB table could cause DATETIME
   values already stored in the table to change.
   (Bug #13900 (http://bugs.mysql.com/13900))
* The default value of query_prealloc_size was set to 8192,
   lower than its minimum of 16384. The minimum has been lowered
   to 8192.  (Bug #13334 (http://bugs.mysql.com/13334))
* The server did not take character set into account in
   checking the width of the mysql.user.Password column. As a
   result, it could incorrectly generate long password hashes
   even if the column was not long enough to hold them.
   (Bug #13064 (http://bugs.mysql.com/13064))
* Inserting cp932 strings into a VARCHAR column caused a
   server crash rather than string truncation if the string was
   longer than the column definition.
   (Bug #12547 (http://bugs.mysql.com/12547))
* Two threads that were creating triggers on an InnoDB table
   at the same time could deadlock.
   (Bug #12739 (http://bugs.mysql.com/12739))
* mysqladmin and mysqldump would hang on SCO OpenServer.
   (Bug #13238 (http://bugs.mysql.com/13238))
* RESET MASTER failed to delete log files on Windows.
   (Bug #13377 (http://bugs.mysql.com/13377))
* Where one stored procedure called another stored procedure:
   If the second stored procedure generated an exception, the
   exception was not caught by the calling stored procedure.
   For example, if stored procedure A used an EXIT statement
   to handle an exception, subsequent statements in A would be
   executed regardless when A was called by another stored
   procedure B, even if an exception that should have been
   handled by the EXIT was generated in A.
   (Bug #7049 (http://bugs.mysql.com/7049))
* Trying to create a stored routine with no database selected
   would crash the server.
   (Bug #13514 (http://bugs.mysql.com/13514),
   Bug #13587 (http://bugs.mysql.com/13587))
* Specifying --default-character-set=cp-932 for mysqld would
   cause SQL scripts containing comments written using that
   character set to fail with a syntax error.
   (Bug #13487 (http://bugs.mysql.com/13487))
* Trying to compile the server using the --without-geometry
   option caused the build to fail.
   (Bug #12991 (http://bugs.mysql.com/12991))


Bye,
Joerg

-- 
Joerg Bruehe, Senior Production Engineer
MySQL AB, www.mysql.com

Thread
MySQL 5.0.16 has been releasedJoerg Bruehe21 Nov