:: DEVELOPER ZONE
Funcionalidades adicionadas ou alteradas:
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 option 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 signals 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.
Atualizado o mysql_install_db para poder usar o endereço de IP da
máquina local em vez do nome da máquina ao criar as tabelas de permissões
iniciais de skip-name-resolve foi especificado.
Esta opção pode ser útil no FreeBSD para evitar problemas de segurança de
threads com o resolver de bibliotecas do FreeBSD. (Obrigado a Jeremy Zawodny
pelo patch)
A documentation change: Added a note that when backing up a slave, it is
necessary also to back up the master.info and relay-log.info
files, as well as any SQL_LOAD-* files located in the directory
specified by the --slave-load-tmpdir option. All these files are
needed when the slave resumes replication after you restore the slave's data.
Bugs corrigidos:
Fixed a spurious error ERROR 14: Can't change size of file (Errcode: 2)
on Windows in DELETE FROM table_name without a WHERE clause or
TRUNCATE TABLE table_name, when table_name is a MyISAM
table. (Bug #1397)
Fixed a bug that resulted in thr_alarm queue is full warnings after
increasing the max_connections variable with SET GLOBAL.
(Bug #1435)
Made LOCK TABLES to work when Lock_tables_priv is granted on the
database level and Select_priv is granted on the table level.
Fixed crash of FLUSH QUERY CACHE on queries that use same table
several times (Bug #988).
Fixed core dump bug when setting an enum system variable (such as
SQL_WARNINGS) to NULL.
Extended the default timeout value for Windows clients from 30 seconds
to 1 year. (The timeout that was added in MySQL 4.0.15 was way too
short). This fixes a bug that caused ERROR 2013: Lost connection to MySQL server during query for queries that lasted longer than 30 seconds,
if the client didn't specify a limit with mysql_options(). Users of
4.0.15 on Windows should upgrade to avoid this problem.
More ``out of memory'' checking in range optimiser.
Fixed and documented a problem when setting and using a user variable within the
same SELECT statement. (Bug #1194).
Fixed bug in overrun check for BLOB values with compressed tables.
This was a bug introduced in 4.0.14. It caused MySQL to regard some
correct tables containing BLOB values as corrupted.
(Bug #770, Bug #1304, and maybe Bug #1295)
SHOW GRANTS showed USAGE instead of the real column-level
privileges when no table-level privileges were given.
When copying a database from the master, LOAD DATA FROM MASTER dropped the corresponding database on the slave, thus erroneously
dropping tables that had no counterpart on the master and tables that
may have been excluded from replication using replicate-*-table
rules. Now LOAD DATA FROM MASTER no longer drops the database.
Instead, it drops only the tables that have a counterpart on the master
and that match the replicate-*-table
rules. replicate-*-db rules can still be used to include or exclude a
database as a whole from LOAD DATA FROM MASTER. A database will
also be included or excluded as a whole if there are some rules like
replicate-wild-do-table=db1.% or
replicate-wild-ignore-table=db1.%, as is already the case for
CREATE DATABASE and DROP DATABASE in replication. (Bug
#1248)
Fixed a bug where
mysqlbinlog crashed with a segmentation fault when used with the
-h or --host option. (Bug #1258)
Fixed a bug where
mysqlbinlog crashed with a segmentation fault when used on a binary log
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).
Fixed a bug when two (or more) MySQL servers were running on the same machine,
and they were both slaves, and at least one of them was replicating some
LOAD DATA INFILE command from its master.
The bug was that one slave MySQL server sometimes
deleted the SQL_LOAD-* files (used for replication of
LOAD DATA INFILE and located in the slave-load-tmpdir directory,
which defaults to tmpdir) belonging to the other slave MySQL server of
this machine, if these slaves had the same slave-load-tmpdir directory.
When that happened, the other slave could not replicate
LOAD DATA INFILE and complained about not being able to open some
SQL_LOAD-* file. (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, Bug #1381)
Code was introduced in MySQL 4.0.15 for the slave to detect that the master had died while writing a transaction to its binary log. This code 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)
© 1995-2005 MySQL AB. All rights reserved.
