MySQL Announce

MySQL related Product and Service announcements.
Updated: 1 day 1 hour ago

MySQL Workbench 5.2.27 (GA): Upgrade from MySQL Administrator, MySQL Query Browser (no replies)

August 31, 2010 - 19:33
MySQL Workbench 5.2.27 (GA): Upgrade from MySQL Administrator, MySQL Query Browser
http://wb.mysql.com/?p=750

WB 5.2 includes:
- Model (upgrade from DBDesigner)
- Query (upgrade from MySQL Query Browser)
- Admin (upgrade from MySQL Administrator)
- SSH-Tunnel (new)

Quick-Start Tutorial:
http://wb.mysql.com/?p=406

WB Downloads: http://dev.mysql.com/downloads/workbench/
WB Forums: http://forums.mysql.com/index.php?151
WB Blogs: http://wb.mysql.com/

MySQL Connector/Net 6.2.4 has been released (no replies)

August 30, 2010 - 12:28
Dear MySQL Users,

We're happy to announce the latest maintenance release of MySQL Connector/Net 6.2.4.

Version 6.2.4 maintenance release includes:
Enhancement that allows a procedure to be recreated with a different number of parameters
Fixes for 29 bugs

For details see http://dev.mysql.com/doc/refman/5.1/en/connector-net-news-6-2-4.html

MySQL Connector 6.2.4 :

1. Provides secure, high-performance data connectivity with MySQL.
2. Implements ADO.NET interfaces that integrate into ADO.NET aware tools.
3. Is a fully managed ADO.NET driver written in 100% pure C#.
4. Provide Visual Studio Integration


If you are a current user, we look forward to your feedback on all the new capabilities we are delivering.
As always, you will find binaries and source on our download pages.

Please get your copy from our Download

http://dev.mysql.com/downloads/connector/net/6.2.html]

To get started quickly, please take a look at our short tutorials.
MySQL Connector/NET Tutorials
http://dev.mysql.com/doc/refman/5.1/en/connector-net-tutorials.html

Blog postings and general information can be found on our Developer Zone site.

MySQL Developer Zone

http://dev.mysql.com/usingmysql/dotnet/

.NET Forum
http://forums.mysql.com/list.php?38

Blog
http://planet.mysql.com


Connecotor/NET Documentation and details on changes between releases can be found on these pages

http://dev.mysql.com/doc/refman/5.1/en/changes-6.2.x.html

http://dev.mysql.com/doc/refman/5.1/en/connector-net.html

http://dev.mysql.com/doc/refman/5.1/en/connector-net-news-6-2-4.html


If you need any additional info or help please get in touch with us.
Post in our forums or leave comments on our blog pages.

- The MySQL Connector/NET Team

MySQL Connector/Net 6.1.5 has been released (no replies)

August 30, 2010 - 09:43
MySQL Connector/Net 6.1.5, a new version of the all-managed .NET driver for MySQL has been released. This is a maintenance release of the 6.1 branch and is suitable for use with MySQL server versions 5.0 and higher. It is now available in source and binary form from http://dev.mysql.com/downloads/connector/net/6.1.html] and mirror sites (note that not all mirror sites may be up to date at this point of time - if you can’t find this version on some mirror, please try again later or choose another download site.)

