Alterações na distribuição 4.0.5 (13 Nov 2002)
Functionality added or changed:
- Port number was added to host name (if it is known) in
SHOW PROCESSLIST
command - Changed handling of last argument in
WEEK()
so that one can get week number according to the ISO 8601 specification. (Old code should still work). - Fixed that
INSERT DELAYED
threads doesn't hang onWaiting for INSERT
when one sends aSIGHUP
to mysqld. - Change that
AND
works according to SQL-99 when it comes toNULL
handling. In practice, this only affects queries where you do something likeWHERE ... NOT (NULL AND 0)
. mysqld
will now resolvebasedir
to its full path (withrealpath()
). This enables one to use relative symlinks to the MariaDB installation directory. This will however causeshow variables
to report different directories on systems where there is a symbolic link in the path.- Fixed that MariaDB will not use index scan on index disabled with
IGNORE INDEX
orUSE INDEX
. to be ignored. - Added
--use-frm
option tomysqlcheck
. When used withREPAIR
, it gets the table structure from the.frm
file, so the table can be repaired even if the.MYI
header is corrupted. - Fixed bug in
MAX()
optimization when used withJOIN
andON
expressions. - Added support for reading of MariaDB table definition files.
BETWEEN
behaviour changed (see "Operadores de Comparação"). Nowdatetime_col BETWEEN timestamp AND timestamp
should work as expected.- One can create
TEMPORARY
MERGE
tables now. DELETE FROM myisam_table
now shrinks not only the.MYD
file but also the.MYI
file.- When one uses the
--open-files-limit=#
option tomysqld_safe
it's now passed on tomysqld
. - Changed output from
EXPLAIN
from'where used'
to'Using where'
to make it more in line with other output. - Removed variable
safe_show_database
as it was no longer used. - Updated source tree to be built using
automake 1.5
andlibtool 1.4
. - Fixed an inadvertently changed option (
--ignore-space
) back to the original--ignore-spaces
inmysqlclient
. (Both syntaxes will work). - Don't require
UPDATE
privilege when usingREPLACE
. - Added support for
DROP TEMPORARY TABLE ...
, to be used to make replication safer. - When transactions are enabled, all commands that update temporary tables inside a
BEGIN/COMMIT
are now stored in the binary log onCOMMIT
and not stored if one doesROLLBACK
. This fixes some problems with non-transactional temporary tables used inside transactions. - Allow braces in joins in all positions. Formerly, things like
SELECT * FROM (t2 LEFT JOIN t3 USING (a)), t1
worked, but notSELECT * FROM t1, (t2 LEFT JOIN t3 USING (a))
. Note that braces are simply removed, they do not change the way the join is executed. InnoDB
now supports also isolation levelsREAD UNCOMMITTED
andREAD COMMITTED
. For a detailedInnoDB
changelog, see "Histórico de Alterações do InnoDB" in this manual.
Bugs fixed:
- Fixed bug in
MAX()
optimization when used withJOIN
andON
expressions. - Fixed that
INSERT DELAY
threads don't hang onWaiting for INSERT
when one sends aSIGHUP
tomysqld
. - Fixed that MariaDB will not use an index scan on an index that has been disabled with
IGNORE INDEX
orUSE INDEX
. - Corrected test for
root
user inmysqld_safe
. - Fixed error message issued when storage engine cannot do
CHECK
orREPAIR
. - Fixed rare core dump problem in complicated
GROUP BY
queries that didn't return any result. - Fixed
mysqlshow
to work properly with wildcarded database names and with database names that contain underscores. - Portability fixes to get MariaDB to compile cleanly with Sun Forte 5.0.
- Fixed
MyISAM
crash when using dynamic-row tables with huge numbers of packed fields. - Fixed query cache behaviour with
BDB
transactions. - Fixed possible floating point exception in
MATCH
relevance calculations. - Fixed bug in full-text search
IN BOOLEAN MODE
that madeMATCH
to return incorrect relevance value in some complex joins. - Fixed a bug that limited
MyISAM
key length to a value slightly less that 500. It is exactly 500 now. - Fixed that
GROUP BY
on columns that may have aNULL
value doesn't always use disk based temporary tables. - The filename argument for the
--des-key-file
argument tomysqld
is interpreted relative to the data directory if given as a relative pathname. - Removed a condition that temp table with index on column that can be
NULL
has to beMyISAM
. This was okay for 3.23, but not needed in 4.*. This resulted in slowdown in many queries since 4.0.2. - Small code improvement in multi-table updates.
- Fixed a newly introduced bug that caused
ORDER BY ... LIMIT row_count
to not return all rows. - Fixed a bug in multi-table deletes when outer join is used on an empty table, which gets first to be deleted.
- Fixed a bug in multi-table updates when a single table is updated.
- Fixed bug that caused
REPAIR TABLE
andmyisamchk
to corruptFULLTEXT
indexes. - Fixed bug with caching the
MariaDB
grant table database. Now queries in this database are not cached in the query cache. - Small fix in
mysqld_safe
for some shells. - Give error if a
MyISAM
MERGE
table has more than 2 ^ 32 rows and MariaDB was not compiled with-DBIG_TABLES
. - Fixed some
ORDER BY ... DESC
problems withInnoDB
tables.