MySQL Server 5.5.3-m3 and MySQL Server 5.5.4-m3 have been released
Posted by: Daniel Fischer
Date: April 13, 2010 11:13AM
Date: April 13, 2010 11:13AM
Dear MySQL users, MySQL Server 5.5.3-m3, a new version of the popular Open Source Database Management System, has been released. We've also released MySQL Server 5.5.4-m3 for Linux on x86_64 only at this time; it contains a new version of InnoDB including several performance enhancements in comparison to MySQL Server 5.5.3-m3. The "-m3" suffix tells these releases belong to the third milestone according to our "milestone" release model, also called "Celosia". You can read more about the release model and the planned milestones at http://forge.mysql.com/wiki/Development_Cycle The new features in these releases are of beta quality. As with any other pre-production release, caution should be taken when installing on production level systems or systems with critical data. For a list of known bugs reported against MySQL Server 5.5.3-m3, please see http://bugs.mysql.com/saved/5.5.3-m3-bugs Please note that *downgrading* from these releases to a previous release series, including MySQL Server 5.5 milestone 2 (Betony) releases, is not supported. For production level systems using 5.1, we would like to direct your attention to the product description of MySQL Enterprise at: http://mysql.com/products/enterprise/ MySQL 5.5 is based on MySQL 5.4, which won't get any further updates. MySQL 5.5 includes several high-impact changes to address scalability and performance issues in MySQL Server. These changes exploit advances in hardware and CPU design and enable better utilization of existing hardware. For an overview of what's new in MySQL 5.5, please see the section "What Is New in MySQL 5.5" below, or view it online at http://dev.mysql.com/doc/refman/5.5/en/mysql-nutshell.html For information on installing MySQL 5.5.3-m3 or MySQL 5.5.4-m3 on new servers, please see the MySQL installation documentation at http://dev.mysql.com/doc/refman/5.5/en/installing.html For upgrading from previous MySQL releases, please see the important upgrade considerations at http://dev.mysql.com/doc/refman/5.5/en/upgrading-from-previous-series.html MySQL Server 5.5 is available in source and binary form for a number of platforms from the "Development Releases" selection of our download pages at http://dev.mysql.com/downloads/mysql/ Not all mirror sites may be up to date at this point in time, so if you can't find this version on some mirror, please try again later or choose another download site. We welcome and appreciate your feedback, bug reports, bug fixes, patches, etc.: http://forge.mysql.com/wiki/Contributing The list of all "Bugs Fixed" may also be viewed online at http://dev.mysql.com/doc/refman/5.5/en/news-5-5-3.html Special note for those of you who build from source: In MySQL 5.5.3-m3, CMake joins GNU autotools as a build framework for all platforms. We've previously already used CMake on Windows. Our existing support for GNU autotools isn't going away just yet, but if you are so inclined, you can now alternatively use CMake as per the instructions on the web page linked below. As always, we value your feedback! http://forge.mysql.com/wiki/CMake Enjoy! Daniel Changes in MySQL 5.5.4: InnoDB Plugin Notes: * This release includes InnoDB Plugin 1.1. Bugs fixed: * The mysqld option to turn on support for large pages was erroneously linked to the internal variable that stores whether large file support is available. Turning large_pages on would show both support for large pages and for large files as available without actually turning on support for large pages. Turning large_pages off would show both as turned off without any actual implication to large file support, which is compiled in at build time. This bug was introduced in MySQL Server 5.5.3-m3. (Bug#52716: http://bugs.mysql.com/bug.php?id=52716) Changes in MySQL 5.5.3: Performance Schema Notes: * MySQL Server now includes Performance Schema, a feature for monitoring server execution at a low level. It is implemented via the PERFORMANCE_SCHEMA storage engine and the performance_schema database. Performance Schema focuses primarily on performance data. This differs from INFORMATION_SCHEMA, which serves for inspection of metadata. For more information, see Chapter 20, "MySQL Performance Schema." Performance Schema support is included in binary MySQL distributions. It is disabled by default. To enable it, start the server with the --performance_schema option. To create the performance_schema database if you are upgrading from an earlier release, run mysql_upgrade and restart the server. See Section 4.4.7, "mysql_upgrade --- Check Tables for MySQL Upgrade." InnoDB Plugin Notes: * This release includes InnoDB Plugin 1.0.6. This version is considered of Release Candidate (RC) quality. Functionality added or changed: * Performance: The performance of internal functions that trim multiple spaces from strings when comparing them has been improved. (Bug#14637: http://bugs.mysql.com/bug.php?id=14637) * Incompatible Change: The following obsolete constructs have been removed. Where alternatives are shown, applications should be updated to use them. + The log_bin_trust_routine_creators system variable (use log_bin_trust_function_creators). + The myisam_max_extra_sort_file_size system variable. + The record_buffer system variable (use read_buffer_size). + The sql_log_update system variable. + The table_type system variable (use storage_engine). + The FRAC_SECOND modifier for the TIMESTAMPADD() function. + The TYPE table option to specify the storage engine for CREATE TABLE or ALTER TABLE (use ENGINE). + The SHOW TABLE TYPES SQL statement (use SHOW ENGINES). + The SHOW INNODB STATUS (http://dev.mysql.com/doc/refman/5.4/en/show-innodb- status.html) and SHOW MUTEX STATUS SQL statements (use SHOW ENGINE INNODB STATUS SHOW ENGINE INNODB MUTEX). + The SHOW PLUGIN SQL statement (use SHOW PLUGINS). + The LOAD TABLE ... FROM MASTER and LOAD DATA FROM MASTER SQL statements (use mysqldump or mysqlhotcopy to dump tables and mysql to reload dump files). + The BACKUP TABLE (http://dev.mysql.com/doc/refman/5.4/en/backup-table .html) and RESTORE TABLE (http://dev.mysql.com/doc/refman/5.4/en/restore-tabl e.html) SQL statements (use mysqldump or mysqlhotcopy to dump tables and mysql to reload dump files). + TIMESTAMP(N) data type: The ability to specify a display width of N (use without N). + The --default-character-set and --default-collation server options (use --character-set-server and --collation-server). + The --delay-key-write-for-all-tables server option (use --delay-key-write=ALL). + The --enable-locking and --skip-locking server options (use --external-locking and --skip-external-locking). + The --log-bin-trust-routine-creators server option (use --log-bin-trust-function-creators). + The --log-long-format server option. + The --log-update server option. + The --master-xxx server options to set replication parameters (use the CHANGE MASTER TO statement instead): --master-host, --master-user, --master-password , --master-port, --master-connect-retry, --master-ssl, --master-ssl-ca, --master-ssl-capath, --master-ssl-cert, --master-ssl-cipher, --master-ssl-key. + The --safe-show-database server option. + The --skip-symlink and --use-symbolic-links server options (use --skip-symbolic-links and --symbolic-links). + The --sql-bin-update-same server option. + The --warnings server option (use --log-warnings). + The --no-named-commands option for mysql (use --skip-named-commands + The --no-pager option for mysql (use --skip-pager). + The --no-tee option for mysql (use --skip-tee). + The --position option for mysqlbinlog (use --start-position). + The --all option for mysqldump (use --create-options). + The --first-slave option for mysqldump (use --lock-all-tables). + The --config-file option for mysqld_multi (use --defaults-extra-file). + The --set-variable=var_name=value and -O var_name=value general-purpose options for setting program variables (use --var_name=value). (Bug#48048: http://bugs.mysql.com/bug.php?id=48048) See also Bug#47974: http://bugs.mysql.com/bug.php?id=47974. * Incompatible Change: Aliases for wildcards (as in SELECT t.* AS 'alias' FROM t) are no longer accepted and result in an error. Previously, such aliases were ignored silently. (Bug#27249: http://bugs.mysql.com/bug.php?id=27249) * Incompatible Change: FLUSH TABLES has a new variant, FLUSH TABLES tbl_list WITH READ LOCK. This variant enables tables to be flushed and locked in a single operation. It provides a workaround for the restriction (due to work done for Bug#989: http://bugs.mysql.com/bug.php?id=989) that FLUSH TABLES is disallowed when there is an active LOCK TABLES ... READ. See also Bug#42465: http://bugs.mysql.com/bug.php?id=42465. * Incompatible Change: The server now includes dtoa, a library for conversion between strings and numbers by David M. Gay. In MySQL, this library provides the basis for improved conversion between string or DECIMAL values and approximate-value (FLOAT/DOUBLE) numbers: + Consistent conversion results across platforms, which eliminates, for example, Unix versus Windows conversion differences. + Accurate representation of values in cases where results previously did not provide sufficient precision, such as for values close to IEEE limits. + Conversion of numbers to string format with the best possible precision. The precision of dtoa is always the same or better than that of the standard C library functions. Because the conversions produced by this library differ in some cases from previous results, the potential exists for incompatibilities in applications that rely on previous results. For example, applications that depend on a specific exact result from previous conversions might need adjustment to accommodate additional precision. For additional information about the properties of dtoa conversions, see Section 11.2.2, "Type Conversion in Expression Evaluation." See also Bug#12860: http://bugs.mysql.com/bug.php?id=12860, Bug#21497: http://bugs.mysql.com/bug.php?id=21497, Bug#26788: http://bugs.mysql.com/bug.php?id=26788, Bug#24541: http://bugs.mysql.com/bug.php?id=24541, Bug#34015: http://bugs.mysql.com/bug.php?id=34015. * Incompatible Change: The Unicode implementation has been extended to provide support for supplementary characters that lie outside the Basic Multilingual Plane (BMP). Noteworthy features: + utf16 and utf32 character sets have been added. These correspond to the UTF-16 and UTF-32 encodings of the Unicode character set, and they both support supplementary characters. + The utf8mb4 character set has been added. This is similar to utf8, but its encoding allows up to four bytes per character to enable support for supplementary characters. + The ucs2 character set is essentially unchanged except for the inclusion of some newer BMP characters. In most respects, upgrading to MySQL 5.5 should present few problems with regard to Unicode usage, although there are some potential areas of incompatibility. These are the primary areas of concern: + For the variable-length character data types (VARCHAR and the TEXT types), the maximum length in characters is less for utf8mb4 columns than for utf8 columns. + For all character data types (CHAR, VARCHAR, and the TEXT types), the maximum number of characters that can be indexed is less for utf8mb4 columns than for utf8 columns. Consequently, if you want to upgrade tables from utf8 to utf8mb4 to take advantage of supplementary-character support, it may be necessary to change some column or index definitions. For additional details about the new Unicode character sets and potential incompatibilities, see Section 9.1.10, "Unicode Support," and Section 9.1.11, "Upgrading from Previous to Current Unicode Support." * Incompatible Change: Several columns were added to the INFORMATION_SCHEMA.ROUTINES table to provide information about the RETURNS clause data type for stored functions: DATA_TYPE, CHARACTER_MAXIMUM_LENGTH, CHARACTER_OCTET_LENGTH, NUMERIC_PRECISION, NUMERIC_SCALE, CHARACTER_SET_NAME, and COLLATION_NAME. This change produces an incompatibility for applications that depend on column order in the ROUTINES table because the new columns appear between the ROUTINE_TYPE and DTD_IDENTIFIER columns. Such applications may need to be adjusted to account for the new columns. * Important Change: Replication: RESET MASTER and RESET SLAVE now reset the values shown for Last_IO_Error, Last_IO_Errno, Last_SQL_Error, and Last_SQL_Errno in the output of SHOW SLAVE STATUS. (Bug#34654: http://bugs.mysql.com/bug.php?id=34654) See also Bug#44270: http://bugs.mysql.com/bug.php?id=44270. * Important Change: The --skip-thread-priority option is now deprecated such that the server won't change the thread priorities by default. Giving threads different priorities might yield marginal improvements in some platforms (where it actually works), but it might instead cause significant degradation depending on the thread count and number of processors. Meddling with the thread priorities is a not a safe bet as it is very dependent on the behavior of the CPU scheduler and system where MySQL is being run. (Bug#35164: http://bugs.mysql.com/bug.php?id=35164, Bug#37536: http://bugs.mysql.com/bug.php?id=37536) * Cluster Replication: Replication: MySQL Replication now supports attribute promotion and demotion for row-based replication between columns of different but similar types on the master and the slave. For example, it is possible to promote an INT column on the master to a BIGINT column on the slave, and to demote a TEXT column to a VARCHAR column. The implementation of type demotion distinguishes between lossy and non-lossy type conversions, and their use on the slave can be controlled by setting the slave_type_conversions global server system variable. For more information, see Section 22.214.171.124.2, "Row-based replication: attribute promotion and demotion." (Bug#47163: http://bugs.mysql.com/bug.php?id=47163, Bug#46584: http://bugs.mysql.com/bug.php?id=46584) * mysqltest has a new --max-connections option to set a higher number of maximum allowed server connections than the default 128. This option can also be passed via mysql-test-run.pl. (Bug#51135: http://bugs.mysql.com/bug.php?id=51135) * mysql-test-run.pl has a new --portbase option and a corresponding MTR_PORT_BASE environment variable for setting the port range, as an alternative to the existing --build-thread option. (Bug#50182: http://bugs.mysql.com/bug.php?id=50182) * SHOW PROFILE CPU has been ported to Windows. Thanks to Alex Budovski for the patch. (Bug#50057: http://bugs.mysql.com/bug.php?id=50057) * mysql-test-run.pl has a new --gprof option that runs the server through the gprof profiler, much the same way the currently supported --gcov option runs it through gcov. (Bug#49345: http://bugs.mysql.com/bug.php?id=49345) * mysqltest has a new lowercase_result command that converts the output of the next statement to lowercase. This is useful for test cases where the lettercase may vary between platforms. (Bug#48863: http://bugs.mysql.com/bug.php?id=48863) * mysqltest has a new remove_files_wildcard command that removes files matching a pattern from a directory. (Bug#39774: http://bugs.mysql.com/bug.php?id=39774) * MySQL support for adding collations using LDML specifications did not support the <i> identity rule that indicates one character sorts identically to another. The <i> rule now is supported. (Bug#37129: http://bugs.mysql.com/bug.php?id=37129) * For boolean options, the option-processing library now prints additional information in the --help message: If the option is enabled by default, the message says so and indicates that the --skip form of the option disables the option. This affects all compiled MySQL programs that use the library. (Bug#35224: http://bugs.mysql.com/bug.php?id=35224) * The use of the SQL_CACHE and SQL_NO_CACHE options in SELECT statements now is checked more restrictively: 1) Previously, both options could be given in the same statement. This is no longer true; only one can be given. 2) Previously, these options could be given in SELECT statements that were not at the top-level. This is no longer true; the options are disallowed in subqueries (including subqueries in the FROM clause, and SELECT statements in unions other than the first SELECT. (Bug#35020: http://bugs.mysql.com/bug.php?id=35020) * Added the --auto-vertical-output option to mysql which causes result sets to be displayed vertically if they are too wide for the current window, and using normal tabular format otherwise. (This applies to statements terminated by ; or \G.) (Bug#26780: http://bugs.mysql.com/bug.php?id=26780) * FLUSH LOGS now takes an optional log_type value so that FLUSH log_type LOGS can be used to flush only a specified log type. These log_type options are allowed: + BINARY closes and reopens the binary log files. + ENGINE closes and reopens any flushable logs for installed storage engines. + ERROR closes and reopens the error log file. + GENERAL closes and reopens the general query log file. + RELAY closes and reopens the relay log files. + SLOW closes and reopens the slow query log file. Thanks to Eric Bergen for the patch to implement this feature. (Bug#14104: http://bugs.mysql.com/bug.php?id=14104) * Previously, prepared CALL statements could be used via the C API only for stored procedures that produce at most one result set, and applications could not use placeholders for OUT or INOUT parameters. For prepared CALL statements used via PREPARE and EXECUTE, placeholders could not be used for OUT or INOUT parameters. For the C API, prepared CALL support now is expanded in the following ways: + A stored procedure can produce any number of result sets. The number of columns and the data types of the columns need not be the same for all result sets. + The final values of OUT and INOUT parameters are available to the calling application after the procedure returns. These parameters are returned as an extra single-row result set following any result sets produced by the procedure itself. The row contains the values of the OUT and INOUT parameters in the order in which they are declared in the procedure parameter list. + A new C API function, mysql_stmt_next_result(), is available for processing stored procedure results. See Section 21.9.15, "C API Support for Prepared CALL Statements." + The CLIENT_MULTI_RESULTS flag now is enabled by default. It no longer needs to be enabled when you call mysql_real_connect(). (This flag is necessary for executing stored procedures because they can produce multiple result sets.) For PREPARE and EXECUTE, placeholder support for OUT and INOUT parameters is now available. See Section 12.2.1, "CALL Syntax." (Bug#11638: http://bugs.mysql.com/bug.php?id=11638, Bug#17898: http://bugs.mysql.com/bug.php?id=17898) * Three options were added to mysqldump make it easier to generate a dump from a slave server: + --dump-slave is similar to --master-data, but the CHANGE MASTER TO statement contains binary log coordinates for the slave's master host, not the slave itself. + --apply-slave-statements causes STOP SLAVE and START SLAVE statements to be added before the CHANGE MASTER TO statement and at the end of the output, respectively. + --include-master-host-port causes the CHANGE MASTER TO statement to include MASTER_PORT and MASTER_HOST options for the slave's master. (Bug#8368: http://bugs.mysql.com/bug.php?id=8368) * mysqladmin now allows the password value to be omitted following the password command. In this case, mysqladmin prompts for the password value, which enables you to avoid specifying the password on the command line. Omitting the password value should be done only if password is the final command on the mysqladmin command line. Otherwise, the next argument is taken as the password. (Bug#5724: http://bugs.mysql.com/bug.php?id=5724) * The server now provides a pluggable audit interface that enables information about server operations to be reported to interested parties. Audit plugins may register with the audit interface to receive notification about server operations. When an auditable event occurs within the server, the server determines whether notification is needed. For each registered audit plugin, the server checks the event against those event classes in which the plugin is interested and passes the event to the plugin if there is a match. For more information, see Section 126.96.36.199, "Audit Plugins." * Some conversions between Japanese character sets are more efficient. * When the server detects MyISAM table corruption, it now writes additional information to the error log, such as the name and line number of the source file, and the list of threads accessing the table. Example: Got an error from thread_id=1, mi_dynrec.c:368. This is useful information to include in bug reports. * The TABLESPACES table has been added to INFORMATION_SCHEMA for tracking tablespace details. * Added the PARAMETERS table to INFORMATION_SCHEMA. The PARAMETERS table provides information about stored function and procedure parameters, and about return values for stored functions. * The maximum length of table comments was extended from 60 to 2048 characters. The maximum length of column comments was extended from 255 to 1024 characters. Index definitions now can include a comment of up to 1024 characters.
Daniel Fischer, Tech Lead, MySQL Release Engineering
Oracle Corporation, http://oss.oracle.com/
MySQL Server 5.5.3-m3 and MySQL Server 5.5.4-m3 have been released
April 13, 2010 11:13AM
April 13, 2010 11:14AM
Sorry, you can't reply to this topic. It has been closed.
Content reproduced on this site is the property of the respective copyright holders. It is not reviewed in advance by Oracle and does not necessarily represent the opinion of Oracle or any other party.