Released on 16 Dec 2000
MySQL 3.23.29 Changelog

End of Product Lifecycle. Active development and support for MySQL Database Server versions 3.23, 4.0, and 4.1 has ended. For details, see Please consider upgrading to a recent version. Further updates to the content of this manual will be minimal. All formats of this manual will continue to be available until 31 Dec 2010.

  • Configure updates for Tru64, large file support, and better TCP wrapper support. By Albert Chin-A-Young.

  • Fixed bug in <=> operator.

  • Fixed bug in REPLACE with BDB tables.

  • LPAD() and RPAD() shortens the result string if it is longer than the length argument.

  • Added SHOW LOGS statement.

  • Remove unused BDB logs on shutdown.

  • When creating a table, put PRIMARY keys first, followed by UNIQUE keys.

  • Fixed a bug in UPDATE involving multiple-part keys where you specified all key parts both in the update and the WHERE part. In this case MySQL could try to update a record that didn't match the whole WHERE part.

  • Changed drop table to first drop the tables and then the .frm file.

  • Fixed a bug in the host name cache which caused mysqld to report the host name as '' in some error messages.

  • Fixed a bug with HEAP type tables; the variable max_heap_table_size wasn't used. Now either MAX_ROWS or max_heap_table_size can be used to limit the size of a HEAP type table.

  • Changed the default server-id value to 1 for masters and 2 for slaves to make it easier to use the binary log.

  • Renamed bdb_lock_max variable to bdb_max_lock.

  • Added support for AUTO_INCREMENT on sub-fields for BDB tables.

  • Added ANALYZE TABLE of BDB tables.

  • In BDB tables, we now store the number of rows; this helps to optimize queries when we need an approximation of the number of rows.

  • If we get an error in a multiple-row statement, we now only roll back the last statement, not the entire transaction.

  • If you do a ROLLBACK when you have updated a nontransactional table you get an error as a warning.

  • Added --bdb-shared-data option to mysqld.

  • Added Slave_open_temp_tables status variable to mysqld

  • Added binlog_cache_size and max_binlog_cache_size variables to mysqld.

  • DROP TABLE, RENAME TABLE, CREATE INDEX and DROP INDEX are now transaction endpoints.

  • If you do a DROP DATABASE on a symbolically linked database, both the link and the original database are deleted.

  • Fixed DROP DATABASE to work on OS/2.

  • Fixed bug when doing a SELECT DISTINCT ... table1 LEFT JOIN table2 ... when table2 was empty.

  • Added --abort-slave-event-count and --disconnect-slave-event-count options to mysqld for debugging and testing of replication.

  • Fixed replication of temporary tables. Handles everything except slave server restart.

  • SHOW KEYS now shows whether key is FULLTEXT.

  • New script mysqld_multi. See Section 4.3.4, “mysqld_multi — Manage Multiple MySQL Servers”.

  • Added new script, Thanks to Tim Bunce for modifying mysql.server to easily handle hosts running many mysqld processes.

  • safe_mysqld, mysql.server, and mysql_install_db have been modified to use my_print_defaults instead of various hacks to read the my.cnf files. In addition, the handling of various paths has been made more consistent with how mysqld handles them by default.

  • Automatically remove Berkeley DB transaction logs that no longer are in use.

  • Fixed bug with several FULLTEXT indexes in one table.

  • Added a warning if number of rows changes on REPAIR TABLE/OPTIMIZE TABLE.

  • Applied patches for OS/2 by Yuri Dario.

  • FLUSH TABLES tbl_name didn't always flush the index tree to disk properly.

  • --bootstrap is now run in a separate thread. This fixes a problem that caused mysql_install_db to core dump on some Linux machines.

  • Changed mi_create() to use less stack space.

  • Fixed bug with optimizer trying to over-optimize MATCH() when used with UNIQUE key.

  • Changed crash-me and the MySQL benchmarks to also work with FrontBase.

  • Permit RESTRICT and CASCADE after DROP TABLE to make porting easier.

  • Reset status variable which could cause problem if one used --log-slow-queries.

  • Added connect_timeout variable to mysql and mysqladmin.

  • Added connect-timeout as an alias for timeout for option files read by mysql_options().