This is maintenance release. Please review the change log (included with product or at http://dev.mysql.com/doc/refman/5.1/en/connector-net-news-6-1-5.html) for details.

Thank you for working with MySQL!

MySQL Connector/Net 6.0.7 has been released (no replies)

August 30, 2010 - 09:28
MySQL Connector/Net 6.0.7, a new version of the all-managed .NET driver for MySQL has been released. This is a maintenance release of the 6.0 branch and is suitable for use with MySQL server versions 5.0 and higher. It is now available in source and binary form from http://dev.mysql.com/downloads/connector/net/6.0.html] and mirror sites (note that not all mirror sites may be up to date at this point of time - if you can’t find this version on some mirror, please try again later or choose another download site.)

This is maintenance release. Please review the change log (included with product or at http://dev.mysql.com/doc/refman/5.1/en/connector-net-news-6-0-7.html) for details.

Thank you for working with MySQL!

MySQL Community Server 5.1.50 has been released (no replies)

August 19, 2010 - 11:55
Dear MySQL users,

MySQL Community Server 5.1.50, a new version of the popular Open
Source Database Management System, has been released. MySQL 5.1.50 is
recommended for use on production systems.

For an overview of what's new in MySQL 5.1, please see

http://dev.mysql.com/doc/refman/5.1/en/mysql-nutshell.html

For information on installing MySQL 5.1.50 on new servers or upgrading
to MySQL 5.1.50 from previous MySQL releases, please see

http://dev.mysql.com/doc/refman/5.1/en/installing.html

MySQL Server is available in source and binary form for a number of
platforms from our download pages at

http://dev.mysql.com/downloads/

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

For information on open issues in MySQL 5.1, please see the errata
list at

http://dev.mysql.com/doc/refman/5.1/en/open-bugs.html

The following section lists the changes in the MySQL source code since
the previous released version of MySQL 5.1. It may also be viewed
online at

http://dev.mysql.com/doc/refman/5.1/en/news-5-1-50.html

Enjoy!

=======================================================================
C.1.1. Changes in MySQL 5.1.50 (03 August 2010) InnoDB Notes: * InnoDB Plugin has been upgraded to version 1.0.11. This version is considered of General Availability (GA) quality. In this release, the InnoDB Plugin is included in source and binary distributions, except RHEL3, RHEL4, SuSE 9 (x86, x86_64, ia64), generic Linux RPM packages, and any builds produced with the icc compiler. It also does not work for FreeBSD 6 and HP-UX or for Linux on generic ia64. Bugs fixed: * Important Change: Replication: The LOAD DATA INFILE statement is now considered unsafe for statement-based replication. When using statement-based logging mode, the statement now produces a warning; when using mixed-format logging, the statement is made using the row-based format. (Bug#34283: http://bugs.mysql.com/bug.php?id=34283) * Partitioning: UPDATE and INSERT statements affecting partitioned tables performed poorly when using row-based replication. (Bug#52517: http://bugs.mysql.com/bug.php?id=52517) * Partitioning: INSERT ON DUPLICATE KEY UPDATE statements performed poorly on tables having many partitions. This was because the handler function for reading a row from a specific index was not optimized in the partitioning handler. (Bug#52455: http://bugs.mysql.com/bug.php?id=52455) * The server could crash on shutdown, if started with --innodb-use-system-malloc=0. (Bug#55581: http://bugs.mysql.com/bug.php?id=55581) * GROUP BY operations used max_sort_length inconsistently. (Bug#55188: http://bugs.mysql.com/bug.php?id=55188) * Building MySQL on Solaris 8 x86 failed when using Sun Studio due to gcc inline assembler code. (Bug#55061: http://bugs.mysql.com/bug.php?id=55061) * In debug builds, an assertion could be raised when the server tried to send an OK packet to the client after having failed to detect errors during processing of the WHERE condition of an UPDATE statement. (Bug#54734: http://bugs.mysql.com/bug.php?id=54734) * The database server could crash when renaming a table that had active transactions. (This issue only affected the database server when built for debugging.) (Bug#54453: http://bugs.mysql.com/bug.php?id=54453) * The server could crash during the recovery phase of startup, if it previously crashed while inserting BLOB or other large columns that use off-page storage into an InnoDB table created with ROW_FORMAT=REDUNDANT or ROW_FORMAT=COMPACT. (Bug#54408: http://bugs.mysql.com/bug.php?id=54408) * For an InnoDB table created with ROW_FORMAT=COMPRESSED or ROW_FORMAT=DYNAMIC, a query using the READ UNCOMMITTED isolation level could cause the server to stop with an assertion error, if BLOB or other large columns that use off-page storage were being inserted at the same time. (Bug#54358: http://bugs.mysql.com/bug.php?id=54358) * A client could supply data in chunks to a prepared statement parameter other than of type TEXT or BLOB using the mysql_stmt_send_long_data() C API function (or COM_STMT_SEND_LONG_DATA command). This led to a crash because other data types are not valid for long data. (Bug#54041: http://bugs.mysql.com/bug.php?id=54041) * mysql_secure_installation did not properly identify local accounts and could incorrectly remove nonlocal root accounts. (Bug#54004: http://bugs.mysql.com/bug.php?id=54004) * Transactions could be incorrectly committed during recovery, rather than rolled back, if the server crashed and was restarted after performing ALTER TABLE...ADD PRIMARY KEY on an InnoDB table, or some other operation that involves copying the entire table. (Bug#53756: http://bugs.mysql.com/bug.php?id=53756) * Portability problems in SHOW STATUS could lead to incorrect results on some platforms. (Bug#53493: http://bugs.mysql.com/bug.php?id=53493) * Builds of MySQL generated a large number of warnings. (Bug#53445: http://bugs.mysql.com/bug.php?id=53445) * With lower_case_table_names set to a nonzero value, searches for table or database names in INFORMATION_SCHEMA tables could produce incorrect results. (Bug#53095: http://bugs.mysql.com/bug.php?id=53095) * The ABI check for MySQL failed to compile with gcc 4.5. (Bug#52514: http://bugs.mysql.com/bug.php?id=52514) * mysql_secure_installation sometimes failed to locate the mysql client. (Bug#52274: http://bugs.mysql.com/bug.php?id=52274) * Reading a ucs2 data file with LOAD DATA INFILE was subject to three problems. 1) Incorrect parsing of the file as ucs2 data, resulting in incorrect length of the parsed string. This is fixed by truncating the invalid trailing bytes (incomplete multibyte characters) when reading from the file. 2) Reads from a proper ucs2 file did not recognize newline characters. This is fixed by first checking whether a byte is a newline (or any other special character) before reading it as a part of a multibyte character. 3) When using user variables to hold column data, the character set of the user variable was set incorrectly to the database charset. This is fixed by setting it to the character set specified in the LOAD DATA INFILE statement, if any. (Bug#51876: http://bugs.mysql.com/bug.php?id=51876) * Searches in INFORMATION_SCHEMA tables for rows matching a nonexistent database produced an error instead of an empty query result. (Bug#49542: http://bugs.mysql.com/bug.php?id=49542) * On FreeBSD, memory mapping for MERGE tables could fail if underlying tables were empty. (Bug#47139: http://bugs.mysql.com/bug.php?id=47139) * The my_like_range_xxx() functions returned badly formed maximum strings for Asian character sets, which caused problems for storage engines. (Bug#45012: http://bugs.mysql.com/bug.php?id=45012) * A debugging assertion could be raised after a write failure to a closed socket. (Bug#42496: http://bugs.mysql.com/bug.php?id=42496) * An assertion failure occurred within yaSSL for very long keys. (Bug#29784: http://bugs.mysql.com/bug.php?id=29784) See also Bug#53463: http://bugs.mysql.com/bug.php?id=53463.
Thanks,
MySQL RE Team

Karen Langford MySQL Release Engineer
Database Group, Oracle.

MySQL Workbench 5.2.26 (GA): Upgrade from MySQL Administrator, MySQL Query Browser (no replies)

August 6, 2010 - 17:37
MySQL Workbench 5.2.26 (GA): Upgrade from MySQL Administrator, MySQL Query Browser
http://wb.mysql.com/?p=656

WB 5.2 includes:
- Model (upgrade from DBDesigner)
- Query (upgrade from MySQL Query Browser)
- Admin (upgrade from MySQL Administrator)
- SSH-Tunnel (new)

Quick-Start Tutorial:
http://wb.mysql.com/?p=406

WB Downloads: http://dev.mysql.com/downloads/workbench/
WB Forums: http://forums.mysql.com/index.php?151
WB Blogs: http://wb.mysql.com/

MySQL Connector/Net 6.3.3 has been released (no replies)

July 27, 2010 - 13:58
MySQL Connector/Net 6.3.3, a new version of the all-managed .NET driver for MySQL has been released. This is a beta release and is intended to introduce you to the new features and enhancements we are planning. This release should not be used in a production environment. It is now available in source and binary form from http://dev.mysql.com/downloads/connector/net/6.3.html] and mirror sites (note that not all mirror sites may be up to date at this point of time - if you can’t find this version on some mirror, please try again later or choose another download site.)

The new features or changes in this release are:

* Visual Studio 2010 RTM support
* New sql editor. Create a new file with a .mysql extension to see it in action
* Please check the changelog and release notes for more information

==== What we know may be broken =====
Documentation is not yet integrated into VS 2010.

Please let us know what else we broke and how we can make it better!

MySQL Community Server 5.1.49 has been released (no replies)

July 23, 2010 - 06:55
Dear MySQL users,

MySQL Community Server 5.1.49, a new version of the popular Open
Source Database Management System, has been released. MySQL 5.1.49 is
recommended for use on production systems.

For an overview of what's new in MySQL 5.1, please see

http://dev.mysql.com/doc/refman/5.1/en/mysql-nutshell.html

For information on installing MySQL 5.1.49 on new servers or upgrading
to MySQL 5.1.49 from previous MySQL releases, please see

http://dev.mysql.com/doc/refman/5.1/en/installing.html

MySQL Server is available in source and binary form for a number of
platforms from our download pages at

http://dev.mysql.com/downloads/

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

For information on open issues in MySQL 5.1, please see the errata
list at

http://dev.mysql.com/doc/refman/5.1/en/open-bugs.html

The following section lists the changes in the MySQL source code since
the previous released version of MySQL 5.1. It may also be viewed
online at

http://dev.mysql.com/doc/refman/5.1/en/news-5-1-49.html

Enjoy!

=======================================================================
C.1.2. Changes in MySQL 5.1.49 (09 July 2010) InnoDB Notes: * InnoDB Plugin has been upgraded to version 1.0.10. This version is considered of General Availability (GA) quality. InnoDB Plugin Change History (http://dev.mysql.com/doc/innodb-plugin/1.0/en/innodb-changes. html), may contain information in addition to those changes reported here. In this release, the InnoDB Plugin is included in source and binary distributions, except RHEL3, RHEL4, SuSE 9 (x86, x86_64, ia64), and generic Linux RPM packages. It also does not work for FreeBSD 6 and HP-UX or for Linux on generic ia64. Bugs fixed: * Replication: When using unique keys on NULL columns in row-based replication, the slave sometimes chose the wrong row when performing an update. This happened because a table having a unique key on such a column could have multiple rows containing NULL for the column used by the unique key, and the slave merely picked the first row containing NULL in that column. (Bug#53893: http://bugs.mysql.com/bug.php?id=53893) * Replication: FLUSH LOGS could in some circumstances crash the server. This occurred because the I/O thread could concurrently access the relay log I/O cache while another thread was performing the FLUSH LOGS, which closes and reopens the relay log and, while doing so, initializes (or re-initializes) its I/O cache. This could cause problems if some other thread (in this case, the I/O thread) is accessing it at the same time. Now the thread performing the FLUSH LOGS takes a lock on the relay log before actually flushing it. (Bug#53657: http://bugs.mysql.com/bug.php?id=53657) See also Bug#50364: http://bugs.mysql.com/bug.php?id=50364. * Replication: Two related issues involving temporary tables and transactions were introduced by a fix made in MySQL 5.1.37: 1. When a temporary table was created or dropped within a transaction, any failed statement that following the CREATE TEMPORARY TABLE or DROP TEMPORARY TABLE statement triggered a rollback, which caused the slave diverge from the master. 2. When a CREATE TEMPORARY TABLE ... SELECT * FROM ... statement was executed within a transaction in which only tables using transactional storage engines were used and the transaction was rolled back at the end, the changes---including the creation of the temporary table---were not written to the binary log. The current fix restores the correct behavior in both of these cases. (Bug#53560: http://bugs.mysql.com/bug.php?id=53560) This regression was introduced by Bug#43929: http://bugs.mysql.com/bug.php?id=43929. * Replication: When CURRENT_USER() or CURRENT_USER was used to supply the name and host of the affected user or of the definer in any of the statements DROP USER, RENAME USER, GRANT, REVOKE, and ALTER EVENT, the reference to CURRENT_USER() or CURRENT_USER was not expanded when written to the binary log. This resulted in CURRENT_USER() or CURRENT_USER being expanded to the user and host of the slave SQL thread on the slave, thus breaking replication. Now CURRENT_USER() and CURRENT_USER are expanded prior to being written to the binary log in such cases, so that the correct user and host are referenced on both the master and the slave. (Bug#48321: http://bugs.mysql.com/bug.php?id=48321) * An ALTER TABLE statement could convert an InnoDB compressed table (with row_format=compressed) back to an uncompressed table (with row_format=compact). (Bug#54679: http://bugs.mysql.com/bug.php?id=54679) * A signal-handler redefinition for SIGUSR1 was removed. The redefinition could cause the server to encounter a kernel deadlock on Solaris when there are many active threads. Other POSIX platforms might also be affected. (Bug#54667: http://bugs.mysql.com/bug.php?id=54667) * InnoDB could issue an incorrect message on startup, if tables were created under the setting innodb_file_per_table=ON and the server was restarted under the setting innodb_file_per_table=OFF. The message was of the form InnoDB: Warning: allocated tablespace n, old maximum was 0. (Bug#54658: http://bugs.mysql.com/bug.php?id=54658) * The make_binary_distribution target to make could fail on some platforms because the lines generated were too long for the shell. (Bug#54590: http://bugs.mysql.com/bug.php?id=54590) * The server failed to disregard sort order for some zero-length tuples, leading to an assertion failure. (Bug#54459: http://bugs.mysql.com/bug.php?id=54459) * The default value of myisam_max_extra_sort_file_size (http://dev.mysql.com/doc/refman/5.0/en/server-system-variable s.html#sysvar_myisam_max_extra_sort_file_size) could be higher than the maximum accepted value, leading to warnings upon the server start. (Bug#54457: http://bugs.mysql.com/bug.php?id=54457) * If a session tried to drop a database containing a table opened with HANDLER in another session, any DATABASE statement (CREATE, DROP, ALTER) executed by that session produced a deadlock. (Bug#54360: http://bugs.mysql.com/bug.php?id=54360) * Fast index creation could fail, leaving the new secondary index corrupted. (Bug#54330: http://bugs.mysql.com/bug.php?id=54330) * A client could supply data in chunks to a prepared statement parameter other than of type TEXT or BLOB using the mysql_stmt_send_long_data() C API function (or COM_STMT_SEND_LONG_DATA command). This led to a crash because other data types are not valid for long data. (Bug#54041: http://bugs.mysql.com/bug.php?id=54041) * Builds of the embedded mysqld would fail due to a missing element of the struct NET. (Bug#53908: http://bugs.mysql.com/bug.php?id=53908, Bug#53912: http://bugs.mysql.com/bug.php?id=53912) * The definition of the MY_INIT macro in my_sys.h included an extraneous semicolon, which could cause compilation failure. (Bug#53906: http://bugs.mysql.com/bug.php?id=53906) * A client with automatic reconnection enabled saw the error message Lost connection to MySQL server during query if the connection was lost between the mysql_stmt_prepare() and mysql_stmt_execute() C API functions. However, mysql_stmt_errno() returned 0, not the corresponding error number 2013. (Bug#53899: http://bugs.mysql.com/bug.php?id=53899) * Queries that used MIN() or MAX() on indexed columns could be optimized incorrectly. (Bug#53859: http://bugs.mysql.com/bug.php?id=53859) * The Lock_time value in the slow query log was negative for stored routines. (Bug#53191: http://bugs.mysql.com/bug.php?id=53191) * The results of some ORDER BY ... DESC queries were sorted incorrectly. (Bug#51431: http://bugs.mysql.com/bug.php?id=51431) * Index Merge between three indexes could return incorrect results. (Bug#50389: http://bugs.mysql.com/bug.php?id=50389) * Performing large numbers of RENAME TABLE statements caused excessive memory use. (Bug#47991: http://bugs.mysql.com/bug.php?id=47991) * The server could crash with an out of memory error when trying to parse a query that was too long to fit in memory. Now the parser rejects such queries with an ER_OUT_OF_RESOURCES error. (Bug#42064: http://bugs.mysql.com/bug.php?id=42064) * Sort-index_merge for join tables other than the first table used excessive memory. (Bug#41660: http://bugs.mysql.com/bug.php?id=41660) * Valgrind warnings in the InnoDB compare_record() function were corrected. (Bug#38999: http://bugs.mysql.com/bug.php?id=38999) * mysqld could fail during execution when using SSL. (Bug#34236: http://bugs.mysql.com/bug.php?id=34236) * The behavior of the RPM upgrade installation has changed. During an upgrade installation using the RPM packages, if the MySQL server is running when the upgrade occurs, the server is stopped, the upgrade occurs, and server is restarted. If the server is not already running when the RPM upgrade occurs, the server is not started at the end of the upgrade. The boot scripts for MySQL are installed in the appropriate directories in /etc, so the MySQL server will be restarted automatically at the next machine reboot. (Bug#27072: http://bugs.mysql.com/bug.php?id=27072)
Thanks,
MySQL RE Team

Karen Langford MySQL Release Engineer
Database Group, Oracle.

MySQL Community Server 5.5.5-m3 has been released (no replies)

July 19, 2010 - 01:28
Dear MySQL users,


MySQL Server 5.5.5-m3, a new version of the popular Open Source
Database Management System, has been released.
The "-m3" suffix indicates that 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.

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" online at

http://dev.mysql.com/doc/refman/5.5/en/mysql-nutshell.html

For information on installing MySQL 5.5.5-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 complete list of all "Bugs Fixed" may be viewed online at

http://dev.mysql.com/doc/refman/5.5/en/news-5-5-5.html

Special note for those of you who build from source:

In MySQL 5.5.5-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. The official packages
for this release are the first to be produced using CMake.
As always, we value your feedback!

http://forge.mysql.com/wiki/CMake




Changes in MySQL 5.5.5:

InnoDB is now the default storage engine, rather than MyISAM in the
regular versions of MySQL. This change has the following consequences:

* Existing tables are not affected by this change, only new
tables that are created.

* Some of the InnoDB option settings also change, so that the
default configuration represents the best practices for InnoDB
functionality,reliability, and file management:
innodb_file_format=Barracuda rather than Antelope,
innodb_strict_mode=TRUE rather than FALSE, and
innodb_file_per_table=TRUE rather than FALSE.

* The system tables remain in MyISAM format.

* MyISAM remains the default storage engine for the embedded version
of MySQL


Bugs Fixed:

* Performance: While looking for the shortest index for a
covering index scan, the optimizer did not consider the full
row length for a clustered primary key, as in InnoDB.
Secondary covering indexes will now be preferred, making full
table scans less likely.
(Bug#39653: http://bugs.mysql.com/bug.php?id=39653)

* Security Fix: The server failed to check the table name
argument of a COM_FIELD_LIST command packet for validity and
compliance to acceptable table name standards. This could be
exploited to bypass almost all forms of checks for privileges
and table-level grants by providing a specially crafted table
name argument to COM_FIELD_LIST.
In MySQL 5.0 and above, this allowed an authenticated user
with SELECT privileges on one table to obtain the field
definitions of any table in all other databases and
potentially of other MySQL instances accessible from the
server's file system.
Additionally, for MySQL version 5.1 and above, an
authenticated user with DELETE or SELECT privileges on one
table could delete or read content from any other table in all
databases on this server, and potentially of other MySQL
instances accessible from the server's file system.
(Bug#53371: http://bugs.mysql.com/bug.php?id=53371,
CVE-2010-1848
(http://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2010-1848))

* Security Fix: The server was susceptible to a buffer-overflow
attack due to a failure to perform bounds checking on the
table name argument of a COM_FIELD_LIST command packet. By
sending long data for the table name, a buffer is overflown,
which could be exploited by an authenticated user to inject
malicious code.
(Bug#53237: http://bugs.mysql.com/bug.php?id=53237,
CVE-2010-1850
(http://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2010-1850))

* Security Fix: Privilege checking for UNINSTALL PLUGIN was
incorrect. (Bug#51770: http://bugs.mysql.com/bug.php?id=51770,
CVE-2010-1621
(http://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2010-1621))

* Security Fix: The server could be tricked into reading packets
indefinitely if it received a packet larger than the maximum
size of one packet.
(Bug#50974: http://bugs.mysql.com/bug.php?id=50974,
CVE-2010-1849
(http://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2010-1849))

* Incompatible Change: TRUNCATE TABLE did not take an exclusive
lock on a table if truncation was done by deleting all rows in
the table. For InnoDB tables, this could break proper
isolation because InnoDB ended up aborting some granted locks
when truncating a table. Now an exclusive metadata lock is
taken before TRUNCATE TABLE can proceed. This guarantees that
no other transaction is using the table.
Incompatible change: Truncation using delete no longer fails
if sql_safe_updates is enabled (this was an undocumented side
effect). (Bug#42643: http://bugs.mysql.com/bug.php?id=42643)

* Important Change: Replication: It was possible to set
sql_log_bin with session scope inside a transaction or
subquery. (Bug#53437: http://bugs.mysql.com/bug.php?id=53437)

* Important Change: Replication: When changing binlog_format or
binlog_direct_non_transactional_updates, permissions were not
checked prior to checking the scope and context of the
variable being changed.
As a result of this fix, an error is no longer reported
when---in the context of a transaction or a stored
function---you try to set a value for a session variable that
is the same as its previous value, or for a variable whose
scope is global only.
(Bug#51277: http://bugs.mysql.com/bug.php?id=51277)

* Important Change: Replication: When invoked, CHANGE MASTER TO
and SET GLOBAL sql_slave_skip_counter now cause information to
be written to the error log about the slave's state prior to
execution of the statement. For CHANGE MASTER TO, this
information includes the previous values for MASTER_HOST,
MASTER_PORT, MASTER_LOG_FILE, and MASTER_LOG_POS. For SET
GLOBAL sql_slave_skip_counter, this information includes the
previous values of sql_slave_skip_counter, the group relay log
name, and the group relay log position.
(Bug#43406: http://bugs.mysql.com/bug.php?id=43406,
Bug#43407: http://bugs.mysql.com/bug.php?id=43407)

* Partitioning: Replication: Attempting to execute LOAD DATA on
a partitioned MyISAM table while using statement-based logging
mode caused the master to hang or crash.
(Bug#51851: http://bugs.mysql.com/bug.php?id=51851)

* Partitioning: Replication: The NO_DIR_IN_CREATE server SQL
mode was not enforced when defining subpartitions. In certain
cases, this could lead to failures on replication slaves.
(Bug#42954: http://bugs.mysql.com/bug.php?id=42954)

* Partitioning: Rows inserted into a table created using a
PARTITION BY LIST COLUMNS option referencing multiple columns
could be inserted into the wrong partition.
(Bug#52815: http://bugs.mysql.com/bug.php?id=52815)

* Partitioning: Partition pruning on RANGE partitioned tables
did not always work correctly; the last partition was not
excluded if the range was beyond it (when not using MAXVALUE).
Now the last partition is not included if the partitioning
function value is not within the range.
(Bug#51830: http://bugs.mysql.com/bug.php?id=51830)

* Partitioning: Attempting to partition a table using a DECIMAL
column caused the server to crash; this not supported and is
now specifically disallowed.
Bug#51347: http://bugs.mysql.com/bug.php?id=51347)

* Partitioning: ALTER TABLE statements that cause table
partitions to be renamed or dropped (such as ALTER TABLE ...
ADD PARTITION, ALTER TABLE ... DROP PARTITION, and ALTER TABLE
... REORGANIZE PARTITION) --- when run concurrently with
queries against the INFORMATION_SCHEMA.PARTITIONS table ---
could fail, cause the affected partitioned tables to become
unusable, or both. This was due to the fact that the
INFORMATION_SCHEMA database ignored the name lock imposed by
the ALTER TABLE statement on the partitions affected. In
particular, this led to problems with InnoDB tables, because
InnoDB would accept the rename operation, but put it in a
background queue, so that subsequent rename operations failed
when InnoDB was unable to find the correct partition. Now,
INFORMATION_SCHEMA honors name locks imposed by ongoing ALTER
TABLE statements that cause partitions to be renamed or
dropped. (Bug#50561: http://bugs.mysql.com/bug.php?id=50561)
See also Bug#47343: http://bugs.mysql.com/bug.php?id=47343,
Bug#45808: http://bugs.mysql.com/bug.php?id=45808.

* Partitioning: The insert_id server system variable was not
reset following an insert that failed on a partitioned MyISAM
table having an AUTO_INCREMENT column.
(Bug#50392: http://bugs.mysql.com/bug.php?id=50392)

* Partitioning: Foreign keys are not supported on partitioned
tables. However, it was possible via an ALTER TABLE statement
to set a foreign key on a partitioned table; it was also
possible to partition a table with a single foreign key.
(Bug#50104: http://bugs.mysql.com/bug.php?id=50104)

* Partitioning: When attempting to perform DDL on a partitioned
table and the table's .par file could not be found, the server
returned the inaccurate error message Out of memory; restart
server and try again (needed 2 bytes). Now in such cases, the
server returns the error Failed to initialize partitions from
.par file. (Bug#49161: http://bugs.mysql.com/bug.php?id=49161)

* Partitioning: GROUP BY queries performed poorly for some
partitioned tables. This was due to the block size not being
set for partitioned tables, thus the keys per block was not
correct, which could cause such queries to be optimized
incorrectly.
(Bug#48229: http://bugs.mysql.com/bug.php?id=48229)
See also Bug#37252: http://bugs.mysql.com/bug.php?id=37252.

* Partitioning: REPAIR TABLE failed for partitioned ARCHIVE
tables. (Bug#46565: http://bugs.mysql.com/bug.php?id=46565)

* Replication: When using unique keys on NULL columns in
row-based replication, the slave sometimes chose the wrong row
when performing an update. This happened because a table
having a unique key on such a column could have multiple rows
containing NULL for the column used by the unique key, and the
slave merely picked the first row containing NULL in that
column. (Bug#53893: http://bugs.mysql.com/bug.php?id=53893)

* Replication: When a CREATE TEMPORARY TABLE ... SELECT
statement was executed within a transaction that updated only
transactional engines and was later rolled back (for example,
due to a deadlock) the changes---including the creation of the
temporary table---were not written to the binary log, which
caused subsequent updates to this table to fail on the slave.
(Bug#53421: http://bugs.mysql.com/bug.php?id=53421)

* Replication: When using the statement-based logging format,
statements that used CONNECTION_ID() were always kept in the
transaction cache; consequently, nontransactional changes that
should have been flushed before the transaction were kept in
the transaction cache.
(Bug#53075: http://bugs.mysql.com/bug.php?id=53075)
This regression was introduced by
Bug#51894: http://bugs.mysql.com/bug.php?id=51894.

* Replication: In some cases, attempting to update a column with
a value of an incompatible type resulted in a mismatch between
master and slave because the column value was set to its
implicit default value on the master (as expected), but the
same column on the slave was set to NULL.
(Bug#52868: http://bugs.mysql.com/bug.php?id=52868)

* Replication: When temporary tables were in use, switching the
binary logging format from STATEMENT to ROW did not take
effect until all temporary tables were dropped. (The existence
of temporary tables should prevent switching the format only
from ROW to STATEMENT from taking effect, not the reverse.)
(Bug#52616: http://bugs.mysql.com/bug.php?id=52616)

* Replication: A buffer overrun in the handling of DATE column
values could cause mysqlbinlog to fail when reading back logs
containing certain combinations of DML on a table having a
DATE column followed by dropping the table.
(Bug#52202: http://bugs.mysql.com/bug.php?id=52202)

* Replication: The failure of a REVOKE statement was logged with
the wrong error code, causing replication slaves to stop even
when the failure was expected on the master.
(Bug#51987: http://bugs.mysql.com/bug.php?id=51987)


* -laio missing from embedded libs
(Bug#55215: http://bugs.mysql.com/bug.php?id=55215)


Please see the complete list of changes to MySQL 5.5.5
at http://dev.mysql.com/doc/refman/5.5/en/news-5-5-5.html



Thanks

Sunanda

(MySQL Release Engineering Team)

MySQL Workbench 5.2.25 (GA): Upgrade from MySQL Administrator, MySQL Query Browser (no replies)

July 1, 2010 - 08:57
MySQL Workbench 5.2.25 (GA): Upgrade from MySQL Administrator, MySQL Query Browser
http://wb.mysql.com/?p=611

WB 5.2 includes:
- Model (upgrade from DBDesigner)
- Query (upgrade from MySQL Query Browser)
- Admin (upgrade from MySQL Administrator)
- SSH-Tunnel (new)

Quick-Start Tutorial:
http://wb.mysql.com/?p=406

WB Downloads: http://dev.mysql.com/downloads/workbench/
WB Forums: http://forums.mysql.com/index.php?151
WB Blogs: http://wb.mysql.com/

MySQL Workbench 5.2.24 (RC3): Upgrade from MySQL Administrator, MySQL Query Browser (no replies)

June 21, 2010 - 12:30
MySQL Workbench 5.2.24 (RC3): Upgrade from MySQL Administrator, MySQL Query Browser
http://wb.mysql.com/?p=594

WB 5.2 includes:
- Model (upgrade from DBDesigner)
- Query (upgrade from MySQL Query Browser)
- Admin (upgrade from MySQL Administrator)
- SSH-Tunnel (new)

Quick-Start Tutorial:
http://wb.mysql.com/?p=406

WB Downloads: http://dev.mysql.com/downloads/workbench/
WB Forums: http://forums.mysql.com/index.php?151
WB Blogs: http://wb.mysql.com/

MySQL Community Server 5.1.48 has been released (no replies)

June 17, 2010 - 08:23
Dear MySQL users,

MySQL Community Server 5.1.48, a new version of the popular Open
Source Database Management System, has been released. MySQL 5.1.48 is
recommended for use on production systems.

For an overview of what's new in MySQL 5.1, please see

http://dev.mysql.com/doc/refman/5.1/en/mysql-nutshell.html

For information on installing MySQL 5.1.48 on new servers or upgrading
to MySQL 5.1.48 from previous MySQL releases, please see

http://dev.mysql.com/doc/refman/5.1/en/installing.html

MySQL Server is available in source and binary form for a number of
platforms from our download pages at

http://dev.mysql.com/downloads/

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

For information on open issues in MySQL 5.1, please see the errata
list at

http://dev.mysql.com/doc/refman/5.1/en/open-bugs.html

The following section lists the changes in the MySQL source code since
the previous released version of MySQL 5.1. It may also be viewed
online at

http://dev.mysql.com/doc/refman/5.1/en/news-5-1-48.html

Enjoy!

=======================================================================
C.1.1. Changes in MySQL 5.1.48 Functionality added or changed: * The Rows_examined value in slow query log rows now is nonzero for UPDATE and DELETE statements that modify rows. (Bug#49756: http://bugs.mysql.com/bug.php?id=49756) Bugs fixed: * Important Change: Replication: MyISAM transactions replicated to a transactional slave left the slave in an unstable condition. This was due to the fact that, when replicating from a nontransactional storage engine to a transactional engine with autocommit turned off, no BEGIN and COMMIT statements were written to the binary log; thus, on the slave, a never-ending transaction was started. The fix for this issue includes enforcing autocommit mode on the slave by replicating all autocommit=1 statements from the master. (Bug#29288: http://bugs.mysql.com/bug.php?id=29288) * Partitioning: ALTER TABLE statements that cause table partitions to be renamed or dropped (such as ALTER TABLE ... ADD PARTITION, ALTER TABLE ... DROP PARTITION, and ALTER TABLE ... REORGANIZE PARTITION) --- when run concurrently with queries against the INFORMATION_SCHEMA.PARTITIONS table --- could fail, cause the affected partitioned tables to become unusable, or both. This was due to the fact that the INFORMATION_SCHEMA database ignored the name lock imposed by the ALTER TABLE statement on the partitions affected. In particular, this led to problems with InnoDB tables, because InnoDB would accept the rename operation, but put it in a background queue, so that subsequent rename operations failed when InnoDB was unable to find the correct partition. Now, INFORMATION_SCHEMA honors name locks imposed by ongoing ALTER TABLE statements that cause partitions to be renamed or dropped. (Bug#50561: http://bugs.mysql.com/bug.php?id=50561) See also Bug#47343: http://bugs.mysql.com/bug.php?id=47343, Bug#45808: http://bugs.mysql.com/bug.php?id=45808. * Partitioning: It was possible to execute a CREATE TEMPORARY TABLE tmp LIKE pt statement, where pt is a partitioned table, even though partitioned temporary tables are not permitted, which caused the server to crash. Now a check is performed to prevent such statements from being executed. (Bug#49477: http://bugs.mysql.com/bug.php?id=49477) * Partitioning: When attempting to perform DDL on a partitioned table and the table's .par file could not be found, the server returned the inaccurate error message Out of memory; restart server and try again (needed 2 bytes). Now in such cases, the server returns the error Failed to initialize partitions from .par file. (Bug#49161: http://bugs.mysql.com/bug.php?id=49161) * Replication: In some cases, attempting to update a column with a value of an incompatible type resulted in a mismatch between master and slave because the column value was set to its implicit default value on the master (as expected), but the same column on the slave was set to NULL. (Bug#52868: http://bugs.mysql.com/bug.php?id=52868) * Replication: When using a non-transactional table on the master with autocommit disabled, no COMMIT was recorded in the binary log following a statement affecting this table. If the slave's copy of the table used a transactional storage engine, the result on the slave was as though a transaction had been started, but never completed. (Bug#49522: http://bugs.mysql.com/bug.php?id=49522) See also Bug#29288: http://bugs.mysql.com/bug.php?id=29288. * Replication: Reading from a table that used a self-logging storage engine and updating a table that used a transactional engine (such as InnoDB) generated changes that were written to the binary log using statement format which could make slaves diverge. However, when using mixed logging format, such changes should be written to the binary log using row format. (This issue did not occur when reading from tables using a self-logging engine and updating MyISAM tables, as this was already handled by checking for combinations of non-transactional and transactional engines.) Now such statements are classified as unsafe, and in mixed mode, cause a switch to row-based logging. (Bug#49019: http://bugs.mysql.com/bug.php?id=49019) * Valgrind warnings resulting from passing incomplete DATETIME values to the TIMESTAMP() function were corrected. (Bug#53942: http://bugs.mysql.com/bug.php?id=53942) * Builds of the embedded mysqld would fail due to a missing element of the struct NET. (Bug#53908: http://bugs.mysql.com/bug.php?id=53908, Bug#53912: http://bugs.mysql.com/bug.php?id=53912) * UPDATE on an InnoDB table modifying the same index that was used to satisfy the WHERE condition could trigger a debug assertion under some circumstances. (Bug#53830: http://bugs.mysql.com/bug.php?id=53830) * For single-table DELETE statements that used quick select and index scan simultaneously caused a server crash or assertion failure. (Bug#53450: http://bugs.mysql.com/bug.php?id=53450) * Incorrect results could be returned for LEFT JOIN of InnoDB tables with an impossible WHERE condition. (Bug#53334: http://bugs.mysql.com/bug.php?id=53334) * Fixed a checksum error reported for compressed tables when the --innodb_checksums option is enabled. (Bug#53248: http://bugs.mysql.com/bug.php?id=53248) * Corrected the handling of the setting innodb_change_buffering=default. (The appropriate default value is different between MySQL 5.1 and 5.5.) (Bug#53165: http://bugs.mysql.com/bug.php?id=53165) * mysqldump and SELECT ... INTO OUTFILE truncated long BLOB and TEXT values to 766 bytes. (Bug#53088: http://bugs.mysql.com/bug.php?id=53088) * In the debug version of the server, the FreeState() function could in some circumstances be called twice, leading to an assertion failure. (Bug#52884: http://bugs.mysql.com/bug.php?id=52884) * Aggregate functions could incorrectly return NULL in outer join queries. (Bug#52051: http://bugs.mysql.com/bug.php?id=52051) * The Loose Index Scan optimization method assumed that it could depend on the partitioning engine to maintain interval endpoint information, as if it were a storage engine. (Bug#50939: http://bugs.mysql.com/bug.php?id=50939) * Calculation of intervals for Event Scheduler events was not portable. (Bug#50087: http://bugs.mysql.com/bug.php?id=50087) * Selecting from INFORMATION_SCHEMA.ROUTINES or INFORMATION_SCHEMA.PARAMETERS (http://dev.mysql.com/doc/refman/5.5/en/parameters-table.html) resulted in a memory leak. (Bug#48729: http://bugs.mysql.com/bug.php?id=48729) * When the transaction isolation level was REPEATABLE READ and binary logging used statement or mixed format, SELECT statements with subqueries referencing InnoDB tables unnecessarily acquired shared locks on rows in these tables. (Bug#46947: http://bugs.mysql.com/bug.php?id=46947) * Using an initial command with mysql_options(..., MYSQL_INIT_COMMAND, ...) that generated multiple result sets (such as a stored procedure or a multi-statement command) left the connection unusable. (Bug#42373: http://bugs.mysql.com/bug.php?id=42373) * If a crash occurs while creating an index using the InnoDB "Fast Index Creation" mechanism, the partially created index is dropped during the crash recovery processing when the database is restarted.
Thanks,
MySQL RE Team

Karen Langford, Hery Ramilison MySQL Release Engineers
Database Group, Oracle.

MySQL Workbench 5.2.22 (RC2): Upgrade from MySQL Administrator, MySQL Query Browser (no replies)

June 2, 2010 - 14:30
MySQL Workbench 5.2.22 (RC2): Upgrade from MySQL Administrator, MySQL Query Browser
http://wb.mysql.com/?p=581

WB 5.2 includes:
- Model (upgrade from DBDesigner)
- Query (upgrade from MySQL Query Browser)
- Admin (upgrade from MySQL Administrator)
- SSH-Tunnel (new)

Quick-Start Tutorial:
http://wb.mysql.com/?p=406

WB Downloads: http://dev.mysql.com/downloads/workbench/
WB Forums: http://forums.mysql.com/index.php?151
WB Blogs: http://wb.mysql.com/

MySQL Connector/Net 6.3.2 beta has been released (no replies)

June 1, 2010 - 07:58
Sorry for this not getting out sooner. Connector/Net 6.3.2 was released several days ago but somehow the release announcement was never made.

MySQL Connector/Net 6.3.2, a new version of the all-managed .NET driver
for MySQL has been released. This is a beta release and is intended to
introduce you to the new features and enhancements we are planning. This
release should not be used in a production environment.

It is now available in source and binary form from
[http://dev.mysql.com/downloads/connector/net/6.3.html] and mirror sites
(note that not all mirror sites may be up to date at this point of time
- if you can't find this version on some mirror, please try again later
or choose another download site.)

The new features or changes in this release are:

- Visual Studio 2010 RTM support
- New sql editor. Create a new file with a .mysql extension to see it in action

What we know may be broken
----------------------------
- Documentation is not updated yet and is not integrated into VS 2010

Please let us know what else we broke and how we can make it better!

MySQL Server 5.0.91 has been released (no replies)

May 21, 2010 - 12:50
Dear MySQL users,

MySQL Community Server 5.0.91, a new version of the popular Open Source
Database Management System, has been released.
Please note that the active maintenance of 5.0 has ended,and these
community builds are only provided because of the fixes to security bugs
# 50974, 53237, and 53371 as described below.

The release is now available in source and binary form for a number of
platforms from our archive download page at

http://downloads.mysql.com/archives.php?p=mysql-5.0&v=5.0.91

Mirror service for MySQL server 5.0 has ended.
Also, support for some platforms with very low demand has ended.

Please bear in mind that MySQL 5.0 now receives extended support only,
and that all active development is happening on MySQL 5.1, 5.5, and
beyond. You will find the MySQL Lifecycle policy here:

http://www.mysql.de/about/legal/lifecycle/

For your own best interest, we strongly recommend all current users of
MySQL 5.0 to upgrade to either MySQL 5.1 (current production release) or
MySQL 5.5 (pre-production release, adding new features in beta quality).

We welcome and appreciate your feedback, bug reports, bug fixes,
patches etc.:

http://forge.mysql.com/wiki/Contributing

This section documents all changes and bugfixes that have been
applied since the last MySQL Community Server release (5.0.90).

http://dev.mysql.com/doc/refman/5.0/en/news-5-0-91.html

If you would like to receive more fine-grained and personalized
update alerts about fixes that are relevant to the version and
features you use, please consider subscribing to MySQL Enterprise
(a commercial MySQL offering). For more details please see
http://www.mysql.com/products/enterprise/advisors.html.

Enjoy!

On behalf of the MySQL Build Team,
Jörg Brühe


Changes in MySQL 5.0.91 (05 May 2010)

Bugs fixed:

* Security Fix: The server failed to check the table name
argument of a COM_FIELD_LIST command packet for validity
and compliance to acceptable table name standards. This
could be exploited to bypass almost all forms of checks
for privileges and table-level grants by providing a
specially crafted table name argument to COM_FIELD_LIST.
In MySQL 5.0 and above, this allowed an authenticated
user with SELECT privileges on one table to obtain the
field definitions of any table in all other databases and
potentially of other MySQL instances accessible from the
server's file system.
Additionally, for MySQL version 5.1 and above, an
authenticated user with DELETE or SELECT privileges on
one table could delete or read content from any other
table in all databases on this server, and potentially of
other MySQL instances accessible from the server's file
system.
(Bug#53371: http://bugs.mysql.com/bug.php?id=53371,
CVE-2010-1848
(http://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2010-1848))

* Security Fix: The server was susceptible to a
buffer-overflow attack due to a failure to perform bounds
checking on the table name argument of a COM_FIELD_LIST
command packet. By sending long data for the table name,
a buffer is overflown, which could be exploited by an
authenticated user to inject malicious code.
(Bug#53237: http://bugs.mysql.com/bug.php?id=53237,
CVE-2010-1850
(http://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2010-1850))

* Security Fix: The server could be tricked into reading
packets indefinitely if it received a packet larger than
the maximum size of one packet.
(Bug#50974: http://bugs.mysql.com/bug.php?id=50974,
CVE-2010-1849
(http://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2010-1849))

* The optimizer could attempt to evaluate the WHERE clause
before any rows had been read, resulting in a server
crash.
(Bug#52177: http://bugs.mysql.com/bug.php?id=52177)

* On Windows, LOAD_FILE() could cause a crash for some
pathnames.
(Bug#51893: http://bugs.mysql.com/bug.php?id=51893)

* Use of HANDLER statements with tables that had spatial
indexes caused a server crash.
(Bug#51357: http://bugs.mysql.com/bug.php?id=51357)

* With an XA transaction active, SET autocommit = 1 could
cause side effects such as memory corruption or a server
crash.
(Bug#51342: http://bugs.mysql.com/bug.php?id=51342)

* The SSL certificates in the test suite were about to
expire. They have been updated with expiration dates in
the year 2015.
(Bug#50642: http://bugs.mysql.com/bug.php?id=50642)

* For debug builds, an assertion was incorrectly raised in
the optimizer when matching ORDER BY expressions.
(Bug#50335: http://bugs.mysql.com/bug.php?id=50335)

* The filesort sorting method applied to a CHAR(0) column
could lead to a server crash.
(Bug#49897: http://bugs.mysql.com/bug.php?id=49897)

* sql_buffer_result had an effect on non-SELECT statements,
contrary to the documentation.
(Bug#49552: http://bugs.mysql.com/bug.php?id=49552)

* EXPLAIN EXTENDED crashed trying to print column names for
a subquery in the FROM clause when the table had gone out
of scope.
(Bug#49487: http://bugs.mysql.com/bug.php?id=49487)

* mysql-test-run.pl now recognizes the
MTR_TESTCASE_TIMEOUT, MTR_SUITE_TIMEOUT,
MTR_SHUTDOWN_TIMEOUT, and MTR_START_TIMEOUT environment
variables. If they are set, their values are used to set
the --testcase-timeout, --suite-timeout,
--shutdown-timeout, and --start-timeout options,
respectively.
(Bug#49210: http://bugs.mysql.com/bug.php?id=49210)

* Certain INTERVAL expressions could cause a crash on
64-bit systems.
(Bug#48739: http://bugs.mysql.com/bug.php?id=48739)

* The server crashed when it could not determine the best
execution plan for queries involving outer joins with
nondeterministic ON clauses such as the ones containing
the RAND() function, a user-defined function, or a NOT
DETERMINISTIC stored function.
(Bug#48483: http://bugs.mysql.com/bug.php?id=48483)

* If an outer query was invalid, a subquery might not even
be set up. EXPLAIN EXTENDED did not expect this and
caused a crash by trying to dereference improperly set up
information.
(Bug#48295: http://bugs.mysql.com/bug.php?id=48295)

MySQL Community Server 5.1.47 has been released (no replies)

May 21, 2010 - 11:35
Dear MySQL users, MySQL Community Server 5.1.47, a new version of the popular Open Source Database Management System, has been released. MySQL 5.1.47 is recommended for use on production systems. For an overview of what's new in MySQL 5.1, please see http://dev.mysql.com/doc/refman/5.1/en/mysql-nutshell.html For information on installing MySQL 5.1.47 on new servers or upgrading to MySQL 5.1.47 from previous MySQL releases, please see http://dev.mysql.com/doc/refman/5.1/en/installing.html MySQL Server is available in source and binary form for a number of platforms from our download pages at http://dev.mysql.com/downloads/ 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 For information on open issues in MySQL 5.1, please see the errata list at http://dev.mysql.com/doc/refman/5.1/en/open-bugs.html The following section lists the changes in the MySQL source code since the previous released version of MySQL 5.1. It may also be viewed online at http://dev.mysql.com/doc/refman/5.1/en/news-5-1-47.html Enjoy! C.1.1. Changes in MySQL 5.1.47 (06 May 2010) InnoDB Plugin Notes: * InnoDB Plugin has been upgraded to version 1.0.8. This version is considered of General Availability (GA) quality. InnoDB Plugin Change History (http://dev.mysql.com/doc/innodb-plugin/1.0/en/innodb-changes. html), may contain information in addition to those changes reported here. In this release, the InnoDB Plugin is included in source and binary distributions, except RHEL3, RHEL4, SuSE 9 (x86, x86_64, ia64), and generic Linux RPM packages. It also does not work for FreeBSD 6 and HP-UX or for Linux on generic ia64. Functionality added or changed: * InnoDB stores redo log records in a hash table during recovery. On 64-bit systems, this hash table was 1/8 of the buffer pool size. To reduce memory usage, the dimension of the hash table was reduced to 1/64 of the buffer pool size (or 1/128 on 32-bit systems). (Bug#53122: http://bugs.mysql.com/bug.php?id=53122) Bugs fixed: * Security Fix: The server failed to check the table name argument of a COM_FIELD_LIST command packet for validity and compliance to acceptable table name standards. This could be exploited to bypass almost all forms of checks for privileges and table-level grants by providing a specially crafted table name argument to COM_FIELD_LIST. In MySQL 5.0 and above, this allowed an authenticated user with SELECT privileges on one table to obtain the field definitions of any table in all other databases and potentially of other MySQL instances accessible from the server's file system. Additionally, for MySQL version 5.1 and above, an authenticated user with DELETE or SELECT privileges on one table could delete or read content from any other table in all databases on this server, and potentially of other MySQL instances accessible from the server's file system. (Bug#53371: http://bugs.mysql.com/bug.php?id=53371, CVE-2010-1848 (http://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2010-1848)) * Security Fix: The server was susceptible to a buffer-overflow attack due to a failure to perform bounds checking on the table name argument of a COM_FIELD_LIST command packet. By sending long data for the table name, a buffer is overflown, which could be exploited by an authenticated user to inject malicious code. (Bug#53237: http://bugs.mysql.com/bug.php?id=53237, CVE-2010-1850 (http://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2010-1850)) * Security Fix: The server could be tricked into reading packets indefinitely if it received a packet larger than the maximum size of one packet. (Bug#50974: http://bugs.mysql.com/bug.php?id=50974, CVE-2010-1849 (http://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2010-1849)) * Important Change: Replication: When invoked, CHANGE MASTER TO and SET GLOBAL sql_slave_skip_counter now cause information to be written to the error log about the slave's state prior to execution of the statement. For CHANGE MASTER TO, this information includes the previous values for MASTER_HOST, MASTER_PORT, MASTER_LOG_FILE, and MASTER_LOG_POS. For SET GLOBAL SQL_SLAVE_SKIP_COUNTER, this information includes the previous values of sql_slave_skip_counter, the group relay log name, and the group relay log position. (Bug#43406: http://bugs.mysql.com/bug.php?id=43406, Bug#43407: http://bugs.mysql.com/bug.php?id=43407) * Replication: The failure of a REVOKE statement was logged with the wrong error code, causing replication slaves to stop even when the failure was expected on the master. (Bug#51987: http://bugs.mysql.com/bug.php?id=51987) * Certain path names passed to LOAD_FILE() could cause a server crash. (Bug#53417: http://bugs.mysql.com/bug.php?id=53417) * When reporting a foreign key constraint violation during INSERT, InnoDB could display uninitialized data for the DB_TRX_ID and DB_ROLL_PTR system columns. (Bug#53202: http://bugs.mysql.com/bug.php?id=53202) * InnoDB page splitting could enter an infinite loop for compressed tables. (Bug#52964: http://bugs.mysql.com/bug.php?id=52964) * An overly strict assertion could fail during the purge of delete-marked records in DYNAMIC or COMPRESSED InnoDB tables that contain column prefix indexes. (Bug#52746: http://bugs.mysql.com/bug.php?id=52746) * InnoDB attempted to choose off-page storage without ensuring that there was an "off-page storage" flag in the record header. To correct this, in DYNAMIC and COMPRESSED formats, InnoDB stores locally any non-BLOB columns having a maximum length not exceeding 256 bytes. This is because there is no room for the "external storage" flag when the maximum length is 255 bytes or less. This restriction trivially holds in REDUNDANT and COMPACT formats, because there InnoDB always stores locally columns having a length up to local_len = 788 bytes. (Bug#52745: http://bugs.mysql.com/bug.php?id=52745) * Semi-consistent read was implemented for InnoDB to address Bug#3300: http://bugs.mysql.com/bug.php?id=3300. Semi-consistent reads do not block when a nonmatching record is already locked by some other transaction. If the record is not locked, a lock is acquired, but is released if the record does not match the WHERE condition. However, semi-consistent read was attempted even for UPDATE statements having a WHERE condition of the form pk_col1=constant1, ..., pk_colN=constantN. Some code that was designed with the assumption that semi-consistent read would be only attempted on table scans, failed. (Bug#52663: http://bugs.mysql.com/bug.php?id=52663) * Setting @@GLOBAL.debug to an empty string failed to clear the current debug settings. (Bug#52629: http://bugs.mysql.com/bug.php?id=52629) * A memory leak occurred due to missing deallocation of the comparators array (a member of the Arg_comparator class). (Bug#52124: http://bugs.mysql.com/bug.php?id=52124) * For debug builds, creating a view containing a subquery that might require collation adjustment caused an assertion to be raised. For example, this could occur if some items had different collations but the result collation could be adjusted to the one of them. (Bug#52120: http://bugs.mysql.com/bug.php?id=52120) * Connections waiting for an InnoDB row lock ignored KILL until the row lock wait ended. Now, KILL during lock wait results in "query interrupted" instead of "lock wait timeout exceeded". (Bug#51920: http://bugs.mysql.com/bug.php?id=51920) * Locking involving the LOCK_plugin, LOCK_global_system_variables, and LOCK_status mutexes could deadlock. (Bug#51591: http://bugs.mysql.com/bug.php?id=51591) * InnoDB fast index creation could incorrectly use a table copy in some cases. (Bug#50946: http://bugs.mysql.com/bug.php?id=50946) * A syntactically invalid trigger could cause the server to crash when trying to list triggers. (Bug#50755: http://bugs.mysql.com/bug.php?id=50755) * InnoDB Plugin checks to see whether a row could possibly exceed the maximum size if all columns are fully used. This produced Row size too large errors for some tables that could be created with the built-in InnoDB. Now the check is only done when innodb_strict_mode is enabled or if the table is dynamic or compressed. (Bug#50495: http://bugs.mysql.com/bug.php?id=50495) * In MySQL 5.1, READ COMMITTED was changed to use less locking due to the availability of row based binary logging (see the Note under READ COMMITTED at Section 12.3.6, "SET TRANSACTION Syntax"). However, READ UNCOMMITTED did not have the same change, so it was using more locks than the higher isolation level, which is unexpected. This was changed so that READ UNCOMMITTED now also uses the lesser amount of locking and has the same restrictions for binary logging. (Bug#48607: http://bugs.mysql.com/bug.php?id=48607) * EXPLAIN could cause a server crash for some queries with subqueries. (Bug#48419: http://bugs.mysql.com/bug.php?id=48419) * On Windows, the server failed to find a description for Event ID 100. (Bug#48042: http://bugs.mysql.com/bug.php?id=48042) * For updates to InnoDB tables, TIMESTAMP columns could be updated even when no values actually changed. (Bug#47453: http://bugs.mysql.com/bug.php?id=47453) * If the server is started with --skip-grant-tables, plugin loading and unloading should be disallowed, but the server failed to reject INSTALL PLUGIN and UNINSTALL PLUGIN statements. (Bug#46261: http://bugs.mysql.com/bug.php?id=46261) * Storage engine plugins on Windows could've been built with a definition of time_t which was different from the server expectations. The difference could cause affected plugins to crash. In addition, the use of the time_t type in the storage engine API layer has been enforced. (Bug#39802: http://bugs.mysql.com/bug.php?id=39802, Bug#40092: http://bugs.mysql.com/bug.php?id=40092) * When using UNINSTALL PLUGIN to remove a loaded plugin, open tables and connections caused mysqld to hang until the open connections had been closed. (Bug#39053: http://bugs.mysql.com/bug.php?id=39053) * 1) In rare cases, if a thread was interrupted during a FLUSH PRIVILEGES operation, a debug assertion occurred later due to improper diagnostic area setup. 2) A KILL operation could cause a console error message referring to a diagnostic area state without first ensuring that the state existed. (Bug#33982: http://bugs.mysql.com/bug.php?id=33982) Thanks, MySQL RE Team Hery Ramilison, Karen Langford, MySQL Release Engineers Database Group, Oracle.