Alterações na distribuição 4.0.12 (15 Mar 2003: Production)
Functionality added or changed:
mysqldno longer reads options from world-writeable config files.- Integer values between 9223372036854775807 and 9999999999999999999 are now regarded as unsigned longlongs, not as floats. This makes these values work similar to values between 10000000000000000000 and 18446744073709551615.
SHOW PROCESSLISTwill now include the client TCP port after the hostname to make it easier to know from which client the request originated.
Bugs fixed:
- Fixed
mysqldcrash on extremely small values ofsort_buffervariable. INSERT INTO u SELECT ... FROM twas written too late to the binary log if t was very frequently updated during the execution of this query. This could cause a problem withmysqlbinlogor replication. The master must be upgraded, not the slave. (Bug#136)- Fixed checking of random part of
WHEREclause. (Bug#142) - Fixed a bug with multiple-table updates with
InnoDBtables. This bug occurred as, in many cases,InnoDBtables cannot be updatedon the fly,
but offsets to the records have to be stored in a temporary table. - Added missing file
mysql_secure_installationto theserverRPM subpackage. (Bug#141) - Fixed MariaDB (and
myisamchk) crash on artificially corrupted.MYIfiles. - Don't allow
BACKUP TABLEto overwrite existing files. - Fixed a bug with multi-table
UPDATEstatements when user had all privileges on the database where tables are located and there were any entries intables_privtable, that is,grant_optionwas true. - Fixed a bug that allowed a user with table or column grants on some table,
TRUNCATEany table in the same database. - Fixed deadlock when doing
LOCK TABLEfollowed byDROP TABLEin the same thread. In this case one could still kill the thread withKILL. LOAD DATA LOCAL INFILEwas not properly written to the binary log (hence not properly replicated). (Bug#82)RAND()entries were not read correctly bymysqlbinlogfrom the binary log which caused problems when restoring a table that was inserted withRAND().INSERT INTO t1 VALUES(RAND()). In replication this worked ok.SET SQL_LOG_BIN=0was ignored forINSERT DELAYEDqueries. (Bug#104)SHOW SLAVE STATUSreported too old positions (columnsRelay_Master_Log_FileandExec_Master_Log_Pos) for the last executed statement from the master, if this statement was theCOMMITof a transaction. The master must be upgraded for that, not the slave. (Bug#52)LOAD DATA INFILEwas not replicated by the slave ifreplicate_*_tablewas set on the slave. (Bug#86)- After
RESET SLAVE, the coordinates displayed bySHOW SLAVE STATUSlooked un-reset (though they were, but only internally). (Bug#70) - Fixed query cache invalidation on
LOAD DATA. - Fixed memory leak on
ANALYZEprocedure with error. - Fixed a bug in handling
CHAR(0)columns that could cause incorrect results from the query. - Fixed rare bug with incorrect initialisation of
AUTO_INCREMENTcolumn, as a secondary column in a multi-column key (see "UsandoAUTO_INCREMENT"), when data was inserted withINSERT ... SELECTorLOAD DATAinto an empty table. - On Windows,
STOP SLAVEdidn't stop the slave until the slave got one new command from the master (this bug has been fixed for MariaDB 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) - Fixed a crash when no database was selected and
LOAD DATAcommand was issued with full table name specified, including database prefix. - Fixed a crash when shutting down replication on some platforms (for example, Mac OS X).
- Fixed a portability bug with
pthread_attr_getstacksizeon HP-UX 10.20 (Patch was also included in 4.0.11a sources). - Fixed the
biginttest to not fail on some platforms (for example, HP-UX and Tru64) due to different return values of theatof()function. - Fixed the
rpl_rotate_logstest to not fail on certain platforms (e.g. Mac OS X) due to a too long file name (changedslave-master-info.optto.slave-mi).