Hi! Long-awaited MySQL-4.1.2 was released today. Windows binaries of 4.1.2 will be released as soon as they are available. The binaries and source are available for download at: http://dev.mysql.com/downloads/mysql/4.1.html
InnoDB is a MySQL table type that provides foreign key constraints, transactions, row level locking, a MVCC concurrency control method for transactions, and a non-free hot backup tool that can take binary backups of your database without disturbing normal processing. MySQL-4.1.2 is mainly a bugfix release, but there are also a few important new features in InnoDB. The most important new feature is that InnoDB now supports multiple character sets in the same installation. For example, one column in a table can be in the default latin1_swedish_ci character set / collation, while another column is in UTF-8 and in some other collation order. This capability came to MyISAM tables already in earlier 4.1 releases, but for InnoDB the feature was completed in 4.1.2. Another new feature is that MySQL now automatically creates an index on a FOREIGN KEY if the user does not specify a suitable index for it. A suitable index is one where the foreign key columns appear in the index specification as the first columns, and are in the same order as in the FOREIGN KEY specification. Automatical creation will eliminate most of the annoying cases of Error 1005 (errno 150) in table creation, when the user forgot to specify a suitable index. Note that MySQL still does not automatically create an index on the REFERENCED key in the parent table. But that is not as big a problem, because usually the referenced key is the PRIMARY KEY of the parent table, and an index always exists on it. For more information on InnoDB foreign key constraints, see: http://dev.mysql.com/doc/mysql/en/InnoDB_foreign_key_constraints.html The complete changelog of 4.1.2: Functionality added or changed: * Support multiple character sets. Note that tables created in other collations than latin1_swedish_ci cannot be accessed in MySQL/InnoDB 4.0. * Automatically create a suitable index on a FOREIGN KEY, if the user does not create one. Removes most of the cases of Error 1005 (errno 150) in table creation. * Do not assert in `log0log.c', line 856 if ib_logfiles are too small for innodb_thread_concurrency. Instead, print instructions how to adjust `my.cnf' and call exit(1). * If MySQL tries to SELECT from an InnoDB table without setting any table locks, print a descriptive error message and assert; some subquery bugs were of this type. * Allow a key part length in InnoDB to be up to 3,500 bytes; this is needed so that one can create an index on a column with 255 UTF-8 characters. * All new features from InnoDB-4.0.17, InnoDB-4.0.18, InnoDB-4.0.19 and InnoDB-4.0.20. Bugs fixed: * All bug fixes from InnoDB-4.0.17, InnoDB-4.0.18, InnoDB-4.0.19 and InnoDB-4.0.20. * If you configure innodb_additional_mem_pool_size so small that InnoDB memory allocation spills over from it, then every 4 billionth spill may cause memory corruption. A symptom was a printout like below in the `.err' log. (Bug fix from 4.0.21.) InnoDB: Error: Mem area size is 0. Possibly a memory overrun of the InnoDB: previous allocated area! InnoDB: Apparent memory corruption: mem dump len 500; hex * Improved portability to 64-bit platforms, especially Win64. * Fixed an assertion failure when a purge of a table was not possible because of missing `.ibd' file. * Fixed a bug: do not retrieve all columns in a table if we only need the 'ref' of the row (usually, the PRIMARY KEY) to calculate an ORDER BY. (Bug #1942) * On Unix-like systems, obtain an exclusive advisory lock on InnoDB files, to prevent corruption when multiple instances of MySQL are running on the same set of data files. The Windows version of InnoDB already took a mandatory lock on the files. (Bug #3608) * Added a missing space to the output format of SHOW INNODB STATUS; reported by Jocelyn Fournier. Best regards, Heikki Tuuri Innobase Oy http://www.innodb.com -- MySQL General Mailing List For list archives: http://lists.mysql.com/mysql To unsubscribe: http://lists.mysql.com/[EMAIL PROTECTED]