List:Packagers« Previous MessageNext Message »
From:Lenz Grimmer Date:October 22 2003 10:03am
Subject:MySQL-4.0.16 has been released
View as plain text  
Hash: SHA1


MySQL 4.0.16, a new version of the popular Open Source/Free Software
Database, has been released. It is now available in source and binary form
for a number of platforms from our download pages at 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.

Please refer to our bug database at for more
details about the individual bugs fixed in this version.

News from the ChangeLog:

Functionality added or changed:

   * Write memory allocation information to error log when doing
     `mysqladmin debug'.  This only works on system that support the
     `mallinfo()' call (like newer Linux systems).

   * Added the following new server variables to allow more precise
     memory allocation: `range_alloc_block_size',
     `query_alloc_block_size', `query_prealloc_size',
     `transaction_alloc_block_size', and `transaction_prealloc_size'.

   * `mysqlbinlog' now reads options files. To make this work one must
     now specify `--read-from-remote-server' when reading binary logs
     from a MySQL server. (Note that using a remote server is
     deprecated and may disappear in future `mysqlbinlog' versions).

   * Block `SIGPIPE' also for non-threaded programs. The blocking is
     moved from `mysql_init()' to `mysql_server_init()', which is
     automatically called on the first call to `mysql_init()'.

   * Added `--libs_r' and `--include' options to `mysql_config'.

   * New ``>' prompt for `mysql'. This prompt is similar to the `'>'
     and `">' prompts, but indicates that an identifier quoted with
     backticks was begun on an earlier line and the closing backtick
     has not yet been seen.

   * Updated `mysql_install_db' to be able to use the local machine's IP
     address instead of the host name when building the initial grant
     tables if `skip-name-resolve' has been specified in `my.cnf'.
     Using this option can be helpful on FreeBSD to avoid thread-safety
     problems with the FreeBSD resolver libraries. (Thanks to Jeremy
     Zawodny for the patch)

   * A documentation change: added a note that when backing up a slave,
     one needs to backup the `' and `' files,
     and the `SQL-LOAD*' files (which are in the `slave-load-tmpdir'
     directory, which defaults to `tmpdir' if unset). All these files
     will be needed when the slave resumes replication after you
     restore the slave's data.

Bugs fixed:

   * Fixed crash of Query Cache on queries which use same table several

   * Fixed core dump bug when setting an enum system variable (like
     `SQL_WARNINGS') to `NULL'.

   * Fixed server crash when running `FLUSH QUERY CACHE'. (Bug #988)

   * Extended default timeout in clients on windows from 30 seconds to
     1 year.  (The timeout that was added in MySQL 4.0.15 was way too

   * More "out of memory" checking in range optimiser.

   * Fixed and documented problem when setting and using a user
     variable in the same `SELECT' statement. (Bug #1194).

   * Fixed bug in overrun check for blobs with compressed tables (bug
     introduced in 4.0.14).  This caused MySQL to regard some correct
     tables with blobs to be corrupted. (Bug #770, Bug #1304, and maybe
     Bug #1295)

   * `SHOW GRANTS' showed `USAGE' instead of real privileges for column
     grants when no table grants was given.

   * When it wanted to copy a database from the master, `LOAD DATA FROM
     MASTER' dropped the corresponding database on the slave, thus
     dropping tables which may not have a counterpart on the master, or
     tables which may be excluded from replication using
     `replicate-*-table' rules. Now `LOAD DATA FROM MASTER' does not
     drop the database anymore, it drops only the tables which have a
     counterpart on the master and which match the `replicate-*-table'
     rules. `replicate-*-db' rules can still be used to include/exclude
     a database as a whole from `LOAD DATA FROM MASTER'. A database will
     also be included/excluded as a whole if there are some rules like
     `replicate-wild-do-table=db1.%' or
     `replicate-wild-ignore-table=db1.%', like it's already the case for
     `CREATE DATABASE' and `DROP DATABASE' in replication. (Bug #1248)

   * `mysqlbinlog' crashed (segmentation fault) when used with the `-h,
     --host' option. (Bug #1258)

   * `mysqlbinlog' crashed (segmentation fault) when used on binlog
     containing only final events for `LOAD DATA'. (Bug #1340)

   * Fixed compilation problem when compiling with OpenSSL 0.9.7 with
     disabled old DES support (If `OPENSSL_DISABLE_OLD_DES_SUPPORT'
     option was enabled).

   * Slave no longer can delete temporary files for `LOAD DATA'
     (`SQL_LOAD-*') belonging to other instances if these instances use
     the same temporary directory. (Bug #1357)

   * If `LOAD DATA INFILE' failed for a small file, the master forgot to
     write a marker (a `Delete_file' event) in its binary log, so the
     slave could not delete 2 files (`SQL_LOAD*.info' and
     `SQL_LOAD*.data' from its `tmpdir'. (Bug #1391)

   * On Windows, the slave forgot to delete a `SQL_LOAD*.info' file
     from `tmpdir' after successfully replicating a `LOAD DATA INFILE'
     command. (Bug #1392)

   * When a connection terminates, MySQL writes `DROP TEMPORARY TABLE'
     statements to the binary log for all temporary tables which the
     connection had not explicitely dropped. MySQL forgot to backquote
     the database and table names in the statement. (Bug #1345)

   * On some 64-bit machines (some HP-UX and Solaris machines), a slave
     installed with the 64-bit MySQL binary could not connect to its
     master (it connected to itself instead). (Bug #1256, #1381)

   * Code introduced in MySQL 4.0.15 for the slave to detect that the
     master had died while writing a transaction to its binlog,
     reported an error in a legal situation (when the slave I/O thread
     was stopped while copying a transaction to the relay log, the
     slave SQL thread would later pretend that it found an unfinished
     transaction). (Bug #1475)

Additional notes:

   * The Mac OS X binaries are now built on Mac OS X 10.2.6 with the
     gcc-3.3 compiler.
   * As HP-UX 10.20 has been discontinued by Hewlett-Packard on June 2002,
     we have now updated this build host to provide binaries HP-UX 11.00
   * In addition to the IA32 Linux RPMs, we do now also offer RPMs for
     Linux/AMD64 aka Opteron (built on SuSE Linux Enterprise Server 8)

- -- 
 Lenz Grimmer <lenz@stripped>
 Senior Production Engineer
 MySQL GmbH,
 Hamburg, Germany

 For technical support contracts, visit
Version: GnuPG v1.2.2 (GNU/Linux)
Comment: For info see

MySQL-4.0.16 has been releasedLenz Grimmer22 Oct