-----BEGIN PGP SIGNED MESSAGE----- Hash: SHA1 Hi,
MySQL 4.1.3, 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 http://www.mysql.com/downloads/ 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 the first beta development release, adding new features and fixing recently discovered bugs. The change to "beta" level indicates, that all planned major features for MySQL 4.1 have been implemented by now. The focus is now on testing and stabilizing these new features and the rest of the code base. Please refer to our bug database at http://bugs.mysql.com/ for more details about the individual bugs fixed in this version. News from the ChangeLog: Functionality added or changed: * Language-specific collations were added for the ucs2 and utf8 Unicode character sets: Icelandic, Latvian, Romanian, Slovenian, Polish, Estonian, Swedish, Turkish, Czech, Danish, Lithuanian, Slovak, Spanish, Traditional Spanish. * Support for per-connection time zones was added. Now you can select current time zone for connection by setting system @@time_zone variable to a value such as '+10:00' or 'Europe/Moscow' (where 'Europe/Moscow' is the name of one of the time zones described in the system tables). Functions like CURRENT_TIMESTAMP, UNIX_TIMESTAMP, and so forth honor this time zone. Values of TIMESTAMP type are also interpreted as values in this time zone (so now our TIMESTAMP type behaves similar to Oracle's TIMESTAMP WITH LOCAL TIME ZONE, that is, values stored in such a column are normalized towards UTC and converted back to the current connection time zone when they are retrieved from such a column). * Basic datetime with time zone conversion function CONVERT_TZ() was added. It assumes that its first argument is a datetime value in the time zone specified by its second argument and returns equivalent datetime value in time zone specified by its third argument. * CHECK TABLE now can be killed. See section "KILL Syntax" in the manual. * Warning: Incompatible change! C API change: mysql_shutdown() now requires a second argument. This is a source-level incompatibility that affects how you compile client programs; it does not affect the ability of compiled clients to communicate with older servers. See section "mysql_shutdown()" in the manual. * OPTIMIZE TABLE for InnoDB tables is now mapped to ALTER TABLE instead of ANALYZE TABLE. * sync_frm is now a settable global variable (not only a startup option). * Added the sync-binlog=N global variable and startup option, which makes the MySQL server synchronize its binary log to disk (fdatasync()) after every Nth write to the binary log. * Changed the slave SQL thread to print fewer useless error messages (no more message duplication; no more messages when an error is skipped (because of slave-skip-errors). * DROP DATABASE IF EXISTS, DROP TABLE IF EXISTS, single-table DELETE and single-table UPDATE are now written to the binary log even if they changed nothing on the master (for example, even if the DELETE matched no row). The old behavior sometimes caused bad surprises in replication setups. * Replication and mysqlbinlog now have better support for the case that the session character set and collation variables are changed within a given session. See section "Replication Features and Known Problems" in the manual. * Added --innodb-safe-binlog server option, which adds consistency guarantees between the content of InnoDB tables and the binary log. See section "The Binary Log" in the manual. * LIKE now supports the use of a prepared statement parameter or delimited constant expression as the argument to ESCAPE (Bug #4200). Bugs fixed: * Added missing root user to Windows version of mysqld. (Bug #4242) * Fixed bug in prepared EXPLAIN statement which led to server crash. (Bug #4271) * Fixed a bug of using parameters in some prepared statements via SQL syntax. (Bug #4280) * Fixed a bug in MERGE tables created with INSERT_METHOD=LAST, that were not able to report a key number that caused "Duplicate entry" error for UNIQUE key in INSERT. As a result, error message was not precise enough (error 1022 instead of error 1062) and INSERT ... ON DUPLICATE KEY UPDATE did not work. (Bug #4008) * Fixed a bug in DELETE from a table with FULLTEXT indexes which under rare circumstances could result in a corrupted table, if words of different lengths may be considered equal (which is possible in some collations, e.g. in utf8_general_ci or latin1_german2_ci.) (Bug #3808) * Fixed too early unlocking tables if we have subquery in HAVING clause. (Bug #3984) * Fixed a bug in mysqldump when it didn't return an error if the output device was filled (Bug #1851) * Fixed a bug in client side conversion of string column to MYSQL_TIME application buffer (prepared statements API). (Bug #4030) * Fixed a bug with server crash on attempt to execute a non-prepared statement. (Bug #4236) * Fixed a bug with server crash on attempt to prepare a statement with character set introducer. (Bug #4105) * Fixed bug which caused different number of warnings to be generated when bad datetime as string or as number was inserted into DATETIME or TIMESTAMP column. (Bug #2336) * Fixed some byte order bugs with prepared statements on machines with high-byte-first. (Bug #4173) * Fixed unlikely bug in the range optimzer when using many IN() queries on different key parts. (Bug #4157) * Fixed problem with NULL and derived tables. (Bug #4097) * Fixed wrong UNION results if display length of fields for numeric types was set less then real length of values in them. (Bug #4067) * Fixed a bug in mysql_stmt_close(), which hung up when attempting to close statement after failed mysql_stmt_fetch(). (Bug #4079) * Fixed bug of re-execution optimized COUNT(*), MAX() and MIN() functions in prepared statements. (Bug #2687) * Fixed a bug with COUNT(DISTINCT) performance degradation in cases like COUNT(DISTINCT a TEXT, b CHAR(1)) (no index used). (Bug #3904) * Fixed a bug in MATCH ... AGAINST(... IN BOOLEAN MODE) that under rare circumstances could cause wrong results if in the data's collation one byte could match many (like in utf8_general_ci or latin1_german2_ci.) (Bug #3964) * Fixed a bug in prepared statements protocol, when microseconds part of MYSQL_TYPE_TIME/MYSQL_TYPE_DATETIME columns was not sent to the client. (Bug #4026) * Fixed a bug that using --with-charset with configure didn't affect the MySQL client library. (Bug #3990) * Fixed a bug in authentication code that allowed a malicious user to bypass password verification with specially crafted packets (using a modified client library). * Fixed bug with wrong result of CONCAT(?, column) in prepared statements. (Bug #3796) * mysql_fix_privilege_tables didn't correctly handle the argument of its --password=# option. (Bug #4240) * Fixed potential memory overrun in mysql_real_connect() (which required a compromised DNS server and certain operating systems). (Bug #4017) * During the installation process of the server RPM on Linux, mysqld was run as the root system user, and if you had --log-bin=<somewhere_out_of_var_lib_mysql> it created binary log files owned by root in this directory, which remained owned by root after the installation. This is now fixed by starting mysqld as the mysql system user instead. (Bug #4038) * Made DROP DATABASE honor the value of lower_case_table_names. (Bug #4066) * The slave SQL thread refused to replicate INSERT ... SELECT if it examined more than 4 billion rows. (Bug #3871) * mysqlbinlog didn't escape the string content of user variables, and did not deal well when these variables were in non-ASCII character sets; this is now fixed by always printing the string content of user variables in hexadecimal. The character set and collation of the string is now also printed. (Bug #3875) Additional notes: * Please note that a few binary packages (e.g. the "Max" packages) are missing from the initial release. These will be made available as soon as they are ready. Bye, LenZ - -- Lenz Grimmer <[EMAIL PROTECTED]> Senior Production Engineer MySQL GmbH, http://www.mysql.de/ Hamburg, Germany -----BEGIN PGP SIGNATURE----- Version: GnuPG v1.2.4 (GNU/Linux) Comment: For info see http://quantumlab.net/pine_privacy_guard/ iD8DBQFA5CSLSVDhKrJykfIRAsowAJ0fvFlqN0PWKgKXU+dFeVf84EfMtwCfTcXL SFapYlMsi1GzLy5P57etbOQ= =50hg -----END PGP SIGNATURE----- -- MySQL General Mailing List For list archives: http://lists.mysql.com/mysql To unsubscribe: http://lists.mysql.com/[EMAIL PROTECTED]