<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>Marketgrid Consulting Blog &#187; MySQL</title>
	<atom:link href="http://www.marketgrid.com/blog/tag/mysql/feed/" rel="self" type="application/rss+xml" />
	<link>http://www.marketgrid.com/blog</link>
	<description>MySQL, website development and performance news</description>
	<lastBuildDate>Mon, 09 Jan 2012 12:39:12 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.3.1</generator>
		<item>
		<title>MySQL Workbench 5.2.37</title>
		<link>http://www.marketgrid.com/blog/2011/12/mysql-workbench-5-2-37/</link>
		<comments>http://www.marketgrid.com/blog/2011/12/mysql-workbench-5-2-37/#comments</comments>
		<pubDate>Tue, 27 Dec 2011 14:24:24 +0000</pubDate>
		<dc:creator>Phil Smith</dc:creator>
				<category><![CDATA[MySQL]]></category>
		<category><![CDATA[Releases]]></category>
		<category><![CDATA[MySQL Workbench]]></category>

		<guid isPermaLink="false">http://www.marketgrid.com/blog/?p=589</guid>
		<description><![CDATA[The MySQL Developer Tools team has announced the next maintenance release of it’s flagship product, MySQL Workbench, version 5.2.37. This release contains 21 bug fixes, including a fix for a slowdown on loading of schema objects in the SQL Editor. &#160; MySQL Workbench 5.2 GA &#160; • Data Modeling • Query (replaces the old MySQL [...]]]></description>
			<content:encoded><![CDATA[<p>The MySQL Developer Tools team has announced the next maintenance release of it’s flagship product, MySQL Workbench, version 5.2.37.</p>
<p>This release contains 21 bug fixes, including a fix for a slowdown on loading of schema objects in the SQL Editor.</p>
<p>&nbsp;</p>
<p>MySQL Workbench 5.2 GA</p>
<p>&nbsp;</p>
<p>• Data Modeling</p>
<p>• Query (replaces the old MySQL Query Browser)</p>
<p>• Administration (replaces the old MySQL Administrator)</p>
<p>Sources and binary packages are available for several platforms, including Windows, Mac OS X and Linux.</p>
<p>&nbsp;</p>
<p>In addition to the new Query/SQL Development and Administration modules, version 5.2 features improved stability and performance – especially in Windows, where OpenGL support has been enhanced and the UI was optimized to offer better responsiveness. This release also includes improvements to the scripting capabilities of the SQL Editor.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.marketgrid.com/blog/2011/12/mysql-workbench-5-2-37/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>MySQL Connector/Net 6.3.8 GA</title>
		<link>http://www.marketgrid.com/blog/2011/12/mysql-connectornet-6-3-8-ga/</link>
		<comments>http://www.marketgrid.com/blog/2011/12/mysql-connectornet-6-3-8-ga/#comments</comments>
		<pubDate>Fri, 23 Dec 2011 03:12:30 +0000</pubDate>
		<dc:creator>Phil Smith</dc:creator>
				<category><![CDATA[MySQL]]></category>
		<category><![CDATA[Releases]]></category>
		<category><![CDATA[MySql Connector/Net]]></category>

		<guid isPermaLink="false">http://www.marketgrid.com/blog/?p=582</guid>
		<description><![CDATA[MySQL Connector/Net 6.3.8, a new version of the all-managed .NET driver for MySQL has been released.  This is a maintenance release to the 6.3 release chain and includes 40 changes and fixes. &#160; Version 6.3.8 is appropriate for use with versions of MySQL 5.0-5.5.]]></description>
			<content:encoded><![CDATA[<p>MySQL Connector/Net 6.3.8, a new version of the all-managed .NET driver</p>
<p>for MySQL has been released.  This is a maintenance release to the 6.3</p>
<p>release chain and includes 40 changes and fixes.</p>
<p>&nbsp;</p>
<p>Version 6.3.8 is appropriate for use with versions of MySQL 5.0-5.5.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.marketgrid.com/blog/2011/12/mysql-connectornet-6-3-8-ga/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>MySQL Community Server 5.6.4</title>
		<link>http://www.marketgrid.com/blog/2011/12/mysql-community-server-5-6-4/</link>
		<comments>http://www.marketgrid.com/blog/2011/12/mysql-community-server-5-6-4/#comments</comments>
		<pubDate>Thu, 22 Dec 2011 12:40:03 +0000</pubDate>
		<dc:creator>Phil Smith</dc:creator>
				<category><![CDATA[MySQL]]></category>
		<category><![CDATA[Releases]]></category>
		<category><![CDATA[MySql 5.6]]></category>

		<guid isPermaLink="false">http://www.marketgrid.com/blog/?p=576</guid>
		<description><![CDATA[MySQL Server 5.6.4 (Milestone Release) is a new version of the world&#8217;s most popular open source database. 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. Note that 5.6.4 includes all features in [...]]]></description>
			<content:encoded><![CDATA[<p>MySQL Server 5.6.4 (Milestone Release) is a new version of the world&#8217;s<br />
most popular open source database.</p>
<p>The new features in these releases are of beta quality. As with any<br />
other pre-production release, caution should be taken when installing on<br />
production level systems or systems with critical data.</p>
<p>Note that 5.6.4 includes all features in MySQL 5.5.</p>
<p>D.1.2. Changes in MySQL 5.6.4 (20 December 2011 Milestone 7)</p>
<p>Condition Handler Changes</p>
<p>* Incompatible Change: MySQL now supports the GET DIAGNOSTICS<br />
statement. GET DIAGNOSTICS provides applications a<br />
standardized way to obtain information from the diagnostics<br />
area, such as whether the previous SQL statement produced an<br />
exception and what it was. For more information, see Section<br />
12.6.7.3, &#8220;GET DIAGNOSTICS Syntax.&#8221;</p>
<p>In addition several deficiencies in condition handler<br />
processing rules were corrected so that MySQL behavior is more<br />
like standard SQL:</p>
<p>+ Block scope is used in determining which handler to<br />
select. Previously, a stored program was treated as<br />
having a single scope for handler selection.</p>
<p>+ Condition precedence is more accurately resolved.</p>
<p>+ Diagnostics area clearing has changed. Bug #55843 caused<br />
handled conditions to be cleared from the diagnostics<br />
area before activating the handler. This made condition<br />
information unavailable within the handler. Now condition<br />
information is available to the handler, which can<br />
inspect it with the GET DIAGNOSTICS statement. The<br />
condition information is cleared when the handler exits,<br />
if it has not already been cleared during handler<br />
execution.</p>
<p>+ Previously, handlers were activated as soon as a<br />
condition occurred. Now they are not activated until the<br />
statement in which the condition occurred finishes<br />
execution, at which point the most appropriate handler is<br />
chosen. This can make a difference for statements that<br />
raise multiple conditions, if a condition raised later<br />
during statement execution has higher precedence than an<br />
earlier condition and there are handlers in the same<br />
scope for both conditions. Previously, the handler for<br />
the first condition raised would be chosen, even if it<br />
had a lower precedence than other handlers. Now the<br />
handler for the condition with highest precedence is<br />
chosen, even if it is not the first condition raised by<br />
the statement.</p>
<p>+ Issues that caused server crashes resulting from<br />
incorrect handler call stack processing were fixed.</p>
<p>The work just described involved several condition-handler bug<br />
fixes:</p>
<p>+ The RETURN statement did not clear the diagnostics area<br />
as it should have. Now the diagnostics area is cleared<br />
before executing RETURN. This prevents a condition in a<br />
nested function call from incorrectly propagating to an<br />
outer scope. It also means there is no way to return an<br />
SQL warning from a stored function. This change is not<br />
backward compatible, but the resulting behavior is more<br />
like standard SQL.</p>
<p>+ When an SQL HANDLER was activated, the handled condition<br />
was immediately removed from the diagnostics area.<br />
Consequently, any SQL diagnostic statement executed in<br />
the handler was unable to examine the condition that<br />
triggered the handler.</p>
<p>+ If multiple handlers existed at the same level within a<br />
stored program, the wrong one could be chosen.</p>
<p>+ If an error occurred in a context where different<br />
handlers were present at different levels of nesting, an<br />
outer handler could be chosen rather than the innermost<br />
one.</p>
<p>For more information, see Section 12.6.7.6, &#8220;Scope Rules for<br />
Handlers.&#8221; (Bug #12951117, Bug #38806, Bug #11749343, Bug<br />
#55852, Bug #11763171, Bug #61392, Bug #12652873, Bug #11660,<br />
Bug #11745196)</p>
<p>Fractional Seconds Handling</p>
<p>* Incompatible Change: MySQL now permits fractional seconds for<br />
TIME, DATETIME, and TIMESTAMP values, with up to microseconds<br />
(6 digits) precision. To define a column that includes a<br />
fractional seconds part, use the syntax type_name(fsp), where<br />
type_name is TIME, DATETIME, or TIMESTAMP, and fsp is the<br />
fractional seconds precision. For example:<br />
CREATE TABLE t1 (t TIME(3), dt DATETIME(6));<br />
The fsp value, if given, must be in the range 0 to 6. A value<br />
of 0 signifies that there is no fractional part. If omitted,<br />
the default precision is 0. (This differs from the standard<br />
SQL default of 6, for compatibility with previous MySQL<br />
versions.)<br />
The following items summarize the implications of this change.<br />
See also Section 10.3.4, &#8220;Fractional Seconds in Time Values.&#8221;</p>
<p>+ For TIME, DATETIME, and TIMESTAMP columns, the encoding<br />
and storage requirements in new tables differ from such<br />
columns in tables created previously because these types<br />
now include a fractional seconds part.</p>
<p>+ Syntax for temporal literals now produces temporal<br />
values: DATE &#8216;str&#8217;, TIME &#8216;str&#8217;, and TIMESTAMP &#8216;str&#8217;, and<br />
the ODBC-syntax equivalents. Previously, the temporal<br />
type keyword was ignored and these constructs produced<br />
the string value.</p>
<p>+ Functions that take temporal arguments accept values with<br />
fractional seconds. Return values from temporal functions<br />
include fractional seconds as appropriate.</p>
<p>+ Three INFORMATION_SCHEMA tables, COLUMNS, PARAMETERS, and<br />
ROUTINES, now have a DATETIME_PRECISION column. Its value<br />
is the fractional seconds precision for TIME, DATETIME,<br />
and TIMESTAMP columns, and NULL for other data types.</p>
<p>+ The C API accommodates fractional seconds as follows:<br />
o In the MYSQL_FIELD column metadata structure, the<br />
decimals member indicates the fractional seconds<br />
precision for TIME, DATETIME, and TIMESTAMP columns.<br />
Clients can determine whether a result set temporal<br />
column has a fractional seconds part by checking for<br />
a nonzero decimals value in the corresponding<br />
MYSQL_FIELD structure. Previously, the decimals<br />
member indicated the precision for numeric columns<br />
and was zero otherwise.<br />
o In the MYSQL_TIME structure used for the binary<br />
protocol, the second_part member indicates the<br />
microseconds part for TIME, DATETIME, and TIMESTAMP<br />
columns. Previously, the second_part member was<br />
unused.<br />
In some cases, previously accepted syntax may produce<br />
different results. The following items indicate where existing<br />
code may need to be changed to avoid problems:</p>
<p>+ Some expressions produce results that differ from<br />
previous results. Examples: The timestamp system variable<br />
returns a value that includes a microseconds fractional<br />
part rather than an integer. Functions that return a<br />
result that includes the current time (such as CURTIME(),<br />
SYSDATE(), or UTC_TIMESTAMP()) interpret an argument as<br />
an fsp value and the return value includes a fractional<br />
seconds part of that many digits. Previously, these<br />
functions permitted an argument but ignored it.</p>
<p>+ TIME values are converted to DATETIME by adding the time<br />
to the current date. (This means that the date part of<br />
the result differs from the current date if the time<br />
value is outside the range from &#8217;00:00:00&#8242; to<br />
&#8217;23:59:59&#8242;.) Previously, conversion of TIME values to<br />
DATETIME was unreliable. See Section 10.3.5, &#8220;Conversion<br />
Between Date and Time Types.&#8221;</p>
<p>+ TIMESTAMP(N) was permitted in old MySQL versions, but N<br />
was a display width rather than fractional seconds<br />
precision. Support for this behavior was removed in MySQL<br />
5.5.3, so applications that are reasonably up to date<br />
should not be subject to this issue. Otherwise, code must<br />
be rewritten.</p>
<p>Note<br />
There may be problems replicating from a master server that<br />
understands fractional seconds to an older slave that does<br />
not:</p>
<p>+ For CREATE TABLE statements containing columns that have<br />
an fsp value greater than 0, replication will fail due to<br />
parser errors.</p>
<p>+ Statements that use temporal data types with an fsp value<br />
of 0 will work for with statement-based logging but not<br />
row-based logging. In the latter case, the data types<br />
have binary formats and type codes on the master that<br />
differ from those on the slave.</p>
<p>+ Some expression results will differ on master and slave.<br />
For example, expressions that involve the timestamp<br />
system variable or functions that return the current time<br />
have different results, as described earlier.<br />
(Bug #8523, Bug #11745064)</p>
<p>Optimizer Features</p>
<p>* These query optimizer improvements were implemented:</p>
<p>+ The optimizer detects and optimizes away these useless<br />
query parts within IN/ALL/SOME/EXISTS subqueries:</p>
<p>o DISTINCT<br />
o GROUP BY, if there is no HAVING clause and no<br />
aggregate functions<br />
o ORDER BY, which has no effect because LIMIT is not<br />
supported in these subqueries</p>
<p>Performance Schema Notes</p>
<p>* The Performance Schema has these additions:</p>
<p>+ The Performance Schema now permits instrument and<br />
consumer configuration at server startup, which<br />
previously was possible only at runtime using UPDATE<br />
statements for the setup_instruments and setup_consumers<br />
tables. This change was made because configuration at<br />
runtime is too late to disable instruments that have<br />
already been initialized during server startup. For<br />
example, the wait/sync/mutex/sql/LOCK_open mutex is<br />
initialized once during server startup, so attempts to<br />
disable the corresponding instrument at runtime have no<br />
effect.</p>
<p>To control an instrument at server startup, use an option<br />
of this form:</p>
<p>&#8211;performance_schema_instrument=&#8217;instrument_name=value&#8217;</p>
<p>Here, instrument_name is an instrument name such as<br />
wait/sync/mutex/sql/LOCK_open, and value is one of these<br />
values:</p>
<p>o off, false, or 0: Disable the instrument<br />
o on, true, or 1: Enable and time the instrument<br />
o counted: Enable and count (rather than time) the<br />
instrument</p>
<p>Each &#8211;performance_schema_instrument option can specify<br />
only one instrument name, but multiple instances of the<br />
option can be given to configure multiple instruments. In<br />
addition, patterns are permitted in instrument names to<br />
configure instruments that match the pattern. To<br />
configure all condition synchronization instruments as<br />
enabled and counted, use this option:</p>
<p>&#8211;performance_schema_instrument=&#8217;wait/synch/cond/%=counted&#8217;</p>
<p>To disable all instruments, use this option:<br />
&#8211;performance_schema_instrument=&#8217;%=off&#8217;</p>
<p>Longer instrument name strings take precedence over<br />
shorter pattern names, regardless of order. For<br />
information about specifying patterns to select<br />
instruments, see Section 19.2.3.2.2, &#8220;Naming Instruments<br />
or Consumers for Filtering Operations.&#8221;</p>
<p>An unrecognized instrument name is ignored. It is<br />
possible that a plugin installed later may create the<br />
instrument, at which time the name is recognized and<br />
configured.</p>
<p>To control a consumer at server startup, use an option of<br />
this form:</p>
<p>&#8211;performance_schema_consumer_consumer_name=value</p>
<p>Here, consumer_name is a consumer name such as<br />
events_waits_history, and value is one of these values:</p>
<p>o off, false, or 0: Do not collect events for the<br />
consumer<br />
o on, true, or 1: Collect events for the consumer</p>
<p>For example, to enable the events_waits_history consumer,<br />
use this option:</p>
<p>&#8211;performance_schema_consumer_events_waits_history=on</p>
<p>The permitted consumer names can be found by examining<br />
the setup_consumers table. Patterns are not permitted.<br />
Along with the preceding changes to permit configuration<br />
at server startup, the default instrument and consumer<br />
configuration has changed. Previously, all instruments<br />
and consumers were enabled by default. Now, instruments<br />
are disabled except the statement, I/O, and idle<br />
instruments. Consumers are disabled except the global,<br />
thread, and statement consumers. These changes produce a<br />
default configuration with minimal overhead.</p>
<p>+ Tables that have an EVENT_ID column now also have an<br />
END_EVENT_ID column to support determination of nested<br />
event relationships:</p>
<p>o events_waits_current, events_waits_history,<br />
events_waits_history_long</p>
<p>o events_stages_current, events_stages_history,<br />
events_stages_history_long</p>
<p>o events_statements_current,<br />
events_statements_history,<br />
events_statements_history_long</p>
<p>As before, EVENT_ID is populated with the thread current<br />
event counter when an event starts. In addition,<br />
END_EVENT_ID is NULL until the event ends, at which point<br />
it is set to the new thread current event counter. This<br />
permits the relationship &#8220;event A is included in event B&#8221;<br />
to be determined using the following expression, without<br />
having to follow each inclusion relationship using<br />
NESTING_EVENT_ID:</p>
<p>A.EVENT_ID&lt;= B.EVENT_ID AND B.END_EVENT_ID&lt;= A.END_EVENT_ID</p>
<p>+ The Performance Schema aggregates file I/O operations in<br />
two places, the events_waits_summary_xxx tables and the<br />
file_summary_xxx tables. It was possible to join the<br />
events_waits_summary_global_by_event_name table to the<br />
file_summary_by_event_name by using the EVENT_NAME<br />
column. However, it was not possible to do the same with<br />
the events_waits_summary_by_instance and<br />
file_summary_by_instance tables because the former uses<br />
OBJECT_INSTANCE_BEGIN as the instance identifier and the<br />
latter uses FILE_NAME. This means that it was possible to<br />
obtain both file I/O latency and usage per file, but not<br />
to correctly correlate latency to usage when there was<br />
more than one form of file (such as multiple redo logs,<br />
table files, and so forth).</p>
<p>To address this issue, the file_summary_by_instance table<br />
now has an OBJECT_INSTANCE_BEGIN column. In addition,<br />
both file_summary_by_instance and<br />
file_summary_by_event_name have additional aggregation<br />
columns (such as timer wait information), which in many<br />
cases makes it possible to obtain the desired summary<br />
information without need for a join at all.</p>
<p>If you upgrade to this release of MySQL from an earlier<br />
version, you must run mysql_upgrade (and restart the server)<br />
to incorporate these changes into the performance_schema<br />
database.</p>
<p>For more information, see Chapter 19, &#8220;MySQL Performance<br />
Schema.&#8221;</p>
<p>Functionality Added or Changed</p>
<p>* Replication: Previously, replication slaves could connect to<br />
the master server only through master accounts that use native<br />
authentication. Now replication slaves can also connect<br />
through master accounts that use nonnative authentication if<br />
the required client-side plugin is installed on the slave side<br />
in the directory named by the slave plugin_dir system<br />
variable. (Bug #12897501)</p>
<p>* The optimizer trace capability now tracks temporary tables<br />
created by the server during statement execution. (Bug<br />
#13400713)</p>
<p>* Performance of metadata locking operations on Windows XP<br />
systems was improved by instituting a cache for metadata lock<br />
objects. This permits the server to avoid expensive operations<br />
for creation and destruction of synchronization objects on XP.<br />
A new system variable, metadata_locks_cache_size, permits<br />
control over the size of the cache. The default size is 1024.<br />
(Bug #12695572)</p>
<p>* Upgrading from an Advanced GPL RPM package to an Advanced RPM<br />
package did not work. Now on Linux it is possible to use rpm<br />
-U to replace any installed MySQL product by any other of the<br />
same release family. It is not necessary to remove the old<br />
produce with rpm -e first. (Bug #11886309)</p>
<p>* The make_win_bin_dist script is no longer used and has been<br />
removed from MySQL distributions and the manual. (Bug #58241)</p>
<p>* MEMORY table creation time is now available in the CREATE_TIME<br />
column of the INFORMATION_SCHEMA.TABLES table and the<br />
Create_time column of SHOW TABLE STATUS output. (Bug #51655,<br />
Bug #11759349)</p>
<p>* Previously, MySQL servers from 5.1 and up refused to open<br />
ARCHIVE tables created in 5.0 because opening them caused a<br />
server crash. The server now can open 5.0 ARCHIVE tables, and<br />
REPAIR TABLE updates them to the format used in 5.6. However,<br />
the recommended upgrade procedure is still to dump 5.0 ARCHIVE<br />
tables before upgrading and reload them after upgrading. (Bug<br />
#48633, Bug #11756687)</p>
<p>* The MySQL code base was changed to permit use of the C++<br />
Standard Library and to enable exceptions and runtime type<br />
information (RTTI). This change has the following<br />
implications:</p>
<p>+ Libraries and executables depend on some C++ standard<br />
library. On Linux, this has not been the case previously.<br />
On Solaris, the default dependency has changed from the<br />
default library to libstlport, which is now included with<br />
binary distributions for users whose system does not have<br />
it.</p>
<p>+ The -fno-rtti and -fno-exceptions options are no longer<br />
used to build plugins, such as storage engines. Users who<br />
write their own plugins should omit these options if they<br />
were using tem.</p>
<p>+ C++ users who compile from source should set CXX to a C++<br />
compiler rather than a C compiler. For example, use g++<br />
rather than gcc. This includes the server as well as<br />
client programs.</p>
<p>+ mysql_config now has a &#8211;cxxflags option. This is like<br />
the &#8211;cflags option, but produces flags appropriate for a<br />
C++ compiler rather than a C compiler.</p>
<p>+ User-defined functions can be written in C++ using<br />
standard library features.</p>
<p>* New optimizations apply to read-only InnoDB transactions. See<br />
Section 13.2.5.2.2, &#8220;Optimizations for Read-Only Transactions&#8221;<br />
for details. The new optimizations make autocommit more<br />
applicable to InnoDB queries than before, as a way to signal<br />
that a transaction is read-only because it is a<br />
single-statement SELECT.</p>
<p>* You can now set the InnoDB page size for uncompressed tables<br />
to 8KB or 4KB, as an alternative to the default 16KB. This<br />
setting is controlled by the innodb_page_size configuration<br />
option. You specify the size when creating the MySQL instance.<br />
All InnoDB tablespaces within an instance share the same page<br />
size. Smaller page sizes can help to avoid redundant or<br />
inefficient I/O for certain combinations of workload and<br />
storage devices, particularly SSD devices with small block<br />
sizes.</p>
<p>* MySQL now supports FULLTEXT indexes for InnoDB tables. The<br />
core syntax is very similar to the FULLTEXT capability from<br />
earlier releases, with the CREATE TABLE and CREATE INDEX<br />
statements, and MATCH() &#8230; AGAINST() clause in the SELECT<br />
statement. The new @ operator allows proximity searches for<br />
terms that are near each other in the document. The detailed<br />
search processing is controlled by a new set of configuration<br />
options: innodb_ft_enable_stopword,<br />
innodb_ft_server_stopword_table,<br />
innodb_ft_user_stopword_table, innodb_ft_cache_size,<br />
innodb_ft_min_token_size, and innodb_ft_max_token_size. You<br />
can monitor the workings of the InnoDB full-text search system<br />
by querying new INFORMATION_SCHEMA tables:<br />
innodb_ft_default_stopword, innodb_ft_index_table,<br />
innodb_ft_index_cache, innodb_ft_config, innodb_ft_deleted,<br />
and innodb_ft_being_deleted.</p>
<p>Bugs Fixed</p>
<p>* Incompatible Change: Replication: The statements in the<br />
following list are now marked as unsafe for statement-based<br />
replication. This is due to the fact that each of these<br />
statements depends on the results of a SELECT statement whose<br />
order cannot always be determined. When using STATEMENT<br />
logging mode, a warning is issued in the binary log for any of<br />
these statements; when using MIXED logging mode, the statement<br />
is logged using the row-based format.</p>
<p>+ INSERT &#8230; SELECT &#8230; ON DUPLICATE KEY UPDATE<br />
+ REPLACE &#8230; SELECT<br />
+ CREATE TABLE &#8230; IGNORE SELECT<br />
+ CREATE TABLE &#8230; REPLACE SELECT<br />
+ INSERT IGNORE &#8230; SELECT<br />
+ UPDATE IGNORE</p>
<p>When upgrading, you should note the use of these statements in<br />
your applications, keeping in mind that a statement that<br />
inserts or replaces rows obtained from a SELECT can take up<br />
many times as much space in the binary log when logged using<br />
row-based format than when only the statement itself is<br />
logged. Depending on the number and size of the rows selected<br />
and inserted (or replaced) by any such statements, the<br />
difference in size of the binary log after the logging of<br />
these statements is switched from statement-based to row-based<br />
can potentially be several orders of magnitude. See Section<br />
15.1.2.1, &#8220;Advantages and Disadvantages of Statement-Based and<br />
Row-Based Replication.&#8221; (Bug #11758262, Bug #50439)</p>
<p>* Incompatible Change: Previously, &#8220;Aborted connection&#8221; errors<br />
were written to the error log based on the session value of<br />
log_warnings, which permitted users with minimal privileges to<br />
cause many messages to be written to the log unless restricted<br />
by the MAX_CONNECTIONS_PER_HOUR resource limit. Now this<br />
logging is based on the global log_warnings variable. There<br />
are no remaining uses of the session log_warnings variable, so<br />
it has been removed that the variable has only a global value.<br />
(Bug #53466, Bug #11761014)</p>
<p>* Important Change: InnoDB Storage Engine: Data from BLOB<br />
columns could be lost if the server crashed at a precise<br />
moment when other columns were being updated in an InnoDB<br />
table. (Bug #12704861)</p>
<p>* InnoDB Storage Engine: This fix improves the performance of<br />
instrumentation code for InnoDB buffer pool operations. (Bug<br />
#12950803, Bug #62294)</p>
<p>* InnoDB Storage Engine: Unused functions were removed from the<br />
internal InnoDB code related to mini-transactions, to clarify<br />
the logic. (Bug #12626794, Bug #61240)</p>
<p>* InnoDB Storage Engine: Lookups using secondary indexes could<br />
give incorrect matches under a specific set of conditions. The<br />
conditions involve an index defined on a column prefix, for a<br />
BLOB or other long column stored outside the index page, with<br />
a table using the Barracuda file format. (Bug #12601439)</p>
<p>* InnoDB Storage Engine: This fix corrects cases where the MySQL<br />
server could hang or abort with a long semaphore wait message.<br />
(This is a different issue than when these symptoms occurred<br />
during a CHECK TABLE statement.) (Bug #11766591, Bug #59733)</p>
<p>* Partitioning: CHECKSUM TABLE returned 0 for a partitioned<br />
table unless the statement was used with the EXTENDED option.<br />
(Bug #11933226, Bug #60681)</p>
<p>* Partitioning: Error 1214 (ER_TABLE_CANT_HANDLE_FT), given when<br />
trying to use a FULLTEXT index with a partitioned table,<br />
displayed the misleading text The used table type doesn&#8217;t<br />
support FULLTEXT indexes was misleading and has been replaced<br />
with Error 1752 (ER_FULLTEXT_NOT_SUPPORTED_WITH_PARTITIONING)<br />
which shows the more accurate FULLTEXT index is not supported<br />
for partitioned tables. (Bug #11763825, Bug #56590)</p>
<p>* Replication: The value set for the slave_parallel_workers<br />
system variable (or the corresponding &#8211;slave-parallel-workers<br />
server option) was not always honored correctly; in such cases<br />
a random value was used. (Bug #13334470)</p>
<p>* Replication: Several warnings and informational messages were<br />
revised for typographic errors and clarity. (Bug #12947248,<br />
Bug #12978113)</p>
<p>* Replication: A replication master could send damaged events to<br />
slaves after the binary log disk on the master became full. To<br />
correct this issue, only complete events are now pushed by the<br />
master dump thread to the slave I/O thread. In addition, the<br />
error text that the master sends to the slave when an<br />
incomplete event is found now states that the incomplete event<br />
may have been caused by running out of disk space on the<br />
master, and provides coordinates of the first and the last<br />
event bytes read. (Bug #11747416, Bug #32228)</p>
<p>* A derived table with more than 64 columns caused a server<br />
crash. (Bug #13354889)</p>
<p>* Writes to the slow log involved a call to thd-&gt;current_utime()<br />
even if no log entries ended up being written, unnecessarily<br />
reducing performance. (Bug #13326965)</p>
<p>* Rounding DBL_MAX returned DBL_MAX, not &#8216;inf&#8217;. (Bug #13261955)</p>
<p>* Access privileges were checked for each stored program<br />
instruction, even if the instruction used no tables, resulting<br />
in reduced performance. (Bug #13251277)</p>
<p>* The error message for ER_EVENT_CANNOT_ALTER_IN_THE_PAST was<br />
incorrect. (Bug #13247871)</p>
<p>* During the table-opening process, memory was allocated and<br />
later freed that was needed view loading, even for statements<br />
that did not use views. These unnecessary allocation and free<br />
operations are no longer done. (Bug #13116518)</p>
<p>* Subqueries with OUTER JOIN could return incorrect results if<br />
the subquery referred to a column from another SELECT. (Bug<br />
#13068506)</p>
<p>* The Performance Schema nested some network I/O events within<br />
the wrong statement. (Bug #12981100)</p>
<p>* mysql_plugin mishandled the &#8211;plugin-ini, &#8211;mysqld, and<br />
&#8211;my-print-defaults options under some circumstances. (Bug<br />
#12968815)</p>
<p>* mysql_plugin returned the wrong error code from failed server<br />
bootstrap execution. (Bug #12968567)</p>
<p>* Internal conversion of zero to binary and back could yield a<br />
result with incorrect precision. (Bug #12911710)</p>
<p>* Valgrind warnings generated by filesort operations were fixed.<br />
(Bug #12856915)</p>
<p>* Partitioning: Using ALTER TABLE to remove partitioning from a<br />
valid MyISAM table could corrupt it. (Bug #52599, Bug<br />
#11760213)</p>
<p>* An IN-to-EXISTS subquery transformation could yield incorrect<br />
results if the outer value list contained NULL. (Bug<br />
#12838171)</p>
<p>* With index condition pushdown enabled, STRAIGHT_JOIN queries<br />
could produce incorrect results. (Bug #12822678, Bug<br />
#12724899)</p>
<p>* The result of ROUND() was incorrect for certain numbers. (Bug<br />
#12744991)</p>
<p>* A warning resulting from use of SPACE() referred to REPEAT()<br />
in the warning message. (Bug #12735829)</p>
<p>* IN and EXISTS subqueries with DISTINCT and ORDER BY could<br />
return incorrect results. (Bug #12709738)</p>
<p>* Several improvements were made to the libedit library bundled<br />
with MySQL distributions, and that is available for all<br />
platforms that MySQL supports except Windows.</p>
<p>+ Navigation keys did not work for UTF-8 input.</p>
<p>+ Word navigation and delete operations did not work for<br />
UTF-8 input with Cyrillic characters.</p>
<p>+ Nonlatin characters were corrupted in overwrite mode for<br />
UTF-8 input.</p>
<p>+ Long queries caused the statement history file to become<br />
corrupted.</p>
<p>+ The Alt key caused history operations to fail.</p>
<p>(Bug #12605400, Bug #12613725, Bug #12618092, Bug #12624155,<br />
Bug #12617651, Bug #12605388)</p>
<p>* SELECT SQL_BUFFER_RESULT query results included too many rows<br />
if a GROUP BY clause was optimized away. (Bug #12578908)</p>
<p>* mysqldump &#8211;all-databases did not dump the replication log<br />
tables. (They could be dumped only by naming them explicitly<br />
when invoking mysqldump, and using the &#8211;master-data option.)</p>
<p>As a result of the fix for this problem, it is now possible to<br />
execute statements requiring read locks on the replication log<br />
tables at any time, while any statements requiring a write<br />
lock on either or both of these tables are disallowed whenever<br />
replication is in progress. For more information, see Section<br />
15.2.2, &#8220;Replication Relay and Status Logs.&#8221; (Bug #12402875,<br />
Bug #60902)</p>
<p>* mysqld_safe did not properly check for an already running<br />
instance of mysqld. (Bug #11878394)</p>
<p>* Replication: &#8211;replicate-rewrite-db=from_name-&gt;to_name did not<br />
work correctly when the name of the source database<br />
(from_name) consisted of only a single character. (Bug #34332,<br />
Bug #11747866)</p>
<p>* If index condition pushdown access was chosen and then<br />
abandoned, some variables were not cleared, leading to<br />
incorrect query results. (Bug #62533)</p>
<p>* For a lower_case_table_names value of 1 or 2 and a database<br />
having a mixed-case name, calling a stored function using a<br />
fully qualified name including the database name failed. (Bug<br />
#60347, Bug #11840395)</p>
<p>* mysql_upgrade did not upgrade the system tables or create the<br />
mysql_upgrade_info file when run with the &#8211;write-binlog or<br />
&#8211;skip-write-binlog option. (Bug #60223, Bug #11827359)</p>
<p>* A multiple-table UPDATE statement required the UPDATE<br />
privilege on a view which was only read if the view was<br />
processed using the merge algorithm. (Bug #59957, Bug<br />
#11766767)</p>
<p>* When a join operation contained a view, the optimizer<br />
sometimes failed to associate the view&#8217;s WHERE clause<br />
with the first table or view in a join when it was<br />
possible to do so, resulting in a less efficient query.<br />
(Bug #59696, Bug #11766559)</p>
<p>* An assertion was raised when selecting from a view that<br />
selects from a view that used a user-defined function that had<br />
been deleted. (Bug #59546, Bug #11766440)</p>
<p>* The help message for mysql_install_db did not indicate that it<br />
supports the &#8211;defaults-file, &#8211;defaults-extra-file and<br />
&#8211;no-defaults options. (Bug #58898, Bug #11765888)</p>
<p>* mysql_install_db printed the &#8211;skip-grant-tables server option<br />
as &#8211;skip-grant in one of its error messages. (Bug #58534, Bug<br />
#11765553)</p>
<p>* An assertion designed to detect zero-length sort keys also was<br />
raised when the entire key set fit in memory. (Bug #58200, Bug<br />
#11765254)</p>
<p>* During optimization, ZEROFILL values may be converted to<br />
string constants. However, CASE expressions did not handle<br />
switching data types after the planning stage, leading to CASE<br />
finding a null pointer instead of its argument. (Bug #57135,<br />
Bug #11764313)</p>
<p>* If a plugin was uninstalled, thread local variables for plugin<br />
variables of string type with wth PLUGIN_VAR_MEMALLOC flag<br />
were not freed. (Bug #56652, Bug #11763882)</p>
<p>* Deadlock could occur when these four things happened at the<br />
same time: 1) An old dump thread was waiting for the binary<br />
log to grow. 2) The slave server that replicates from the old<br />
dump thread tried to reconnect. During reconnection, the new<br />
dump thread tried to kill the old dump thread. 3) A KILL<br />
statement tried to kill the old dump thread. 4) An INSERT<br />
statement caused a binary log rotation. (Bug #56299, Bug<br />
#11763573)</p>
<p>* myisampack could create corrupt FULLTEXT indexes when<br />
compressing tables. (Bug #53646, Bug #11761180)</p>
<p>* The SQL_BIG_RESULT modifier could change the results for<br />
queries that included a GROUP BY clause. (Bug #53534, Bug<br />
#11761078)</p>
<p>* ARCHIVE tables with NULL columns could cause server crashes or<br />
become corrupt under concurrent load. (Bug #51252, Bug<br />
#11758979)</p>
<p>* InnoDB used incorrect identifier quoting style in an error<br />
message that resulted in an error if a user followed the<br />
suggestion in the message. (Bug #49556, Bug #11757503)</p>
<p>* OPTIMIZE TABLE could corrupt MyISAM tables if myisam_use_mmap<br />
was enabled. (Bug #49030, Bug #11757032)</p>
<p>* A query that selected a GROUP_CONCAT() function result could<br />
return different values depending on whether an ORDER BY of<br />
the function result was present. (Bug #41090, Bug #11750518)</p>
<p>* A linking problem prevented the FEDERATED storage engine<br />
plugin from loading. (Bug #40942, Bug #11750417)</p>
<p>* Subqueries could return incorrect results when materialization<br />
was enabled. (Bug #40037, Bug #11749901, Bug #12705660, Bug<br />
#12908058)</p>
<p>* For debug builds, an assertion could be raised for ALTER<br />
statements that performed a RENAME operation. This occurred<br />
for storage engine handlertons that exposed the<br />
HTON_FLUSH_AFTER_RENAME flag. (Bug #38028, Bug #11749050)</p>
<p>* The estimate of space required for filesort operations could<br />
be too high, resulting in inefficient initialization. (Bug<br />
#37359, Bug #11748783)</p>
<p>* An ALTER TABLE that included an ADD &#8230; AFTER operation to add<br />
a new column after a column that had been modified earlier in<br />
the statement failed to find the existing column. (Bug #34972,<br />
Bug #11748057)</p>
<p>* For FEDERATED tables, loss of connection to the remote table<br />
during some insert operations could cause a server crash. (Bug<br />
#34660, Bug #11747970)</p>
<p>* For some queries, the index_merge access method was used even<br />
when more expensive then ref access. (Bug #32254, Bug<br />
#11747423)</p>
]]></content:encoded>
			<wfw:commentRss>http://www.marketgrid.com/blog/2011/12/mysql-community-server-5-6-4/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>MySQL Community Server 5.5.15</title>
		<link>http://www.marketgrid.com/blog/2011/07/mysql-community-server-5-5-15/</link>
		<comments>http://www.marketgrid.com/blog/2011/07/mysql-community-server-5-5-15/#comments</comments>
		<pubDate>Fri, 29 Jul 2011 14:58:28 +0000</pubDate>
		<dc:creator>Phil Smith</dc:creator>
				<category><![CDATA[MySQL]]></category>
		<category><![CDATA[MySQL Community Server]]></category>

		<guid isPermaLink="false">http://www.marketgrid.com/blog/?p=573</guid>
		<description><![CDATA[MySQL 5.5.15 is a new version of the 5.5 production release of the world&#8217;s most popular open source database. MySQL 5.5.15 is recommended for use on production systems. &#160; MySQL 5.5 includes several high-impact enhancements to improve the performance and scalability of the MySQL Database, taking advantage of the latest multi-CPU and multi-core hardware and [...]]]></description>
			<content:encoded><![CDATA[<p>MySQL 5.5.15 is a new version of the 5.5 production release of the world&#8217;s most popular open source database. MySQL 5.5.15 is recommended for use on production systems.</p>
<p>&nbsp;</p>
<p>MySQL 5.5 includes several high-impact enhancements to improve the performance and scalability of the MySQL Database, taking advantage of the latest multi-CPU and multi-core hardware and operating systems. In</p>
<p>addition, with release 5.5, InnoDB is now the default storage engine for the MySQL Database, delivering ACID transactions, referential integrity and crash recovery by default.</p>
<p>&nbsp;</p>
<p>MySQL 5.5 also provides a number of additional enhancements including:</p>
<p>&nbsp;</p>
<p>- Significantly improved performance on Windows, with various Windows specific features and improvements</p>
<p>- Higher availability, with new semi-synchronous replication and Replication Heart Beat</p>
<p>- Improved usability, with Improved index and table partitioning, SIGNAL/RESIGNAL support and enhanced diagnostics, including a new Performance Schema monitoring capability.</p>
<p>&nbsp;</p>
<p>&nbsp;</p>
<p>The following section lists the changes in the MySQL source code since the previous released version of MySQL 5.5.</p>
<p>&nbsp;</p>
<h2>Changes in MySQL 5.5.15 (28 July 2011)</h2>
<p>Functionality Added or Changed</p>
<p>&nbsp;</p>
<p>* The undocumented &#8211;all option for perror is deprecated and</p>
<p>will be removed in MySQL 5.6.</p>
<p>&nbsp;</p>
<p>Bugs Fixed</p>
<p>&nbsp;</p>
<p>* InnoDB Storage Engine: A failed CREATE INDEX operation for an</p>
<p>InnoDB table could result in some memory being allocated but</p>
<p>not freed. This memory leak could affect tables created with</p>
<p>the ROW_FORMAT=DYNAMIC or ROW_FORMAT=COMPRESSED setting. (Bug</p>
<p>#12699505)</p>
<p>&nbsp;</p>
<p>* Partitioning: Auto-increment columns of partitioned tables</p>
<p>were checked even when they were not being written to. In</p>
<p>debug builds, this could lead to a server crash. (Bug</p>
<p>#11765667, Bug #58655)</p>
<p>&nbsp;</p>
<p>* Partitioning: The UNIX_TIMESTAMP() function was not treated as</p>
<p>a monotonic function for purposes of partition pruning. (Bug</p>
<p>#11746819, Bug #28928)</p>
<p>&nbsp;</p>
<p>* Compiling the server with maintainer mode enabled failed for</p>
<p>gcc 4.6 or higher. (Bug #12727287)</p>
<p>&nbsp;</p>
<p>* The option-parsing code for empty strings leaked memory. (Bug</p>
<p>#12589928)</p>
<p>&nbsp;</p>
<p>* Previously, an inappropriate error message was produced if a</p>
<p>multiple-table update for an InnoDB table with a clustered</p>
<p>primary key would update a table through multiple aliases, and</p>
<p>perform an update that may physically move the row in at least</p>
<p>one of these aliases. Now the error message is: Primary</p>
<p>key/partition key update is not permitted since the table is</p>
<p>updated both as &#8216;tbl_name1&#8242; and &#8216;tbl_name2&#8242; (Bug #11882110)</p>
<p>See also Bug #11764529.</p>
<p>&nbsp;</p>
<p>* Replication: If a LOAD DATA INFILE statement&#8212;replicated</p>
<p>using statement-based replication&#8212;featured a SET clause, the</p>
<p>name-value pairs were regenerated using a method</p>
<p>(Item::print()) intended primarily for generating output for</p>
<p>statements such as EXPLAIN EXTENDED, and which cannot be</p>
<p>relied on to return valid SQL. This could in certain cases</p>
<p>lead to a crash on the slave.</p>
<p>To fix this problem, the server now names each value in its</p>
<p>original, user-supplied form, and uses that to create LOAD</p>
<p>DATA INFILE statements for statement-based replication. (Bug</p>
<p>#60580, Bug #11902767)</p>
<p>See also Bug #34283, Bug #11752526, Bug #43746.</p>
<p>&nbsp;</p>
<p>* ALTER TABLE {MODIFY|CHANGE} &#8230; FIRST did nothing except</p>
<p>rename columns if the old and new versions of the table had</p>
<p>exactly the same structure with respect to column data types.</p>
<p>As a result, the mapping of column name to column data was</p>
<p>incorrect. The same thing happened for ALTER TABLE DROP COLUMN</p>
<p>&#8230; ADD COLUMN statements intended to produce a new version of</p>
<p>the table with exactly the same structure as the old version.</p>
<p>(Bug #61493, Bug #12652385)</p>
<p>&nbsp;</p>
<p>* Incorrect handling of metadata locking for FLUSH TABLES WITH</p>
<p>READ LOCK for statements requiring prelocking caused two</p>
<p>problems:</p>
<p>&nbsp;</p>
<p>+ Execution of any data-changing statement that required</p>
<p>prelocking (that is, involved a stored function or</p>
<p>trigger) as part of a transaction slowed down somewhat</p>
<p>all subsequent statements in the transaction. Performance</p>
<p>in a transaction that periodically involved such</p>
<p>statements gradually degraded over time.</p>
<p>&nbsp;</p>
<p>+ Execution of any data-changing statement that required</p>
<p>prelocking as part of a transaction prevented a</p>
<p>concurrent FLUSH TABLES WITH READ LOCK from proceeding</p>
<p>until the end of the transaction rather than at the end</p>
<p>of the particular statement.</p>
<p>(Bug #61401, Bug #12641342)</p>
<p>&nbsp;</p>
<p>* The fractional part of the &#8220;Queries per second&#8221; value could be</p>
<p>displayed incorrectly in MySQL status output (for example, in</p>
<p>the output from mysqladmin status or the mysql STATUS</p>
<p>command). (Bug #61205, Bug #12565712)</p>
<p>&nbsp;</p>
<p>* LOAD DATA INFILE incorrectly parsed relative data file path</p>
<p>names that ascended more than three levels in the file system</p>
<p>and as a consequence was unable to find the file. (Bug #60987,</p>
<p>Bug #12403662)</p>
<p>&nbsp;</p>
<p>* For unknown users, the native password plugin reported</p>
<p>incorrectly that no password had been specified even when it</p>
<p>had. (Bug #59792, Bug #11766641)</p>
<p>&nbsp;</p>
<p>* For MyISAM tables, attempts to insert incorrect data into an</p>
<p>indexed GEOMETRY column could result in table corruption. (Bug</p>
<p>#57323, Bug #11764487)</p>
<p>&nbsp;</p>
<p>* In debug builds, Field_new_decimal::store_value() was subject</p>
<p>to buffer overflows. (Bug #55436, Bug #11762799)</p>
<p>&nbsp;</p>
<p>* A race condition between loading a stored routine using the</p>
<p>name qualified by the database name and dropping that database</p>
<p>resulted in a spurious error message: The table mysql.proc is</p>
<p>missing, corrupt, or contains bad data (Bug #47870, Bug</p>
<p>#11756013)</p>
<p>&nbsp;</p>
]]></content:encoded>
			<wfw:commentRss>http://www.marketgrid.com/blog/2011/07/mysql-community-server-5-5-15/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>MySQL Community Server 5.5.13</title>
		<link>http://www.marketgrid.com/blog/2011/06/mysql-community-server-5-5-13/</link>
		<comments>http://www.marketgrid.com/blog/2011/06/mysql-community-server-5-5-13/#comments</comments>
		<pubDate>Wed, 01 Jun 2011 08:40:27 +0000</pubDate>
		<dc:creator>Phil Smith</dc:creator>
				<category><![CDATA[MySQL]]></category>
		<category><![CDATA[MySQL Community Server]]></category>

		<guid isPermaLink="false">http://www.marketgrid.com/blog/?p=556</guid>
		<description><![CDATA[MySQL 5.5.13 is a new version of the 5.5 production release of the world&#8217;s most popular open source database. MySQL 5.5.13 is recommended for use on production systems. &#160; MySQL 5.5 includes several high-impact enhancements to improve the performance and scalability of the MySQL Database, taking advantage of the latest multi-CPU and multi-core hardware and [...]]]></description>
			<content:encoded><![CDATA[<p>MySQL 5.5.13 is a new version of the 5.5 production release of the</p>
<p>world&#8217;s most popular open source database. MySQL 5.5.13 is recommended</p>
<p>for use on production systems.</p>
<p>&nbsp;</p>
<p>MySQL 5.5 includes several high-impact enhancements to improve the</p>
<p>performance and scalability of the MySQL Database, taking advantage of</p>
<p>the latest multi-CPU and multi-core hardware and operating systems. In</p>
<p>addition, with release 5.5, InnoDB is now the default storage engine for</p>
<p>the MySQL Database, delivering ACID transactions, referential integrity</p>
<p>and crash recovery by default.</p>
<p>&nbsp;</p>
<p>MySQL 5.5 also provides a number of additional enhancements including:</p>
<p>&nbsp;</p>
<p>- Significantly improved performance on Windows, with various Windows specific features and improvements</p>
<p>- Higher availability, with new semi-synchronous replication and Replication Heart Beat</p>
<p>- Improved usability, with Improved index and table partitioning, SIGNAL/RESIGNAL support and enhanced diagnostics, including a new Performance Schema monitoring capability.</p>
<p>&nbsp;</p>
<p>Changes in MySQL 5.5.13 :</p>
<p>&nbsp;</p>
<p>Note:</p>
<p>&nbsp;</p>
<p>Very old (MySQL 4.0) clients are not working temporarily due to a</p>
<p>problem discovered after the release of MySQL 5.5.12. We are</p>
<p>looking at fixing the problem.</p>
<p>&nbsp;</p>
<p>Bugs fixed:</p>
<p>&nbsp;</p>
<p>* InnoDB Storage Engine: If the server crashed while an XA</p>
<p>transaction was prepared but not yet committed, the</p>
<p>transaction could remain in the system after restart, and</p>
<p>cause a subsequent shutdown to hang. (Bug #11766513, Bug</p>
<p>#59641)</p>
<p>&nbsp;</p>
<p>* InnoDB Storage Engine: Similar problem to the foreign key</p>
<p>error in bug #11831040 / 60196 / 60909, but with a different</p>
<p>root cause and occurring on Mac OS X. With the setting</p>
<p>lower_case_table_names=2, inserts into InnoDB tables covered</p>
<p>by foreign key constraints could fail after a server restart.</p>
<p>&nbsp;</p>
<p>* Partitioning: The internal get_partition_set() function did</p>
<p>not take into account the possibility that a key specification</p>
<p>could be NULL in some cases. (Bug #12380149)</p>
<p>&nbsp;</p>
<p>* Partitioning: When executing a row-ordered retrieval index</p>
<p>merge, the partitioning handler used memory from that</p>
<p>allocated for the table, rather than that allocated to the</p>
<p>query, causing table object memory not to be freed until the</p>
<p>table was closed. (Bug #11766249, Bug #59316)</p>
<p>&nbsp;</p>
<p>* Replication: A spurious error malformed binlog: it does not</p>
<p>contain any Format_description_log_event&#8230; was generated when</p>
<p>mysqlbinlog was invoked using &#8211;base64-output=decode-row and</p>
<p>&#8211;start-position=pos, where pos is a point in the binary log</p>
<p>past the format description log event. However, there is</p>
<p>nothing unsafe about not printing the format description log</p>
<p>event, so the error has been removed for this case. (Bug</p>
<p>#12354268)</p>
<p>&nbsp;</p>
<p>* Replication: Typographical errors appeared in the text of</p>
<p>several replication error messages. (The word &#8220;position&#8221; was</p>
<p>misspelled as &#8220;postion&#8221;.) (Bug #11762616, Bug #55229)</p>
<p>&nbsp;</p>
<p>* Assignments to NEW.var_name within triggers, where var_name</p>
<p>had a BLOB or TEXT type, were not properly handled and</p>
<p>produced incorrect results. (Bug #12362125)</p>
<p>&nbsp;</p>
<p>* XA COMMIT could fail to clean up the error state if it</p>
<p>discovered that the current XA transaction had to be rolled</p>
<p>back. Consequently, the next XA transaction could raise an</p>
<p>assertion when it checked for proper cleanup of the previous</p>
<p>transaction. (Bug #12352846)</p>
<p>&nbsp;</p>
<p>* An internal client macro reference was removed from the</p>
<p>client_plugin.h header file. This reference made the file</p>
<p>unusable. (Bug #60746, Bug #12325444)</p>
<p>&nbsp;</p>
<p>* The server consumed memory for repeated invocation of some</p>
<p>stored procedures, which was not released until the connection</p>
<p>terminated. (Bug #60025, Bug #11848763)</p>
<p>&nbsp;</p>
<p>* The server did not check for certain invalid out of order</p>
<p>sequences of XA statements, and these sequences raised an</p>
<p>assertion. (Bug #59936, Bug #11766752, Bug #12348348)</p>
<p>&nbsp;</p>
<p>* With the conversion from GNU autotools to CMake for</p>
<p>configuring MySQL, the USE_SYMDIR preprocessor symbol was</p>
<p>omitted. This caused failure of symbolic links (described at</p>
<p>Section 7.11.3.1, &#8220;Using Symbolic Links&#8221;). (Bug #59408, Bug</p>
<p>#11766320)</p>
<p>&nbsp;</p>
<p>* The incorrect max_length value for YEAR values could be used</p>
<p>in temporary result tables for UNION, leading to incorrect</p>
<p>results. (Bug #59343, Bug #11766270)</p>
<p>&nbsp;</p>
<p>* In Item_func_in::fix_length_and_dec(), a Valgrind warning for</p>
<p>uninitialized values was corrected. (Bug #59270, Bug</p>
<p>#11766212)</p>
<p>&nbsp;</p>
<p>* In ROUND() calculations, a Valgrind warning for uninitialized</p>
<p>memory was corrected. (Bug #58937, Bug #11765923)</p>
<p>&nbsp;</p>
<p>* Valgrind warnings caused by comparing index values to an</p>
<p>uninitialized field were corrected. (Bug #58705, Bug</p>
<p>#11765713)</p>
<p>&nbsp;</p>
<p>* LOAD DATA INFILE errors could leak I/O cache memory. (Bug</p>
<p>#58072, Bug #11765141)</p>
<p>&nbsp;</p>
<p>* For LOAD DATA INFILE, multibyte character sequences could be</p>
<p>pushed onto a stack too small to accommodate them. (Bug</p>
<p>#58069, Bug #11765139)</p>
<p>&nbsp;</p>
<p>* Internal Performance Schema header files were unnecessarily</p>
<p>installed publicly. (Bug #53281)</p>
<p>&nbsp;</p>
<p>* On Linux, the mysql client built using the bundled libedit did</p>
<p>not read ~/.editrc. (Bug #49967, Bug #11757855)</p>
<p>&nbsp;</p>
<p>* The optimizer sometimes incorrectly processed HAVING clauses</p>
<p>for queries that did not also have an ORDER BY clause. (Bug</p>
<p>#48916, Bug #11756928)</p>
<p>&nbsp;</p>
<p>* PROCEDURE ANALYZE() could leak memory for NULL results, and</p>
<p>could return incorrect results if used with a LIMIT clause.</p>
<p>(Bug #48137, Bug #11756242)</p>
<p>&nbsp;</p>
<p>* With DISTINCT CONCAT(col,&#8230;) returned incorrect results when</p>
<p>the arguments to CONCAT() were columns with an integer data</p>
<p>type declared with a display width narrower than the values in</p>
<p>the column. (For example, if an INT(1) column contain 1111.)</p>
<p>(Bug #4082)</p>
]]></content:encoded>
			<wfw:commentRss>http://www.marketgrid.com/blog/2011/06/mysql-community-server-5-5-13/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>MySQL Community Server 5.5.10</title>
		<link>http://www.marketgrid.com/blog/2011/03/mysql-community-server-5-5-10/</link>
		<comments>http://www.marketgrid.com/blog/2011/03/mysql-community-server-5-5-10/#comments</comments>
		<pubDate>Thu, 17 Mar 2011 11:06:36 +0000</pubDate>
		<dc:creator>Phil Smith</dc:creator>
				<category><![CDATA[MySQL]]></category>
		<category><![CDATA[Releases]]></category>
		<category><![CDATA[MySQL 5.5]]></category>
		<category><![CDATA[MySQL 5.5.10]]></category>

		<guid isPermaLink="false">http://www.marketgrid.com/blog/?p=520</guid>
		<description><![CDATA[MySQL 5.5.10 is a new version of the 5.5 production release of the world&#8217;s most popular open source database. MySQL 5.5.10 is recommended for use on production systems. &#160; MySQL 5.5 includes several high-impact enhancements to improve the performance and scalability of the MySQL Database, taking advantage of the latest multi-CPU and multi-core hardware and [...]]]></description>
			<content:encoded><![CDATA[<p>MySQL 5.5.10 is a new version of the 5.5 production release of the world&#8217;s most popular open source database. MySQL 5.5.10 is recommended for use on production systems.</p>
<p>&nbsp;</p>
<p>MySQL 5.5 includes several high-impact enhancements to improve the performance and scalability of the MySQL Database, taking advantage of the latest multi-CPU and multi-core hardware and operating systems. In addition, with release 5.5, InnoDB is now the default storage engine for the MySQL Database, delivering ACID transactions, referential integrity and crash recovery by default.</p>
<p>&nbsp;</p>
<p>MySQL 5.5 also provides a number of additional enhancements including:</p>
<p>&nbsp;</p>
<p>- Significantly improved performance on Windows, with various Windows specific features and improvements</p>
<p>- Higher availability, with new semi-synchronous replication and Replication Heart Beat</p>
<p>- Improved usability, with Improved index and table partitioning, SIGNAL/RESIGNAL support and enhanced diagnostics, including a new PERFORMANCE_SCHEMA</p>
<p>&nbsp;</p>
<p>&nbsp;</p>
<p>The following section lists the changes in the MySQL source code since the previous released version of MySQL 5.5.</p>
<p>&nbsp;</p>
<p>&#8212;-</p>
<p>&nbsp;</p>
<p>D.1.2. Changes in MySQL 5.5.10</p>
<p>&nbsp;</p>
<p>Configuration Notes:</p>
<p>&nbsp;</p>
<p>* MySQL releases are now built on all platforms using CMake</p>
<p>rather than the GNU autotools, so autotools support has been</p>
<p>removed. For instructions on building MySQL with CMake, see</p>
<p>Section 2.11, &#8220;Installing MySQL from Source.&#8221; Third-party</p>
<p>tools that need to extract the MySQL version number formerly</p>
<p>found in configure.in can use the VERSION file. See Section</p>
<p>2.11.6, &#8220;MySQL Configuration and Third-Party Tools.&#8221;</p>
<p>&nbsp;</p>
<p>C API Notes:</p>
<p>&nbsp;</p>
<p>* Incompatible Change: The shared library version of the client</p>
<p>library was increased to 18 to reflect ABI changes, and avoid</p>
<p>compatibility problems with the client library in MySQL 5.1.</p>
<p>Note that this is an incompatible change between 5.5.10 and</p>
<p>earlier 5.5 versions, so client programs that use the 5.5</p>
<p>client library should be recompiled against the 5.5.10 client</p>
<p>library.</p>
<p>&nbsp;</p>
<p>Functionality added or changed:</p>
<p>&nbsp;</p>
<p>* MySQL distributions now include auth_socket, a server-side</p>
<p>authentication plugin that authenticates clients that connect</p>
<p>from the local host through the Unix socket file. The plugin</p>
<p>uses the SO_PEERCRED socket option to obtain information about</p>
<p>the user running the client program (and thus can be built</p>
<p>only on systems that support this option. For a connection to</p>
<p>succeed, the plugin requires a match between the login name of</p>
<p>the connecting client user and the MySQL user name presented</p>
<p>by the client program. For more information, see Section</p>
<p>5.5.6.1.4, &#8220;The Socket Peer-Credential Authentication Plugin.&#8221;</p>
<p>(Bug #59017, Bug #11765993)</p>
<p>&nbsp;</p>
<p>* The mysql_upgrade, mysqlbinlog, mysqlcheck, mysqlimport,</p>
<p>mysqlshow, and mysqlslap clients now have &#8211;default-auth and</p>
<p>&#8211;plugin-dir options for specifying which authentication</p>
<p>plugin and plugin directory to use. (Bug #58139)</p>
<p>&nbsp;</p>
<p>* Boolean system variables can be enabled at run time by setting</p>
<p>them to the value ON or OFF, but previously this did not work</p>
<p>at server startup. Now at startup such variables can be</p>
<p>enabled by setting them to ON or TRUE, or disabled by setting</p>
<p>them to OFF or FALSE. Any other nonnumeric variable is</p>
<p>invalid. (Bug #46393)</p>
<p>See also Bug #51631.</p>
<p>&nbsp;</p>
<p>* Previously, for queries that were aborted due to sort problem,</p>
<p>the server wrote the message Sort aborted to the error log.</p>
<p>Now the server writes more information to provide a more</p>
<p>specific message, such as:</p>
<p>[ERROR] mysqld: Sort aborted: Out of memory (Needed 24 bytes)</p>
<p>[ERROR] mysqld: Out of sort memory,</p>
<p>consider increasing server sort buffer size</p>
<p>[ERROR] mysqld: Sort aborted: Out of sort memory,</p>
<p>consider increasing server sort buffer size</p>
<p>[ERROR] mysqld: Sort aborted: Incorrect number of arguments for</p>
<p>FUNCTION test.f1; expected 0, got 1</p>
<p>In addition, if the server was started with &#8211;log-warnings=2,</p>
<p>the server write information about the host, user, and query.</p>
<p>(Bug #36022, Bug #11748358)</p>
<p>&nbsp;</p>
<p>* mysqldump &#8211;xml now displays comments from column definitions.</p>
<p>(Bug #13618)</p>
<p>&nbsp;</p>
<p>* MySQL distributions now include mysql_clear_password, a</p>
<p>client-side authentication plugin that sends the password to</p>
<p>the server without hashing or encryption. Although this is</p>
<p>insecure, and thus apprpropriate precautions should be taken</p>
<p>such as using an SSL connection, the plugin is useful in</p>
<p>conjunction with server-side plugins that must have access to</p>
<p>the original password in clear text. For more information, see</p>
<p>Section 5.5.6.1.3, &#8220;The Clear Text Client-Side Authentication</p>
<p>Plugin.&#8221;</p>
<p>&nbsp;</p>
<p>Bugs fixed:</p>
<p>&nbsp;</p>
<p>* InnoDB Storage Engine: Raised the number of I/O requests that</p>
<p>each AIO</p>
<p>(<a href="http://dev.mysql.com/doc/innodb/1.1/en/glossary.html#glos_aio">http://dev.mysql.com/doc/innodb/1.1/en/glossary.html#glos_aio</a></p>
<p>) helper thread could process, from 32 to 256. The new limit</p>
<p>applies to Linux and Unix platforms; the limit on Windows</p>
<p>remains 32. (Bug #59472)</p>
<p>&nbsp;</p>
<p>* InnoDB Storage Engine: InnoDB returned values for &#8220;rows</p>
<p>examined&#8221; in the query plan that were higher than expected.</p>
<p>NULL values were treated in an inconsistent way. The</p>
<p>inaccurate statistics could trigger &#8220;false positives&#8221; in</p>
<p>combination with the MAX_JOIN_SIZE setting, because the</p>
<p>queries did not really examine as many rows as reported. (Bug</p>
<p>#30423)</p>
<p>&nbsp;</p>
<p>* Replication: When using the statement-based logging format,</p>
<p>INSERT ON DUPLICATE KEY UPDATE and INSERT IGNORE statements</p>
<p>affecting transactional tables that did not fail were not</p>
<p>written to the binary log if they did not insert any rows.</p>
<p>(With statement-based logging, all successful statements</p>
<p>should be logged, whether they do or do not cause any rows to</p>
<p>be changed.) (Bug #59338)</p>
<p>&nbsp;</p>
<p>* Replication: Formerly, STOP SLAVE stopped the slave I/O thread</p>
<p>first and then stopped the slave SQL thread; thus, it was</p>
<p>possible for the I/O thread to stop after replicating only</p>
<p>part of a transaction which the SQL thread was executing, in</p>
<p>which case&#8212;if the transaction could not be rolled back</p>
<p>safely&#8212;the SQL thread could hang.</p>
<p>Now, STOP SLAVE stops the slave SQL thread first and then</p>
<p>stops the I/O thread; this guarantees that the I/O thread can</p>
<p>fetch any remaining events in the transaction that the SQL</p>
<p>thread is executing, so that the SQL thread can finish the</p>
<p>transaction if it cannot be rolled back safely. (Bug #58546)</p>
<p>&nbsp;</p>
<p>* DES_DECRYPT() could crash if the argument was not produced by</p>
<p>DES_ENCRYPT(). (Bug #59632, Bug #11766505)</p>
<p>&nbsp;</p>
<p>* The server and client did not always properly negotiate</p>
<p>authentication plugin names. (Bug #59453)</p>
<p>&nbsp;</p>
<p>* &#8211;autocommit=ON did not work (it set the global autocommit</p>
<p>value to 0, not 1). (Bug #59432)</p>
<p>&nbsp;</p>
<p>* A query of the following form returned an incorrect result,</p>
<p>where the values for col_name in the result set were entirely</p>
<p>replaced with NULL values:</p>
<p>SELECT DISTINCT col_name &#8230; ORDER BY col_name DESC;</p>
<p>(Bug #59308, Bug #11766241)</p>
<p>&nbsp;</p>
<p>* SHOW PRIVILEGES did not display a row for the PROXY privilege.</p>
<p>(Bug #59275)</p>
<p>&nbsp;</p>
<p>* SHOW PROFILE could truncate source file names or fail to show</p>
<p>function names. (Bug #59273, Bug #11766214)</p>
<p>&nbsp;</p>
<p>* DELETE or UPDATE statements could fail if they used DATE or</p>
<p>DATETIME values with a year, month, or day part of zero. (Bug</p>
<p>#59173)</p>
<p>&nbsp;</p>
<p>* The ESCAPE clause for the LIKE operator allows only</p>
<p>expressions that evaluate to a constant at execution time, but</p>
<p>aggregate functions were not being rejected. (Bug #59149)</p>
<p>&nbsp;</p>
<p>* Memory leaks detected by Valgrind, some of which could cause</p>
<p>incorrect query results, were corrected. (Bug #59110, Bug</p>
<p>#11766075)</p>
<p>&nbsp;</p>
<p>* The DEFAULT_CHARSET and DEFAULT_COLLATION CMake options did</p>
<p>not work. (Bug #58991)</p>
<p>&nbsp;</p>
<p>* An OUTER JOIN query using WHERE column IS NULL could return an</p>
<p>incorrect result. (Bug #58490, Bug #11765513)</p>
<p>&nbsp;</p>
<p>* Starting the server with the &#8211;defaults-file=file_name option,</p>
<p>where the file name had no extension, caused a server crash.</p>
<p>(Bug #58455, Bug #11765482)</p>
<p>&nbsp;</p>
<p>* Outer joins with an empty table could produce incorrect</p>
<p>results. (Bug #58422)</p>
<p>&nbsp;</p>
<p>* In debug builds, SUBSTRING_INDEX(FORMAT(&#8230;), FORMAT(&#8230;))</p>
<p>could cause a server crash. (Bug #58371)</p>
<p>&nbsp;</p>
<p>* When mysqladmin was run with the &#8211;sleep and &#8211;count options,</p>
<p>it went into an infinite loop executing the specified command.</p>
<p>(Bug #58221)</p>
<p>&nbsp;</p>
<p>* Some string manipulating SQL functions use a shared string</p>
<p>object intended to contain an immutable empty string. This</p>
<p>object was used by the SQL function SUBSTRING_INDEX() to</p>
<p>return an empty string when one argument was of the wrong</p>
<p>datatype. If the string object was then modified by the SQL</p>
<p>function INSERT(), undefined behavior ensued. (Bug #58165, Bug</p>
<p>#11765225)</p>
<p>&nbsp;</p>
<p>* Parsing nested regular expressions could lead to recursion</p>
<p>resulting in a stack overflow crash. (Bug #58026, Bug</p>
<p>#11765099)</p>
<p>&nbsp;</p>
<p>* The fix for Bug#25192 caused load_defaults() to add an</p>
<p>argument separator to distinguish options loaded from</p>
<p>configure files from those provided on the command line,</p>
<p>whether or not the application needed it. (Bug #57953)</p>
<p>&nbsp;</p>
<p>* The mysql client went into an infinite loop if the standard</p>
<p>input was a directory. (Bug #57450)</p>
<p>&nbsp;</p>
<p>* Outer joins on a unique key could return incorrect results.</p>
<p>(Bug #57034)</p>
<p>&nbsp;</p>
<p>* The expression const1 BETWEEN const2 AND field was optimized</p>
<p>incorrectly and produced incorrect results. (Bug #57030, Bug</p>
<p>#11764215)</p>
<p>&nbsp;</p>
<p>* Some RPM installation scripts used a hardcoded value for the</p>
<p>data directory, which could result in a failed installation</p>
<p>for users who have a nonstandard data directory location. The</p>
<p>same was true for other configuration values such as the PID</p>
<p>file name. (Bug #56581, Bug #11763817)</p>
<p>&nbsp;</p>
<p>* On FreeBSD and OpenBSD, the server incorrectly checked the</p>
<p>range of the system date, causing legal values to be rejected.</p>
<p>(Bug #55755, Bug #11763089)</p>
<p>&nbsp;</p>
<p>* Sorting using ORDER BY AVG(DISTINCT decimal_col) caused a</p>
<p>server crash or incorrect results. (Bug #52123, Bug #11759784)</p>
<p>&nbsp;</p>
<p>* When using ExtractValue() or UpdateXML(), if the XML to be</p>
<p>read contained an incomplete XML comment, MySQL read beyond</p>
<p>the end of the XML string when processing, leading to a crash</p>
<p>of the server. (Bug #44332)</p>
<p>&nbsp;</p>
<p>* DATE_ADD() and DATE_SUB() return a string if the first</p>
<p>argument is a string, but incorrectly returned a binary</p>
<p>string. Now they return a character string with a collation of</p>
<p>connection_collation. (Bug #31384, Bug #11747221)</p>
<p>&nbsp;</p>
]]></content:encoded>
			<wfw:commentRss>http://www.marketgrid.com/blog/2011/03/mysql-community-server-5-5-10/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>MySQL Workbench 5.2.33 GA</title>
		<link>http://www.marketgrid.com/blog/2011/03/mysql-workbench-5-2-33-ga/</link>
		<comments>http://www.marketgrid.com/blog/2011/03/mysql-workbench-5-2-33-ga/#comments</comments>
		<pubDate>Sat, 12 Mar 2011 09:20:28 +0000</pubDate>
		<dc:creator>Phil Smith</dc:creator>
				<category><![CDATA[MySQL]]></category>
		<category><![CDATA[Releases]]></category>
		<category><![CDATA[MySQL Workbench]]></category>

		<guid isPermaLink="false">http://www.marketgrid.com/blog/?p=517</guid>
		<description><![CDATA[The MySQL developer tools team has announced the next release of it&#8217;s flagship product, MySQL Workbench &#8211; version 5.2.33. This is a maintenance release only which corrects some problems we didn&#8217;t cover in last release. It contains fixes for 7 bugs or enhancement requests. MySQL Workbench 5.2 GA - Data Modeling - Query (replaces the [...]]]></description>
			<content:encoded><![CDATA[<p>The MySQL developer tools team has announced the next release of it&#8217;s flagship product, MySQL Workbench &#8211; version 5.2.33. This is a maintenance release only which corrects some problems we didn&#8217;t cover in last release. It contains fixes for 7 bugs or enhancement requests.</p>
<p>MySQL Workbench 5.2 GA</p>
<p>- Data Modeling</p>
<p>- Query (replaces the old MySQL Query Browser)</p>
<p>- Administration (replaces the old MySQL Administrator)</p>
<p>&nbsp;</p>
<p>In addition to the new Query/SQL Development and Administration modules, version 5.2 features improved stability and performance – especially in Windows, where OpenGL support has been enhanced and the UI was optimized to offer better responsiveness.</p>
<p>For a detailed list of resolved issues, see the change log:  http://dev.mysql.com/doc/workbench/en/wb-change-history.html</p>
<p>&nbsp;</p>
<p>&nbsp;</p>
]]></content:encoded>
			<wfw:commentRss>http://www.marketgrid.com/blog/2011/03/mysql-workbench-5-2-33-ga/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>MySQL Workbench 5.2.32 GA</title>
		<link>http://www.marketgrid.com/blog/2011/03/mysql-workbench-5-2-32-ga/</link>
		<comments>http://www.marketgrid.com/blog/2011/03/mysql-workbench-5-2-32-ga/#comments</comments>
		<pubDate>Tue, 08 Mar 2011 10:17:29 +0000</pubDate>
		<dc:creator>Phil Smith</dc:creator>
				<category><![CDATA[MySQL]]></category>
		<category><![CDATA[Releases]]></category>
		<category><![CDATA[MySQL Workbench]]></category>

		<guid isPermaLink="false">http://www.marketgrid.com/blog/?p=510</guid>
		<description><![CDATA[The next release of MySQL Workbench, version 5.2.32 is now available. This is a maintenance release featuring a new and improved UI appearance and several corrections and other enhancements. &#160; The tabbed interface has been refreshed to obtain a clearer separation between different modules of Workbench, while improving responsiveness when switching between tabs. The Query [...]]]></description>
			<content:encoded><![CDATA[<p>The next release of MySQL Workbench, version 5.2.32 is now available. This is a maintenance release featuring a new and improved UI appearance and several corrections and other enhancements.</p>
<p>&nbsp;</p>
<p>The tabbed interface has been refreshed to obtain a clearer separation between different modules of Workbench, while improving responsiveness when switching between tabs. The Query Formatter has been rewritten and is now faster and more robust on its handling of queries. The layout of the Administration module has been changed to allow for easier future expansion and use less vertical screen space. Parts that had problems managing MySQL 5.5 servers have been fixed along other total of 53 bugs or enhancement requests have been addressed.</p>
<p>&nbsp;</p>
]]></content:encoded>
			<wfw:commentRss>http://www.marketgrid.com/blog/2011/03/mysql-workbench-5-2-32-ga/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>MySQL Server 5.0.92</title>
		<link>http://www.marketgrid.com/blog/2011/02/mysql-server-5-0-92/</link>
		<comments>http://www.marketgrid.com/blog/2011/02/mysql-server-5-0-92/#comments</comments>
		<pubDate>Wed, 09 Feb 2011 13:15:55 +0000</pubDate>
		<dc:creator>Phil Smith</dc:creator>
				<category><![CDATA[MySQL]]></category>
		<category><![CDATA[Releases]]></category>
		<category><![CDATA[MySQL Server 5.0.92]]></category>

		<guid isPermaLink="false">http://www.marketgrid.com/blog/?p=499</guid>
		<description><![CDATA[MySQL Server 5.0.92, 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 builds are only provided because of the fixes to security bugs as described below. Changes in MySQL 5.0.92  (7 February, 2011) Functionality added or changed: * [...]]]></description>
			<content:encoded><![CDATA[<p>MySQL Server 5.0.92, a new version of the popular Open Source Database</p>
<p>Management System, has been released.  Please note that the active</p>
<p>maintenance of 5.0 has ended, and these builds are only provided</p>
<p>because of the fixes to security bugs as described below.</p>
<p>Changes in MySQL 5.0.92  (7 February, 2011)</p>
<p>Functionality added or changed:</p>
<p>* The time zone tables available at</p>
<p>http://dev.mysql.com/downloads/timezones.html have been</p>
<p>updated. These tables can be used on systems such as</p>
<p>Windows or HP-UX that do not include zoneinfo files.</p>
<p>(Bug#40230:http://bugs.mysql.com/bug.php?id=40230)</p>
<p>Bugs fixed:</p>
<p>* Security Fix: During evaluation of arguments to</p>
<p>extreme-value functions (such as LEAST() and GREATEST()),</p>
<p>type errors did not propagate properly, causing the</p>
<p>server to crash.</p>
<p>(Bug#55826:http://bugs.mysql.com/bug.php?id=55826,</p>
<p>CVE-2010-3833</p>
<p>(http://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2010-3833)</p>
<p>* Security Fix: The server could crash after materializing</p>
<p>a derived table that required a temporary table for</p>
<p>grouping.</p>
<p>(Bug#55568:http://bugs.mysql.com/bug.php?id=55568,</p>
<p>CVE-2010-3834</p>
<p>(http://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2010-3834)</p>
<p>* Security Fix: A user-variable assignment expression that</p>
<p>is evaluated in a logical expression context can be</p>
<p>precalculated in a temporary table for GROUP BY. However,</p>
<p>when the expression value is used after creation of the</p>
<p>temporary table, it was re-evaluated, not read from the</p>
<p>table and a server crash resulted.</p>
<p>(Bug#55564:http://bugs.mysql.com/bug.php?id=55564,</p>
<p>CVE-2010-3835</p>
<p>(http://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2010-3835)</p>
<p>* Security Fix: Joins involving a table with a unique SET</p>
<p>column could cause a server crash.</p>
<p>(Bug#54575:http://bugs.mysql.com/bug.php?id=54575,</p>
<p>CVE-2010-3677</p>
<p>(http://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2010-3677)</p>
<p>* Security Fix: Pre-evaluation of LIKE predicates during</p>
<p>view preparation could cause a server crash.</p>
<p>(Bug#54568:http://bugs.mysql.com/bug.php?id=54568,</p>
<p>CVE-2010-3836</p>
<p>(http://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2010-3836)</p>
<p>* Security Fix: GROUP_CONCAT() and WITH ROLLUP together</p>
<p>could cause a server crash.</p>
<p>(Bug#54476:http://bugs.mysql.com/bug.php?id=54476,</p>
<p>CVE-2010-3837</p>
<p>(http://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2010-3837)</p>
<p>* Security Fix: Queries could cause a server crash if the</p>
<p>GREATEST() or LEAST() function had a mixed list of</p>
<p>numeric and LONGBLOB arguments, and the result of such a</p>
<p>function was processed using an intermediate temporary</p>
<p>table.</p>
<p>(Bug#54461:http://bugs.mysql.com/bug.php?id=54461,</p>
<p>CVE-2010-3838</p>
<p>(http://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2010-3838)</p>
<p>* Security Fix: Using EXPLAIN with queries of the form</p>
<p>SELECT &#8230; UNION &#8230; ORDER BY (SELECT &#8230; WHERE &#8230;)</p>
<p>could cause a server crash.</p>
<p>(Bug#52711:http://bugs.mysql.com/bug.php?id=52711,</p>
<p>CVE-2010-3682</p>
<p>(http://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2010-3682)</p>
<p>* InnoDB Storage Engine: Creating or dropping a table with</p>
<p>1023 transactions active caused an assertion failure.</p>
<p>(Bug#49238:http://bugs.mysql.com/bug.php?id=49238)</p>
<p>* The make_binary_distribution target to make could fail on</p>
<p>some platforms because the lines generated were too long</p>
<p>for the shell.</p>
<p>(Bug#54590:http://bugs.mysql.com/bug.php?id=54590)</p>
<p>* A client could supply data in chunks to a prepared</p>
<p>statement parameter other than of type TEXT or BLOB using</p>
<p>the mysql_stmt_send_long_data() C API function (or</p>
<p>COM_STMT_SEND_LONG_DATA command). This led to a crash</p>
<p>because other data types are not valid for long data.</p>
<p>(Bug#54041:http://bugs.mysql.com/bug.php?id=54041)</p>
<p>* Builds of the embedded mysqld would fail due to a missing</p>
<p>element of the struct NET.</p>
<p>(Bug#53908:http://bugs.mysql.com/bug.php?id=53908,</p>
<p>Bug#53912:http://bugs.mysql.com/bug.php?id=53912)</p>
<p>* The definition of the MY_INIT macro in my_sys.h included</p>
<p>an extraneous semicolon, which could cause compilation</p>
<p>failure.</p>
<p>(Bug#53906:http://bugs.mysql.com/bug.php?id=53906)</p>
<p>* If the remote server for a FEDERATED table could not be</p>
<p>accessed, queries for the INFORMATION_SCHEMA.TABLES table</p>
<p>failed.</p>
<p>(Bug#35333:http://bugs.mysql.com/bug.php?id=35333)</p>
<p>* mysqld could fail during execution when using SSL.</p>
<p>(Bug#34236:http://bugs.mysql.com/bug.php?id=34236)</p>
<p>* Threads that were calculating the estimated number of</p>
<p>records for a range scan did not respond to the KILL</p>
<p>statement. That is, if a range join type is possible</p>
<p>(even if not selected by the optimizer as a join type of</p>
<p>choice and thus not shown by EXPLAIN), the query in the</p>
<p>statistics state (shown by the SHOW PROCESSLIST) did not</p>
<p>respond to the KILL statement.</p>
<p>(Bug#25421:http://bugs.mysql.com/bug.php?id=25421)</p>
]]></content:encoded>
			<wfw:commentRss>http://www.marketgrid.com/blog/2011/02/mysql-server-5-0-92/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>MySQL Community Server 5.5.9</title>
		<link>http://www.marketgrid.com/blog/2011/02/mysql-community-server-5-5-9/</link>
		<comments>http://www.marketgrid.com/blog/2011/02/mysql-community-server-5-5-9/#comments</comments>
		<pubDate>Wed, 09 Feb 2011 13:14:27 +0000</pubDate>
		<dc:creator>Phil Smith</dc:creator>
				<category><![CDATA[MySQL]]></category>
		<category><![CDATA[Releases]]></category>
		<category><![CDATA[MySQL Community Server 5.5.9]]></category>

		<guid isPermaLink="false">http://www.marketgrid.com/blog/?p=497</guid>
		<description><![CDATA[MySQL 5.5.9 is a new version of the 5.5 production version of the world&#8217;s most popular open source database. MySQL 5.5.9 is recommended for use on production systems. 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 [...]]]></description>
			<content:encoded><![CDATA[<p>MySQL 5.5.9 is a new version of the 5.5 production version of the</p>
<p>world&#8217;s most popular open source database. MySQL 5.5.9 is recommended</p>
<p>for use on production systems.</p>
<p>MySQL 5.5 includes several high-impact changes to address scalability</p>
<p>and performance issues in MySQL Server.  These changes exploit advances</p>
<p>in hardware and CPU design and enable better utilization of existing</p>
<p>hardware.  MySQL 5.5 also provides a number of other new enhancements,</p>
<p>including:</p>
<p>- InnoDB I/O Subsystem Changes</p>
<p>- Enhanced Solaris Support</p>
<p>- Diagnostic and Monitoring Capabilities</p>
<p>The following section lists the changes in the MySQL source code since</p>
<p>the previous released version of MySQL 5.5.</p>
<p>&#8212;-</p>
<p>D.1.2. Changes in MySQL 5.5.9</p>
<p>Configuration Notes:</p>
<p>* MySQL releases are now built on all platforms using CMake</p>
<p>rather than the GNU autotools, so autotools support has been</p>
<p>removed. For instructions on building MySQL with CMake, see</p>
<p>Section 2.11, &#8220;Installing MySQL from Source.&#8221; Third-party</p>
<p>tools that need to extract the MySQL version number formerly</p>
<p>found in configure.in can use the VERSION file. See Section</p>
<p>2.11.6, &#8220;MySQL Configuration and Third-Party Tools.&#8221;</p>
<p>Functionality added or changed:</p>
<p>* The mysqladmin and mysqldump clients now have &#8211;default-auth</p>
<p>and &#8211;plugin-dir options for specifying which authentication</p>
<p>plugin and plugin directory to use.</p>
<p>(Bug#58139: http://bugs.mysql.com/bug.php?id=58139)</p>
<p>* sql_priv.h now includes an OPTION_ALLOW_BATCH flag for the</p>
<p>transaction_allow_batching</p>
<p>(http://dev.mysql.com/doc/refman/5.1/en/server-system-variable</p>
<p>s.html#sysvar_transaction_allow_batching) feature of MySQL</p>
<p>Cluster. (Bug#57604: http://bugs.mysql.com/bug.php?id=57604)</p>
<p>* Boolean system variables can be enabled at run time by setting</p>
<p>them to the value ON or OFF, but previously this did not work</p>
<p>at server startup. Now at startup such variables can be</p>
<p>enabled by setting them to ON or TRUE. Any other nonnumeric</p>
<p>variable is interpreted as OFF.</p>
<p>(Bug#46393: http://bugs.mysql.com/bug.php?id=46393 improves on</p>
<p>this such that ON, TRUE, OFF, and FALSE are recognized, and</p>
<p>other values are invalid.)</p>
<p>(Bug#51631: http://bugs.mysql.com/bug.php?id=51631)</p>
<p>Bugs fixed:</p>
<p>* Incompatible Change: When auto_increment_increment is greater</p>
<p>than one, values generated by a bulk insert that reaches the</p>
<p>maximum column value could wrap around rather producing an</p>
<p>overflow error.</p>
<p>As a consequence of the fix, it is no longer possible for an</p>
<p>auto-generated value to be equal to the maximum BIGINT</p>
<p>UNSIGNED value. It is still possible to store that value</p>
<p>manually, if the column can accept it.</p>
<p>(Bug#39828: http://bugs.mysql.com/bug.php?id=39828)</p>
<p>* Important Change: Partitioning: Date and time functions used</p>
<p>as partitioning functions now have the types of their operands</p>
<p>checked; use of a value of the wrong type is now disallowed in</p>
<p>such cases. In addition, EXTRACT(WEEK FROM col), where col is</p>
<p>a DATE or DATETIME column, is now disallowed altogether</p>
<p>because its return value depends on the value of the</p>
<p>default_week_format system variable.</p>
<p>(Bug#54483: http://bugs.mysql.com/bug.php?id=54483)</p>
<p>See also Bug#57071: http://bugs.mysql.com/bug.php?id=57071.</p>
<p>* Partitioning: InnoDB Storage Engine: The partitioning handler</p>
<p>did not pass locking information to a table&#8217;s storage engine</p>
<p>handler. This caused high contention and thus slower</p>
<p>performance when working with partitioned InnoDB tables.</p>
<p>(Bug#59013: http://bugs.mysql.com/bug.php?id=59013)</p>
<p>* InnoDB Storage Engine: When multiple InnoDB buffer pools were</p>
<p>enabled, SHOW ENGINE INNODB commands displayed information</p>
<p>about each one, but not summary information combining</p>
<p>statistics for the entire buffer pool subsystem. Now, the</p>
<p>aggregated information is displayed in the BUFFER POOL AND</p>
<p>MEMORY section, and information about individual buffer pool</p>
<p>instances is displayed in a new INDIVIDUAL BUFFER POOL INFO</p>
<p>section. (Bug#58461: http://bugs.mysql.com/bug.php?id=58461)</p>
<p>* InnoDB Storage Engine: The command to create a debug build</p>
<p>(cmake -DWITH_DEBUG &#8230;) now automatically sets the InnoDB</p>
<p>debugging flag UNIV_DEBUG on all platforms. Formerly, the</p>
<p>UNIV_DEBUG flag might not be set for Windows platforms with</p>
<p>Visual Studio and not on OS X with Xcode.</p>
<p>(Bug#58279: http://bugs.mysql.com/bug.php?id=58279)</p>
<p>* InnoDB Storage Engine: In InnoDB status output, the value for</p>
<p>I/O sum[] could be incorrect, displayed as a very large</p>
<p>number. (Bug#57600: http://bugs.mysql.com/bug.php?id=57600)</p>
<p>* InnoDB Storage Engine: It was not possible to query the</p>
<p>information_schema.innodb_trx table while other connections</p>
<p>were running queries involving BLOB types.</p>
<p>(Bug#55397: http://bugs.mysql.com/bug.php?id=55397)</p>
<p>* InnoDB Storage Engine: When the lowercase_system_names</p>
<p>variable was set to 2, InnoDB could fail to restore a</p>
<p>mysqldump dump of a table with foreign key constraints</p>
<p>involving case-sensitive names.</p>
<p>(Bug#55222: http://bugs.mysql.com/bug.php?id=55222)</p>
<p>* InnoDB Storage Engine: The OPTIMIZE TABLE statement would</p>
<p>reset the auto-increment counter for an InnoDB table. Now the</p>
<p>auto-increment value is preserved across this operation.</p>
<p>(Bug#18274: http://bugs.mysql.com/bug.php?id=18274)</p>
<p>* Partitioning: A failed ALTER TABLE &#8230; TRUNCATE PARTITION</p>
<p>statement was still written to the binary log.</p>
<p>(Bug#58147: http://bugs.mysql.com/bug.php?id=58147)</p>
<p>* Partitioning: Failed ALTER TABLE &#8230; PARTITION statements</p>
<p>could cause memory leaks.</p>
<p>(Bug#56380: http://bugs.mysql.com/bug.php?id=56380)</p>
<p>See also Bug#46949: http://bugs.mysql.com/bug.php?id=46949,</p>
<p>Bug#56996: http://bugs.mysql.com/bug.php?id=56996.</p>
<p>* Replication: While an INSERT DELAYED statement with a single</p>
<p>inserted value does not return any visible warnings, such a</p>
<p>warning could be still written into the error log.</p>
<p>(Bug#57666: http://bugs.mysql.com/bug.php?id=57666)</p>
<p>See also Bug#49567: http://bugs.mysql.com/bug.php?id=49567.</p>
<p>* Replication: When closing a session that used temporary</p>
<p>tables, binary logging could sometimes fail with a spurious</p>
<p>Failed to write the DROP statement for temporary tables to</p>
<p>binary log.</p>
<p>(Bug#57288: http://bugs.mysql.com/bug.php?id=57288)</p>
<p>* Replication: Due to changes made in MySQL 5.5.3, settings made</p>
<p>in the binlog_cache_size and max_binlog_cache_size server</p>
<p>system variables affected both the binary log statement cache</p>
<p>(also introduced in that version) and the binary log</p>
<p>transactional cache (formerly known simply as the binary log</p>
<p>cache). This meant that the resources used as a result of</p>
<p>setting either or both of these variables were double the</p>
<p>amount expected. To rectify this problem, these variables now</p>
<p>affect only the transactional cache. The fix for this issue</p>
<p>also introduces two new system variables</p>
<p>binlog_stmt_cache_size and max_binlog_stmt_cache_size, which</p>
<p>affect only the binary log statement cache.</p>
<p>In addition, the Binlog_cache_use status variable was</p>
<p>incremented whenever either cache was used, and</p>
<p>Binlog_cache_disk_use was incremented whenever the disk space</p>
<p>from either cache was used, which caused problems with</p>
<p>performance tuning of the statement and transactional caches,</p>
<p>because it was not possible to determine which of these was</p>
<p>being exceeded when attempting to troubleshoot excessive disk</p>
<p>seeks and related problems. This issue is solved by changing</p>
<p>the behavior of these two status variables such that they are</p>
<p>incremented only in response to usage of the binary log</p>
<p>transactional cache, as well as by introducing two new status</p>
<p>variables Binlog_stmt_cache_use and</p>
<p>Binlog_stmt_cache_disk_use, which are incremented only by</p>
<p>usage of the binary log statement cache.</p>
<p>For more information, see Section 17.1.3.4, &#8220;System variables</p>
<p>used with the binary log,&#8221; and Section 5.1.6, &#8220;Server Status</p>
<p>Variables.&#8221;</p>
<p>(Bug#57275: http://bugs.mysql.com/bug.php?id=57275)</p>
<p>* Replication: By default, a value is generated for an</p>
<p>AUTO_INCREMENT column by inserting either NULL or 0 into the</p>
<p>column. Setting the NO_AUTO_VALUE_ON_ZERO server SQL mode</p>
<p>suppresses this behavior for 0, so that it occurs only when</p>
<p>NULL is inserted into the column.</p>
<p>This behavior is also followed on a replication slave (by the</p>
<p>slave SQL thread) when applying events that have been logged</p>
<p>on the master using the statement-based format. However, when</p>
<p>applying events that had been logged using the row-based</p>
<p>format, NO_AUTO_VALUE_ON_ZERO was ignored, which could lead to</p>
<p>an assertion.</p>
<p>To fix this issue, the value of an AUTO_INCREMENT column is no</p>
<p>longer generated when applying an event that was logged using</p>
<p>the row-based row format, as this value is already contained</p>
<p>in the changes applied on the slave.</p>
<p>(Bug#56662: http://bugs.mysql.com/bug.php?id=56662)</p>
<p>* Replication: The Binlog_cache_use and Binlog_cache_disk_use</p>
<p>status variables were incremented twice by a change to a table</p>
<p>using a transactional storage engine.</p>
<p>(Bug#56343: http://bugs.mysql.com/bug.php?id=56343)</p>
<p>* Replication: The BINLOG statement modified the values of</p>
<p>session variables, which could lead to problems with</p>
<p>operations such a point-in-time recovery. One such case</p>
<p>occurred when replaying a row-based binary log which relied on</p>
<p>setting foreign_key_checks = OFF on the session level in order</p>
<p>to create and populate a set of InnoDB tables having foreign</p>
<p>key constraints.</p>
<p>(Bug#54903: http://bugs.mysql.com/bug.php?id=54903)</p>
<p>* Replication: mysqlbinlog printed USE statements to its output</p>
<p>only when the default database changed between events. To</p>
<p>illustrate how this could cause problems, suppose that a user</p>
<p>issued the following sequence of statements:</p>
<p>CREATE DATABASE mydb;</p>
<p>USE mydb;</p>
<p>CREATE TABLE mytable (column_definitions);</p>
<p>DROP DATABASE mydb;</p>
<p>CREATE DATABASE mydb;</p>
<p>USE mydb;</p>
<p>CREATE TABLE mytable (column_definitions);</p>
<p>When played back using mysqlbinlog, the second CREATE TABLE</p>
<p>statement failed with Error: No Database Selected because the</p>
<p>second USE statement was not played back, due to the fact that</p>
<p>a database other than mydb was never selected.</p>
<p>This fix insures that mysqlbinlog outputs a USE statement</p>
<p>whenever it reads one from the binary log.</p>
<p>(Bug#50914: http://bugs.mysql.com/bug.php?id=50914)</p>
<p>* Replication: Previously, when a statement failed with a</p>
<p>different error on the slave than on the master, the slave SQL</p>
<p>thread displayed a message containing:</p>
<p>+ The error message for the master error code</p>
<p>+ The master error code</p>
<p>+ The error message for the slaves error code</p>
<p>+ The slave error code</p>
<p>However, the slave has no information with which to fill in</p>
<p>any print format specifiers for the master message, so it</p>
<p>actually displayed the message format string. To make it</p>
<p>clearer that the slave is not displaying the actual message as</p>
<p>it appears on the master, the slave now indicates that the</p>
<p>master part of the output is the message format, not the</p>
<p>actual message. For example, previously the slave displayed</p>
<p>information like this:</p>
<p>Error: &#8220;Query caused different errors on master and slave.</p>
<p>Error on master: &#8216;Duplicate entry &#8216;%-.192s&#8217; for key %d&#8217;</p>
<p>(1062), Error on slave: &#8216;no error&#8217; (0). Default database:</p>
<p>&#8216;test&#8217;. Query: &#8216;insert into t1 values(1),(2)&#8217;&#8221; (expected</p>
<p>different error codes on master and slave)</p>
<p>Now the slave displays this:</p>
<p>Error: &#8220;Query caused different errors on master and slave.</p>
<p>Error on master: message format=&#8217;Duplicate entry &#8216;%-.192s&#8217; for</p>
<p>key %d&#8217; error code=1062 ; Error on slave: actual message=&#8217;no</p>
<p>error&#8217;, error code=0. Default database: &#8216;test&#8217;. Query: &#8216;insert</p>
<p>into t1 values(1),(2)&#8217;&#8221; (expected different error codes on</p>
<p>master and slave)</p>
<p>(Bug#46697: http://bugs.mysql.com/bug.php?id=46697)</p>
<p>* Replication: When an error occurred in the generation of the</p>
<p>name for a new binary log file, the error was logged but not</p>
<p>shown to the user.</p>
<p>(Bug#46166: http://bugs.mysql.com/bug.php?id=46166)</p>
<p>See also Bug#37148: http://bugs.mysql.com/bug.php?id=37148,</p>
<p>Bug#40611: http://bugs.mysql.com/bug.php?id=40611,</p>
<p>Bug#43929: http://bugs.mysql.com/bug.php?id=43929,</p>
<p>Bug#51019: http://bugs.mysql.com/bug.php?id=51019.</p>
<p>* Comparisons of aggregate values with TIMESTAMP values were</p>
<p>incorrect. (Bug#59330: http://bugs.mysql.com/bug.php?id=59330)</p>
<p>* For DIV expressions, assignment of the result to multiple</p>
<p>variables could cause a server crash.</p>
<p>(Bug#59241: http://bugs.mysql.com/bug.php?id=59241)</p>
<p>See also Bug#8457: http://bugs.mysql.com/bug.php?id=8457.</p>
<p>* MIN(year_col) could return an incorrect result in some cases.</p>
<p>(Bug#59211: http://bugs.mysql.com/bug.php?id=59211)</p>
<p>* mysqlslap failed to check for a NULL return from</p>
<p>mysql_store_result() and crashed trying to process the result</p>
<p>set. (Bug#59109: http://bugs.mysql.com/bug.php?id=59109)</p>
<p>* In a subquery, a UNION with no referenced tables (or only a</p>
<p>reference to the virtual table dual) did not allow an ORDER BY</p>
<p>clause. (Bug#58970: http://bugs.mysql.com/bug.php?id=58970)</p>
<p>* Configuring MySQL with -DWITHOUT_PERFSCHEMA_STORAGE_ENGINE=1</p>
<p>caused build failures.</p>
<p>(Bug#58953: http://bugs.mysql.com/bug.php?id=58953)</p>
<p>* Several Valgrind warnings were fixed.</p>
<p>(Bug#58948: http://bugs.mysql.com/bug.php?id=58948,</p>
<p>Bug#59021: http://bugs.mysql.com/bug.php?id=59021)</p>
<p>* OPTIMIZE TABLE for an InnoDB table could raise an assertion if</p>
<p>the operation failed because it had been killed.</p>
<p>(Bug#58933: http://bugs.mysql.com/bug.php?id=58933)</p>
<p>* If max_allowed_packet was set larger than 16MB, the server</p>
<p>failed to reject too-large packets with &#8220;Packet too large&#8221;</p>
<p>errors. (Bug#58887: http://bugs.mysql.com/bug.php?id=58887)</p>
<p>* A NOT IN predicate with a subquery containing a HAVING clause</p>
<p>could retrieve too many rows, when the subquery itself</p>
<p>returned NULL.</p>
<p>(Bug#58818: http://bugs.mysql.com/bug.php?id=58818)</p>
<p>* EXPLAIN could crash for queries that accessed two derived</p>
<p>tables. (Bug#58730: http://bugs.mysql.com/bug.php?id=58730)</p>
<p>* On Solaris, the MySQL build failed if it was configured with</p>
<p>debugging enabled.</p>
<p>(Bug#58699: http://bugs.mysql.com/bug.php?id=58699)</p>
<p>* Issuing EXPLAIN EXTENDED for a query that would use condition</p>
<p>pushdown could cause mysqld to crash.</p>
<p>(Bug#58553: http://bugs.mysql.com/bug.php?id=58553)</p>
<p>* An assertion could be raised for queries for which the</p>
<p>optimizer could choose between Index Merge range access or</p>
<p>const ref access methods.</p>
<p>(Bug#58456: http://bugs.mysql.com/bug.php?id=58456)</p>
<p>* If MySQL was built with Visual Studio Express, the project</p>
<p>wixca was not built.</p>
<p>(Bug#58411: http://bugs.mysql.com/bug.php?id=58411)</p>
<p>* EXPLAIN could crash for queries that used GROUP_CONCAT().</p>
<p>(Bug#58396: http://bugs.mysql.com/bug.php?id=58396)</p>
<p>* CMake polluted the source tree by writing installation-related</p>
<p>temporary files there.</p>
<p>(Bug#58372: http://bugs.mysql.com/bug.php?id=58372)</p>
<p>* Security context references in sp_head.cc were rewritten for</p>
<p>improved DTrace compatibility.</p>
<p>(Bug#58350: http://bugs.mysql.com/bug.php?id=58350)</p>
<p>* The ucs2 character set does not support characters outside the</p>
<p>Basic Multilingual Plane (BMP), but converting a string</p>
<p>containing such characters did not produce a</p>
<p>conversion-failure warning.</p>
<p>(Bug#58321: http://bugs.mysql.com/bug.php?id=58321)</p>
<p>* A Valgrind failure occurred in fn_format when called from</p>
<p>archive_discover.</p>
<p>(Bug#58205: http://bugs.mysql.com/bug.php?id=58205)</p>
<p>* CMake did not add LINK_LIBRARIES for MYSQL_ADD_PLUGIN for</p>
<p>libmysqld. (Bug#58158: http://bugs.mysql.com/bug.php?id=58158)</p>
<p>* An assertion could be raised if the server was closing a</p>
<p>session at the same time the session was being killed by</p>
<p>another thread.</p>
<p>(Bug#58136: http://bugs.mysql.com/bug.php?id=58136)</p>
<p>* Condition pushdown optimization could push down conditions</p>
<p>with incorrect column references.</p>
<p>(Bug#58134: http://bugs.mysql.com/bug.php?id=58134)</p>
<p>* Configuration with maintainer mode enabled resulted in errors</p>
<p>when compiling with icc.</p>
<p>(Bug#57991: http://bugs.mysql.com/bug.php?id=57991,</p>
<p>Bug#58871: http://bugs.mysql.com/bug.php?id=58871)</p>
<p>* An ORDER BY clause was bound to the incorrect substatement</p>
<p>when used in UNION context.</p>
<p>(Bug#57986: http://bugs.mysql.com/bug.php?id=57986)</p>
<p>* The BIT_AND() function could return incorrect results when a</p>
<p>join returned no matching rows.</p>
<p>(Bug#57954: http://bugs.mysql.com/bug.php?id=57954)</p>
<p>* If the set of values aggregated with AVG(DISTINCT) contained a</p>
<p>NULL value, the function result could be incorrect.</p>
<p>(Bug#57932: http://bugs.mysql.com/bug.php?id=57932)</p>
<p>* In rare cases, LIKE expressions failed for an indexed column</p>
<p>that used a collation containing contractions.</p>
<p>(Bug#57737: http://bugs.mysql.com/bug.php?id=57737)</p>
<p>* Unnecessary subquery evaluation in contexts such as statement</p>
<p>preparation or view creation could cause a server crash.</p>
<p>(Bug#57703: http://bugs.mysql.com/bug.php?id=57703)</p>
<p>* View creation could produce Valgrind warnings.</p>
<p>(Bug#57352: http://bugs.mysql.com/bug.php?id=57352)</p>
<p>* NULL geometry values could cause a crash in</p>
<p>Item_func_spatial_collection::fix_length_and_dec.</p>
<p>(Bug#57321: http://bugs.mysql.com/bug.php?id=57321)</p>
<p>* It was possible to compile mysqld with Performance Schema</p>
<p>support but with a dummy atomic-operations implementation,</p>
<p>which caused a server crash. This problem does not affect</p>
<p>binary distributions. It is helpful as a safety measure for</p>
<p>users who build MySQL from source.</p>
<p>(Bug#56769: http://bugs.mysql.com/bug.php?id=56769)</p>
<p>* The cp1251 character set did not properly support the Euro</p>
<p>sign (0&#215;88). For example, converting a string containing this</p>
<p>character to utf8 resulted in &#8216;?&#8217; rather than the utf8 Euro</p>
<p>sign. (Bug#56639: http://bugs.mysql.com/bug.php?id=56639)</p>
<p>* Some unsigned system variables could be displayed with</p>
<p>negative values.</p>
<p>(Bug#55794: http://bugs.mysql.com/bug.php?id=55794)</p>
<p>* CREATE DATABASE and DROP DATABASE caused mysql &#8211;one-database</p>
<p>to lose track of the statement-filtering context.</p>
<p>(Bug#54899: http://bugs.mysql.com/bug.php?id=54899)</p>
<p>* An assertion could be raised during concurrent execution of</p>
<p>DROP DATABASE and REPAIR TABLE if the drop deleted a table&#8217;s</p>
<p>.TMD file at the same time the repair tried to read details</p>
<p>from the old file that was just removed.</p>
<p>A problem could also occur when DROP TABLE tried to remove all</p>
<p>files belonging to a table at the same time REPAIR TABLE had</p>
<p>just deleted the table&#8217;s .TMD file.</p>
<p>(Bug#54486: http://bugs.mysql.com/bug.php?id=54486)</p>
<p>* After compilation from source, all header files were installed</p>
<p>in the same directory, even those that should be installed</p>
<p>into subdirectories of the installation include directory.</p>
<p>(Bug#51925: http://bugs.mysql.com/bug.php?id=51925)</p>
<p>* When mysqld printed crash dump information, it incorrectly</p>
<p>indicated that some valid pointers were invalid.</p>
<p>(Bug#51817: http://bugs.mysql.com/bug.php?id=51817)</p>
<p>* On Mac OS X, a configuration error caused the preference pane</p>
<p>to fail. (Bug#51264: http://bugs.mysql.com/bug.php?id=51264)</p>
<p>* On FreeBSD, if mysqld was killed with a SIGHUP signal, it</p>
<p>could corrupt InnoDB .ibd files.</p>
<p>(Bug#51023: http://bugs.mysql.com/bug.php?id=51023)</p>
<p>* An assertion could be raised if -1 was inserted into an</p>
<p>AUTO_INCREMENT column by a statement writing more than one</p>
<p>row. (Bug#50619: http://bugs.mysql.com/bug.php?id=50619)</p>
<p>* If a client supplied a user name longer than the maximum 16</p>
<p>characters allowed for names stored in the MySQL grant tables,</p>
<p>all characters were being considered significant.</p>
<p>Historically, only the first 16 characters were used to check</p>
<p>for a match; this behavior was restored.</p>
<p>(Bug#49752: http://bugs.mysql.com/bug.php?id=49752)</p>
<p>* The my_seek() and my_tell() functions ignored the MY_WME flag</p>
<p>when they returned an error, which could cause client programs</p>
<p>to hang. (Bug#48451: http://bugs.mysql.com/bug.php?id=48451)</p>
<p>* During assignment of values to system variables, legality</p>
<p>checks on the value range occurred too late, preventing proper</p>
<p>error checking.</p>
<p>(Bug#43233: http://bugs.mysql.com/bug.php?id=43233)</p>
<p>* On Solaris, time-related functions such as NOW() or SYSDATE()</p>
<p>could return a constant value.</p>
<p>(Bug#42054: http://bugs.mysql.com/bug.php?id=42054)</p>
<p>* If the remote server for a FEDERATED table could not be</p>
<p>accessed, queries for the INFORMATION_SCHEMA.TABLES table</p>
<p>failed. (Bug#35333: http://bugs.mysql.com/bug.php?id=35333)</p>
]]></content:encoded>
			<wfw:commentRss>http://www.marketgrid.com/blog/2011/02/mysql-community-server-5-5-9/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>

