Functionality added or changed:
mysqld
no longer reads options from world-writeable config files.
SHOW PROCESSLIST
will now include the client TCP port after the
hostname to make it easier to know from which client the request
originated.
Bugs fixed:
mysqld
crash on extremely small values of
sort_buffer
variable.
INSERT INTO u SELECT ... FROM t
was written too late to the
binary log if t was very frequently updated during the execution of
this query. This could cause a problem with mysqlbinlog
or
replication. The master must be upgraded, not the slave. (Bug #136)
WHERE
clause. (Bug #142)
InnoDB
tables. This bug occurred as, in many cases, InnoDB
tables can not
be updated ``on the fly,'' but offsets to the records have to be stored in
a temporary table.
mysql_secure_installation
to the server
RPM subpackage. (Bug #141)
myisamchk
) crash on artificially
corrupted .MYI
files.
BACKUP TABLE
to overwrite existing files.
UPDATE
statements when user had all privileges
on the database where tables are located and there were any entries in
tables_priv
table, that is, grant_option
was true.
TRUNCATE
any table in the same database.
LOCK TABLE
followed by DROP
TABLE
in the same thread. In this case one could still kill the thread
with KILL
.
LOAD DATA LOCAL INFILE
was not properly written to the binary
log (hence not properly replicated). (Bug #82)
RAND()
entries were not read correctly by mysqlbinlog
from
the binary log which caused problems when restoring a table that was
inserted with RAND()
. INSERT INTO t1 VALUES(RAND())
. In
replication this worked ok.
SET SQL_LOG_BIN=0
was ignored for INSERT DELAYED
queries. (Bug #104)
SHOW SLAVE STATUS
reported too old positions
(columns Relay_Master_Log_File
and Exec_master_log_pos
)
for the last executed statement from the master, if this statement
was the COMMIT
of a transaction. The master must be upgraded for that,
not the slave. (Bug #52)
LOAD DATA INFILE
was not replicated by the slave if
replicate_*_table
was set on the slave. (Bug #86)
RESET SLAVE
, the coordinates displayed by SHOW
SLAVE STATUS
looked un-reset (though they were, but only
internally). (Bug #70)
LOAD DATA
.
ANALYZE
procedure with error.
CHAR(0)
columns that could cause wrong
results from the query.
AUTO_INCREMENT
column,
as a secondary column in a multi-column key (see section 3.5.9 Using AUTO_INCREMENT
), when
data was inserted with INSERT ... SELECT
or LOAD DATA
into
an empty table.
STOP SLAVE
didn't stop the slave until the slave
got one new command from the master (this bug has been fixed for MySQL 4.0.11
by releasing updated 4.0.11a Windows packages, which include this individual
fix on top of the 4.0.11 sources). (Bug #69)
LOAD DATA
command
was issued with full table name specified, including database prefix.
pthread_attr_getstacksize
on
HP-UX 10.20 (Patch was also included in 4.0.11a sources).
bigint
test to not fail on some platforms (for example, HP-UX and
Tru64) due to different return values of the atof()
function.
rpl_rotate_logs
test to not fail on certain platforms (e.g.
Mac OS X) due to a too long file name (changed slave-master-info.opt
to .slave-mi
).