Fixed problem with types of user variables. (Bug #551)
Fixed problem with configure ... --localstatedir=....
Cleaned up mysql.server script.
Fixed a bug in mysqladmin shutdown when pid file was modified while mysqladmin was still waiting for the previous one to disappear. This could happen during a very quick restart and caused mysqladmin to hang until shutdown_timeout seconds had passed.
Don't increment warnings when setting AUTO_INCREMENT columns to NULL in LOAD DATA INFILE.
Fixed all boolean type variables/options to work with the old syntax, for example, all of these work: --lower-case-table-names, --lower-case-table-names=1, -O lower-case-table-names=1, --set-variable=lower-case-table-names=1
Fixed shutdown problem (SIGTERM signal handling) on Solaris. (Bug from 4.0.2).
SHOW MASTER STATUS now returns an empty set if binary log is not enabled.
SHOW SLAVE STATUS now returns an empty set if slave is not initialized.
Don't update MyISAM index file on update if not strictly necessary.
Fixed bug in SELECT DISTINCT ... FROM many_tables ORDER BY not-used-column.
Fixed a bug with BIGINT values and quoted strings.
Added QUOTE() function that performs SQL quoting to produce values that can be used as data values in queries.
Changed variable DELAY_KEY_WRITE to an enum to allow one set DELAY_KEY_WRITE for all tables without taking down the server.
Changed behavior of IF(condition,column,NULL) so that it returns the value of the column type.
Made safe_mysqld a symlink to mysqld_safe in binary distribution.
Fixed security bug when having an empty database name in the user.db table.
Fixed some problems with CREATE TABLE ... SELECT function().
mysqld now has the option --temp-pool enabled by default as this gives better performance with some operating systems.
Fixed problem with too many allocated alarms on slave when connecting to master many times (normally not a very critical error).
Fixed hang in CHANGE MASTER TO if the slave thread died very quickly.
Big cleanup in replication code (less logging, better error messages, etc..)
If the --code-file option is specified, the server calls setrlimit() to set the maximum allowed core file size to unlimited, so core files can be generated.
Fixed bug in query cache after temporary table creation.
Added --count=N (-c) option to mysqladmin, to make the program do only N iterations. To be used with --sleep (-i). Useful in scripts.
Fixed bug in multiple-table UPDATE: when updating a table, do_select() became confused about reading records from a cache.
Fixed bug in multiple-table UPDATE when several fields were referenced from a single table
Fixed bug in truncating nonexisting table.
Fixed bug in REVOKE that caused user resources to be randomly set.
Fixed bug in GRANT for the new CREATE TEMPORARY TABLE privilege.
Fixed bug in multiple-table DELETE when tables are re-ordered in the table initialization method and ref_lengths are of different sizes.
Fixed two bugs in SELECT DISTINCT with large tables.
Fixed bug in query cache initialization with very small query cache size.
Allow DEFAULT with INSERT statement.
The startup parameters myisam_max_sort_file_size and myisam_max_extra_sort_file_size are now given in bytes, not megabytes.
External system locking of MyISAM/ISAM files is now turned off by default. One can turn this on with --external-locking. (For most users this is never needed).
Fixed core dump bug with INSERT ... SET db_name.table_name.colname="".
Fixed client hangup bug when using some SQL commands with incorrect syntax.
Fixed a timing bug in DROP DATABASE
New SET [GLOBAL | SESSION] syntax to change thread-specific and global server variables at runtime.
Added variable slave_compressed_protocol.
Renamed variable query_cache_startup_type to query_cache_type, myisam_bulk_insert_tree_size to bulk_insert_buffer_size, record_buffer to read_buffer_size and record_rnd_buffer to read_rnd_buffer_size.
Renamed some SQL variables, but old names will still work until 5.0. See Upgrading-from-3.23.
Renamed --skip-locking to --skip-external-locking.
Removed unused variable query_buffer_size.
Fixed a bug that made the pager option in the mysql client non-functional.
Added full AUTO_INCREMENT support to MERGE tables.
Extended LOG() function to accept an optional arbitrary base parameter. See Mathematical functions.
Added LOG2() function (useful for finding out how many bits a number would require for storage).
Added LN() natural logarithm function for compatibility with other databases. It is synonymous with LOG(X).