DB 문서들
DSN 갤러리
MySQL News 20691 게시물 읽기
 News | Q&A | Columns | Tutorials | Devel | Files | Links
No. 20691
Mysql 4.0.17 has been released
2003-12-23 03:23ⓒ
2003-12-23 03:25ⓜ


MySQL 4.0.17, a new version of the popular Open Source/Free Software
Database Management System, has been released. It is now available in
source and binary form for a number of platforms from our download pages
at and
mirror sites.

Note that not all mirror sites may be up to date at this point in time -
if you can't find this version on some mirror, please try again later or
choose another download site.

This is a bugfix release for the current production version.

Please refer to our bug database at for more
details about the individual bugs fixed in this version.

News from the ChangeLog:

Functionality added or changed:

   * `mysqldump' no longer dumps data for `MERGE' tables. (Bug #1846)

   * `lower_case_table_names' is now forced to 1 if the database
     directory is located on a case-insensitive file system. (Bug #1812)

   * Symlink creation is now disabled on systems where `realpath()'
     doesn't work. (Before one could use `CREATE TABLE .. DATA
     DIRECTORY=..' even if `HAVE_BROKEN_REALPATH' was defined. This is
     now disabled to avoid problems when running `ALTER TABLE').

   * Inserting a negative `AUTO_INCREMENT' value in a `MyISAM' table no
     longer updates the `AUTO_INCREMENT' counter to a big unsigned
     value.  (Bug #1366)

   * Added four new modes to `WEEK(..., mode)' function.  *Note
     `WEEK(date,mode)': Date and time functions.  (Bug #1178)

   * Allow `UNION DISTINCT' syntax.

   * `mysql_server_init()' now returns 1 if it can't initialize the
     environment. (Previously `mysql_server_init()' called `exit(1)' if
     it could not create a key with `pthread_key_create()'. (Bug #2062)

   * Allow spaces in Windows service names.

   * Changed the default Windows service name for `mysqld' from `MySql'
     to `MySQL'.  This should not affect usage, because service names
     are not case sensitive.

   * When you install `mysqld' as a service on Windows systems, `mysqld'
     will read startup options in option files from the option group
     with the same name as the service name.  (Except when the service
     name is `MySQL').

Bugs fixed:

   * `INSERT DELAYED ... SELECT...' could cause table corruption because
     tables were not locked properly.  This is now fixed by ignoring
     `DELAYED' in this context. (Bug #1983)

   * One can now configure MySQL as a Windows service as a normal user.
     (Bug #1802). Thanks to Richard Hansen for fixing this.

   * Database names are now compared in lowercase in `ON' clauses when
     `lower_case_table_names' is set. (Bug #1736)

   * `IGNORE ... LINES' option to `LOAD DATA INFILE' didn't work when
     used with fixed length rows. (Bug #1704)

   * Fixed problem with `UNIX_TIMESTAMP()' for timestamps close to 0.
     (Bug #1998)

   * Fixed problem with character values greater than 128 in the
     `QUOTE()' function. (Bug #1868)

   * Fixed searching of `TEXT' with end space. (Bug #1651)

   * Fixed caching bug in multiple-table updates where same table was
     used twice.  (Bug #1711)

   * Fixed directory permissions for the MySQL-server RPM documentation
     directory.  (Bug #1672)

   * Fixed `UPDATE REPLACE' on invalid enum value. (Bug #2023)

   * `mysql' client program now correctly prints connection identifier
     returned by `mysql_thread_id()' as unsigned integer rather than as
     signed integer.  (Bug #1951)

   * `FOUND_ROWS()' could return incorrect number of rows after a query
     with an impossible `WHERE' condition. (Bug #1468)

   * `SHOW DATABASES' no longer shows `.sym' files (on Windows) that do
     not point to a valid directory. (Bug #1385)

   * Fixed a possible memory leak on Mac OS X when using the shared
     `' library. (from `pthread_key_create()'). (Bug #2061)

   * Fixed bug in `UNION' statement with alias `*'. (Bug #1249)

   * Fixed a bug in `DELETE ... ORDER BY ... LIMIT' where the rows
     where not deleted in the proper order. (Bug #1024, Bug #1697).

   * Fixed serious problem with multi-threaded programs on Windows that
     used the embedded MySQL libraries. (Locks of tables were not
     handled correctly between different threads).

   * Code cleanup: Fixed a few code defects (potential memory leaks,
     null pointer dereferences, uninitialized variables). Thanks to
     Reasoning Inc. for informing us about these findings.

   * Fixed a buffer overflow error which occured with zero prepended
     values in some columns of the type `DECIMAL'. (Bug #2128)

   * Filesort was never shown in `EXPLAIN' if query contained an `ORDER
     BY NULL' clause. (Bug #1335)

   * Fixed invalidation of whole query cache on `DROP DATABASE'. (Bug

   * Fixed bug in range optimizer that caused wrong results for some
     unlikely `AND'/`OR' queries. (Bug #1828)

   * Fixed a crash in `ORDER BY' when ordering by expression and
     identifier.  (Bug #1945)

   * Fixed a crash in an open `HANDLER' when an `ALTER TABLE' was
     executed in a different connection. (Bug #1826)

   * Fixed a bug in `trunc*' operator of full-text search which
     sometimes caused MySQL not to find all matched rows.

   * Fixed bug prepending `0' characters to `DECIMAL' column values.

   * Fixed optimizer bug, introduced in 4.0.16, when `REF' access plan
     was preferred to more efficient `RANGE' on another column.

   * Fixed problem when installing a MySQL server as a Windows service
     using a command of the form `mysqld --install mysql
     --defaults-file=path-to-file'.  (Bug #1643)

   * Fixed an incorrect result from a query that uses only `const'
     tables (such as one-row tables) and non-constant expression (such
     as `RAND()'). (Bug #1271)

   * Fixed bug when the optimizer did not take `SQL_CALC_FOUND_ROWS'
     into account if `LIMIT' clause was present. (Bug #1274)

   * `mysqlbinlog' now asks for a password at the console when the `-p'
     or `--password' option is used with no argument. This is
     consistent with the way that other clients such `mysqladmin' and
     `mysqldump' already behave. *Note:* A consequence of this change
     is that it is no longer possible to invoke `mysqlbinlog' as
     `mysqlbinlog -p pass_val' (with a space between the `-p' option
     and the following password value).  (Bug #1595)

   * Fixed bug accidentally introduced in 4.0.16 where the slave SQL
     thread deleted its replicated temporary tables when `STOP SLAVE'
     was issued.

   * In a "chain" replication setup `A->B->C', if 2 sessions on A
     updated temporary tables of the same name at the same time, the
     binary log of `B' became incorrect, resulting in `C' becoming
     confused.  (Bug #1686)

   * In a "chain" replication setup `A->B->C', if `STOP SLAVE' was
     issued on `B' while it was replicating a temporary table from `A',
     then when `START SLAVE' was issued on `B', the binary log of `B'
     became incorrect, resulting in `C' becoming confused.  (Bug #1240)

   * When `MASTER_LOG_FILE' and `MASTER_LOG_POS' were not specified,
     `CHANGE MASTER' used the coordinates of the slave I/O thread to
     set up replication, which broke replication if the slave SQL
     thread lagged behind the slave I/O thread. This caused the slave
     SQL thread to lose some events. The new behavior is to use the
     coordinates of the slave SQL thread instead.  *Note `CHANGE MASTER
     TO': CHANGE MASTER TO.  (Bug #1870)

   * Now if integer is stored or converted to `TIMESTAMP' or `DATETIME'
     value checks of year, month, day, hour, minute and second ranges
     are performed and numbers representing illegal timestamps are
     converted to 0 value. This behavior is consistent with manual and
     with behavior of string to `TIMESTAMP'/`DATETIME' conversion. (Bug

   * Fixed bug when `BIT_AND()' and `BIT_OR()' group functions returned
     incorrect value if `SELECT' used a temporary table and no rows
     were found. (Bug #1790).

   * `BIT_AND()' is now unsigned in all contexts. This means that it
     will now return 18446744073709551615 (= 0xffffffffffffffff)
     instead of -1 if there were no rows in the result.

   * Fixed bug with `BIT_AND()' still returning signed value for an
     empty set in some cases. (Bug #1972)

   * Fixed bug with `^' (XOR) and `>>' (bit shift) still returning
     signed value in some cases. (Bug #1993)

   * Replication: a rare race condition in the slave SQL thread, which
     could lead to a wrong complain that the relay log is corrupted.
     (Bug #2011)

   * Replication: if an administrative command on a table (`OPTIMIZE
     TABLE', `REPAIR TABLE' etc) was run on the slave, this could
     sometimes stop the slave SQL thread (this did not led to any
     corruption; one just had to type `START SLAVE' to get replication
     going again). (Bug #1858)

   * Replication: in the slave SQL thread, a multi-table `UPDATE' could
     produce a wrong complain that some record was not found in one
     table, if the `UPDATE' was preceded by a `INSERT ... SELECT'. (Bug

   * Fixed deficiency in MySQL code which is responsible for scanning
     directories. This deficiency caused `SHOW TABLE STATUS' to be very
     slow for big number of tables in database even if single
     particular table were specified. (Bug #1952)

Additional notes:

- In addition to RPMs for Linux/x86 and Linux/AMD64, we now also provide
   RPM packages for Linux/IA64. These are optimized to run on Linux with
   Itanium 2 processors, but should run on Itanium 1 systems as well. They
   are built on Red Hat Linux AS 2.1.
- Our Mac OS X build host has been upgraded to Mac OS X 10.2.8
- Our FreeBSD/sparc64 build host has been upgraded to FreeBSD 5.1


21955MySQL 4.0.20 Released (2004년 5월 17일)
21036MySQL 4.0.18 Released
20711MySQL 5.0.0 has been released
20691Mysql 4.0.17 has been released
20617MaxDB 릴리즈됐네요.
20582MySQL 4.1.1 has been released. [1]
20472MySQL release MaxDB
Valid XHTML 1.0!
All about the DATABASE... Copyleft 1999-2024 DSN, All rights reserved.
작업시간: 0.018초, 이곳 서비스는
	PostgreSQL v16.2로 자료를 관리합니다