[Due to length restrictions, this announcement is split into three parts. This is part 3.]
Bugs Fixed [contd...] * With DTrace support enabled, certain other compilation options could cause the build to fail. (Bug #19506247) * yaSSL client code did not validate the encryption size or session ID length, which could cause the client to exit. (Bug #19463277, Bug #19463565) * yaSSL could fail preauthorization if the client supplied inaccurate buffer lengths. (Bug #19370676, Bug #19355577) * The optimizer could raise an assertion due to incorrectly handling the table map while sorting an internal temporary table. (Bug #19416826) * Competition between threads could lead to timeout failure trying to rotate the audit log file. (Bug #19184973) * For InnoDB full-text searches, invalid multibyte gb10830 characters could cause a server exit. (Bug #19233075) * Repetitive functions called as arguments to ExtractValue() were not always handled correctly. (Bug #19051306) * On Windows, sql_yacc.cc and sql_yacc.h were generated twice during the build process. This can lead to compilation failure if parallel processes are permitted. (Bug #19060850) * In debug builds, certain range queries could cause an assertion failure. (Bug #18921626) * LPAD() and RPAD() could cause a server exit if the pad string argument was not well formed. (Bug #18935421) * The optimizer could create a zero-length column for a temporary table, causing a server exit. (Bug #18928848) * Performance Schema memory instrumentation did not honor the ENABLED flag in the setup_instruments table or the consumers in the setup_consumers table. This has been corrected, with the result that unnecessary statistics are not collected and overhead is reduced. (Bug #18900309) * When a SELECT included a derived table in a join in its FROM list and the SELECT list included COUNT(DISTINCT), the COUNT() returned 1 even if the underlying result set was empty. (Bug #18853696) References: This bug is a regression of Bug #11760197. * Enabling optimizer trace could cause a server exit for queries with a subquery in a HAVING clause. (Bug #18791851) * Conversion failure of "zero" dates in strict SQL mode could cause a server exit. (Bug #18840123) * SHA and MD5 functions failed for operations using the internal filename character set and could cause a server exit. (Bug #18786138) * Modulo operations on DECIMAL values in some cases could overflow and cause a server exit. (Bug #18839617) * Large arguments passed to mysqldump could lead to buffer overflow and program exit. (Bug #18779944) * Spatial operations on InnoDB tables could fail attempting to access nonexistent index statistics. (Bug #18743725) * Passing bad arguments to SHA2() could cause a server exit. (Bug #18767104) * Using an outer reference in a GROUP BY or ORDER BY clause in a subquery could cause a server exit. (Bug #18767104) * If a materialized subquery read from a view, and contained an inner subquery having an outer reference to a column of the view, results could be incorrect. (Bug #18770217) * mysql_secure_installation ignored options defined after an unrecognized option. (Bug #18659533) * The code for processing the gb18030 character set had a too-strict assertion for single-character invalid characters. (Bug #18700668) * ORDER BY of a GIS function that was given invalid arguments could cause a server exit. (Bug #18701868) * After a metadata change, a reprepared trigger could cause a server exit or prune an incorrect partition. (Bug #18684393) * Compiler flags were not passed to DTrace, causing problems for 32-bit builds cross-compiled on 64-bit platforms. (Bug #18593044) * The server could fail to properly reprepare triggers that referred to another table after that table was truncated. (Bug #18596756, Bug #72446, Bug #18665853) * ALTER TABLE on a partitioned table could result in the wrong storage engine being written into the table's .frm file and displayed in SHOW CREATE TABLE. (Bug #18618561) * VALIDATE_PASSWORD_STRENGTH() could enter an infinite loop for some arguments. (Bug #18636291) * For conditions on the form t.key NOT IN (c1, c2, ...), if one or more of the c1, c2 was NULL, the optimizer generated incorrect range predicates, possibly yielding incorrect results. The range optimizer would build predicates for empty in-lists (because NULL values are removed from NOT IN (in-list)). (Bug #18556403, Bug #18715670) * After conversion of an in-memory internal temporary table to disk, the server could use a pointer to the old table, resulting in a server exit. (Bug #18535226) * mysql_session_track_get_first() and mysql_session_track_get_next() returned information only when the type argument was SESSION_TRACK_SYSTEM_VARIABLES, and returned information for all types, not just SESSION_TRACK_SYSTEM_VARIABLES. Now they return information of the type requested and only that type. (Bug #18463441) * In debug builds, a qsort operation on decimal values could raise an assertion. (Bug #18486249) * For debug builds, an assertion was raised for attempts using a cursor within a stored routine to fetch a large value (INT) which cannot fit into a variable (TINYINT). (Bug #18484649) * In debug builds, subquery optimization could be overly aggressive about raising an assertion. (Bug #18486607) * In debug builds, MAKE_SET() within a GROUP BY clause raised an assertion. (Bug #18487060) * Setting default_storage_engine to a bad value could cause server failure later. (Bug #18487724) * For queries executed using Loose Index Scan, incorrect cost estimates could be produced if index statistics were unavailable. (Bug #18497308) * With the max_heap_table_size system variable set to a large value (20GB), creation of a temporary table or a table using the MEMORY storage engine caused a server exit. (Bug #18463911) * MOD for very small decimal right-hand arguments could cause a server exit. (Bug #18469276) * Queries that use AES_ENCRYPT(), AES_DECRYPT(), or RANDOM_BYTES() cannot be cached but were permitted to enter the query cache. (Bug #18383169) * mysql_install_db could hang while reading /dev/random to generate a random root password. (Bug #18395378) * EXPLAIN FOR CONNECTION showed an incorrect filtering value for dynamic range queries. (Bug #18395059) * Assigning some values to the session_track_system_variables system variable could cause a server exit. (Bug #18405677) * For mysql_upgrade, specifying the --defaults-extra-file with a nonexisting file caused a segmentation fault on some platforms. (Bug #18443096) * The client library now includes a call to X509_verify_cert_error_string() in the SSL certificate verification code, to be more robust in detecting invalid certificates. (Bug #18384260) * The HAVE_IB_LINUX_FUTEX CMake check failed due to a missing include file. (Bug #18353271) * After a code reorganization in MySQL 5.7.4, ORDER BY for multiple-table UPDATE statements was ignored. (Bug #18352634) * In debug builds, lack of proper object initialization of decimal objects caused an assertion to be raised. (Bug #18335446) * Certain INFORMATION_SCHEMA queries could cause a server exit. (Bug #18319790) * Plugin registration code in the embedded server (compiled without the Performance Schema) failed for plugins compiled with the Performance Schema. (Bug #18363910) * Improper linking of join caches by the optimizer could lead to a server exit. (Bug #18335908) * The addition in MySQL 5.7.4 of session state information to the OK packet of the client/server protocol caused the mysql->info member to be missing a terminating null terminator. (Bug #18349102) * UNCOMPRESSED_LENGTH() could return NULL when it should not have. (Bug #18335269) * If MySQL was built with the -DINSTALL_LIBDIR=lib64 option, mysql_config did not work if the MySQL package was unpacked into a location with a different installation prefix. Also, mysql_config did not work for some RPM builds because it used an incorrect installation prefix. (Bug #18382225) * The COM_RESET_CONNECTION command did not reset some session system variables: rand_seed1, rand_seed2, timestamp. Also, it did not clear warnings, and, although it reset the profiling variable, it did not reset profiling information. (Bug #18329348, Bug #18329560, Bug #18328396, Bug #18329452) * On Windows, some test cases ran too slowly due to mysqltest not testing properly for server termination. (Bug #18330694) * For indexes on prefixes or character string columns, index corruption could occur for assignment of binary data to the column due to improper character counting. (Bug #18359924) * Solaris-specific scripts were included in and installed by non-Solaris packages. (Bug #18305641) * On Windows, use of the gb18030_unicode_520_ci caused a server exit. (Bug #18271429) * innobase_strnxfrm() wrote one byte too many. (Bug #18277082) * EXPLAIN for some full-text queries could raise an assertion. (Bug #18313651) * For debug builds, a 0x00 character in a full-text query string that used the ujis_japanese_ci, utf8mb4_turkish_ci, or eucjpms_bin collation could raise an assertion. (Bug #18277305) * For queries involving an AND of two geometry ranges, the optimizer could decide no index was usable but try to use it anyway, resulting in a server exit. (Bug #18220153) * If the left-hand-side of an IN predicate was a scalar subquery but returned no row, the server could exit. (Bug #18223655, Bug #18447874) * The internal likely() and unlikely() macros conflicted with Boost symbols. To resolve this, the macros were converted to inline functions. (Bug #18242233) * EXPLAIN on a query with an EXISTS subquery containing a UNION could cause a server exit. Multiple executions of a prepared EXPLAIN on a UNION of subqueries could cause a server exit. (Bug #18167356) * mysqladmin password masked the old password given on the command line, but not the new password. (Bug #18163964) * yaSSL code had an off-by-one error in certificate decoding that could cause buffer overflow. yaSSL code had an opendir() without a corresponding closedir(). (Bug #18178997, Bug #17201924) * For InnoDB tables, boolean full-text queries for terms ending with * could return incorrect results. (Bug #18128757) * mysql_upgrade invoked the mysql and mysqlcheck clients and the command arguments could be visible to other processes. This issue is addressed by the reimplementation of mysql_upgrade to communicate directly with the server, a change described elsewhere in these release notes. (Bug #18180398) * Argument checking for a memmove() call in my_net_read() was improved. (Bug #18184793) * Executing a correlated subquery on an ARCHIVE table which has an AUTO_INCREMENT column caused the server to hang. (Bug #18065452) * The client library could cause clients to exit due to incorrectly mapping the client error number to the corresponding message, if reallocation of packet buffer memory occurred. (Bug #18080920) * For XA transactions, -1 could be assigned as the format ID part of an XID value, resulting in mishandling (server hang or exit) of concurrent XA statements. (Bug #18107853) * For full-text queries on InnoDB tables, attempts to access deleted document IDs could lead to a server exit. (Bug #18079671) * The optimizer could compute a negative cost value when constructing an execution plan for MERGE table queries. (Bug #18066518) * Calling mysql_get_server_version() with an invalid connection handler argument caused the client to exit. Now it returns 0 and reports a CR_COMMANDS_OUT_OF_SYNC error. (Bug #18053212) * If the optimizer chose to perform an index scan, in some cases it could choose a noncovering rather than a covering index. (Bug #18035906) * MyISAM temporary files could be used to mount a code-execution attack. (Bug #18045646) * The C client library could leak memory when client plugins were used. (Bug #17933308) * The CMake -DWITHOUT_PARTITION_STORAGE_ENGINE=1 option did not work. As part of fixing this problem, a preferred syntax for disabling storage engines was implmented. The syntax -DWITH_engine_STORAGE_ENGINE=0 is now preferred to -DWITHOUT_engine_STORAGE_ENGINE=1. For example, use: -DWITH_EXAMPLE_STORAGE_ENGINE=0 -DWITH_FEDERATED_STORAGE_ENGINE=0 -DWITH_PARTITION_STORAGE_ENGINE=0 Rather than: -DWITHOUT_EXAMPLE_STORAGE_ENGINE=1 -DWITHOUT_FEDERATED_STORAGE_ENGINE=1 -DWITHOUT_PARTITION_STORAGE_ENGINE=1 (Bug #17947926) * A BEFORE UPDATE trigger could insert NULL into a NOT NULL column. (Bug #17864349) * For debug builds, DROP FUNCTION with a too-long function name raised an assertion. (Bug #17903490) * A UNION ALL query with SQL_CALC_FOUND_ROWS and a LIMIT with an offset for one query block reported an incorrect number of found rows. (Bug #17833261) * For queries that selected from the Performance Schema events_statements_current table, adding an ORDER BY clause could produce incorrect results. (Bug #17729044) * For debug builds, a DELETE statement with a subquery that returned multiple rows in a context requiring a scalar subquery could raise a diagnostic area assertion. (Bug #17787664) * A (rare) deadlock could occur between LOCK_thd_data and the InnoDB trx_sys mutex. One thread could read a query string while it was being removed by another thread. (Bug #17606098) * Deadlock could occur between LOCK_thd_data and the InnoDB trx_sys mutex. (Bug #17606098) * mysqldump could create table definitions in the dump file that resulted in Too many columns errors when reloading the dump file. (Bug #17477959) * On Windows, calling mysql_thread_init() call without mysql_init() caused the client to exit. windows. Now it returns a nonzero result because it is an error to call mysql_thread_init() before the client library is initialized with mysql_library_init(). (Bug #17514920) * Using LOAD DATA INFILE to load fixed-length data into a view could cause a server exit. (Bug #17458965) * The optimizer trace could cause a server exit in cases where a subquery was transformed away. (Bug #17458054) * UPDATE statements that modified full-text indexes could cause a server exit. (Bug #17457755) * Sending a SIGQUIT or SIGINT signal to mysql could result in a glibc double free or corruption error. (Bug #17297324) * If a query had both MIN()/MAX() and aggregate_function(DISTINCT) (for example, SUM(DISTINCT)) and was executed using Loose Index Scan, the result values of MIN()/MAX() were set improperly. (Bug #17217128) * For UNION statements, the rows-examined value was calculated incorrectly. This was manifest as too-large values for the ROWS_EXAMINED column of Performance Schema statement tables (such as events_statements_current). (Bug #17059925) * Row constructor arguments to INTERVAL() could cause a server exit. (Bug #16439419) * An assertion could be raised when creating a index on a prefix of a TINYBLOB or GEOMETRY column in an InnoDB column. (Bug #16368875, Bug #18776592, Bug #17665767) * mysql_config_editor left some files open when they were no longer needed, resulting in Valgrind warnings. (Bug #16368498) * Several issues related to the ONLY_FULL_GROUP_BY SQL mode were corrected: + With ONLY_FULL_GROUP_BY enabled, some valid queries were rejected if the accessed table was replaced by a view. + Queries of the form SELECT DISTINCT col1 ... ORDER BY col2 qualify as forbidden by SQL2003 (hidden ORDER BY columns combined with DISTINCT), but were not rejected with the ONLY_FULL_GROUP_BY SQL mode enabled. (Bug #16021396, Bug #18993257, Bug #13581713) * The change made in MySQL 5.7.0 to display the XID value in hexadecimal for XA RECOVER if it contained nonprintable characters was reverted because it caused problems for some clients. Now the statement takes an optional CONVERT XID keyword so that clients can request the XID value in hexadecimal on demand. (Bug #14670465) * To help with crash analysis on Windows, more information has been added to the core file that is written on mysqld abort when the core-file option is enabled. (Bug #14041454) * Use of a nonmultibyte algorithm for skipping leading spaces in multibyte strings could cause a server exit. (Bug #12368495, Bug #18315770) * With big_tables enabled, queries that used COUNT(DISTINCT) on a simple join with a constant equality condition on a non-duplicate key returned incorrect results. (Bug #52582, Bug #11760197) References: See also Bug #18853696. * When MySQL runs as service on Windows, NTService.Stop() initiates shutdown and exit events during shutdown. After a code reorganization in MySQL 5.7.3, a call to clean_up() was missed, resulting in initiation of crash recovery. (Bug #71104, Bug #17980260) * Some statements could be written to the slow query log twice. (Bug #68626, Bug #16467055) * LOAD DATA LOCAL INFILE could use all CPU if import errors occurred when there were no line delimiters. (Bug #51840, Bug #11759519) * Deadlock could occur if three threads simultaneously performed INSTALL PLUGIN, SHOW VARIABLES, and mysql_change_user(). (Bug #71236, Bug #18008907, Bug #72870, Bug #18903155) * mysql_config_editor exited when given an empty argument to the --login-path option. (Bug #71837, Bug #18311024, Bug #18830493) * MySQL did not compile with Bison 3. A workaround is to downgrade to Bison 2. (Bug #71250, Bug #18017820, Bug #18978946) * ER_CANT_CREATE_GEOMETRY_OBJECT was treated as a fatal error, thus not catchable with condition handlers. (Bug #72064, Bug #18413646) * For mysqldump, dump and restore operations failed for database names that contained backslash ('\'). Thanks for Xiaobin Lin for the patch. (Bug #71437, Bug #18109728) * mysqlslap accepted an --iterations option value of 0, which resulted in a divide-by-zero error. The minimum option value now is 1. Thanks to Tsubasa Tanaka for the patch. (Bug #72082, Bug #18430704) * For IN() predicates with values different from the key data value, the optimizer sometimes used a table scan when it could do a range scan. (Bug #71962, Bug #18364815) * Some comparisons between BIGINT signed and unsigned values could yield incorrect results. (Bug #72046, Bug #18408499) * On Windows, REPAIR TABLE and OPTIMIZE TABLE failed for MyISAM tables with .MYD files larger than 4GB. (Bug #69683, Bug #17235179) * Uninstalling and reinstalling semisynchronous replication plugins while semisynchronous replication was active caused replication failures. The plugins now check whether they can be uninstalled and produce an error if semisynchronous replication is active. To uninstall the master-side plugin, there must be no semisynchronous slaves. To uninstall the slave-side plugin, there must be no semisynchronous I/O threads running. (Bug #70391, Bug #17638477) * A statement of the following form broke row-based replication because it created a table having a field of data type BIGINT with a display width of 3000, which is beyond the maximum acceptable value of 255: CREATE TABLE t1 AS SELECT REPEAT('A',1000) DIV 1 AS a; (Bug #71179, Bug #17994219) * For non-debug builds of several client programs, the --help message did not correctly indicate that the --debug, --debug-check, and --debug-info apply only for debug builds. (Bug #66854, Bug #16272328) * In the DIGEST_TEXT column of Performance Schema statement events tables, references to system variables of the form @@var_name were stored as @ @ var_name. (Bug #71634, Bug #18304086) * Updates could fail to update all applicable rows in cases where multiple key values were identical except for trailing spaces. (Bug #69684, Bug #17156940) * The Performance Schema threads table displayed a PROCESS_ID value of NULL for replication threads. Now it displays the same ID as SHOW PROCESSLIST and the INFORMATION_SCHEMA.PROCESSLIST table. (Bug #71682, Bug #18259356) * XA START after a server restart with the exising XID followed by XA COMMIT failed to commit. (Bug #71352, Bug #18068253) * UNION queries with an aggregate function in an ORDER BY clause were not rejected as they should be. Now such queries are rejected with an ER_AGGREGATE_ORDER_FOR_UNION error. Example: SELECT 1 AS foo UNION SELECT 2 ORDER BY MAX(1); A nonaggregated query with an ORDER BY applied to it cannot contain aggregate functions, but was not rejected as it should be. Now such queries are rejected with an ER_AGGREGATE_ORDER_NON_AGG_QUERY error. Example: SELECT a FROM t1 ORDER BY COUNT(*); (Bug #72174, Bug #18503515, Bug #72512, Bug #18694751) * If there was a predicate on a column referenced by MIN() or MAX() and that predicate was not present in all the disjunctions on key parts earlier in the compound index, Loose Index Scan returned an incorrect result. (Bug #71097, Bug #17909656) * Calls to UNCOMPRESS() produced Valgrind warnings during verification of the zip header of the compressed data. (Bug #69202, Bug #18693654) * For an existing nondynamic (built-in) plugin, the error message for an attempted UNINSTALL PLUGIN was misleading (the plugin does not exist). Now the message indicates that built-in plugins cannot be uninstalled. (Bug #51771, Bug #11759453) * Full-text queries on MyISAM tables that included a LIMIT clause but no WHERE clause could return too few rows. (Bug #69908, Bug #17261347) * Client auto-reconnect did not work for clients linked against libmysqlclient, even with MYSQL_OPT_RECONNECT enabled. Also, if a FEDERATED table was accessed after wait_timeout expired, a Lost connection to MySQL server error occurred without an attempt to re-establish the connection. (Bug #70026, Bug #17309863, Bug #14874, Bug #11745408) * mysql_tzinfo_to_sql mishandled some values from the abbreviation list (read from the timezone information file) due to failure to account for the null character appended to the end of the char array. (Bug #68861, Bug #16664462) * The gb18030_chinese_ci collation treated 'Y' equal to '~'. (Bug #72565, Bug #18729428) * The mysql client displayed gb18030 data incorrectly. (Bug #72573, Bug #18726196) * The server did not take the lower_case_table_names value into account in determining the database directory from which to read the db.opts file, and thus could read the file from an incorrect directory. (Bug #72900, Bug #18923685) * A SELECT statement using a subquery with UNION and ORDER BY did not permit use of an alias in the outer statement. (Bug #72189, Bug #18498344) * Upgrades using RPM packages could change the ownership of an installation directory. (Bug #71715, Bug #18281535) * Proxy users were unable to execute statements if the proxied user password had expired. (Bug #71337, Bug #18057562) * A new CMake option, SUNPRO_CXX_LIBRARY, enables linking against libCstd instead of stlport4 on Solaris 10 or later. This works only for client code because the server depends on C++98. Example usage: cmake -DWITHOUT_SERVER=1 -DSUNPRO_CXX_LIBRARY=Cstd (Bug #72352, Bug #18605389) * File permissions and line endings of several test and configuration files were made more consistent to avoid warnings from package checkers. (Bug #68521, Bug #16415173, Bug #16395459, Bug #68517, Bug #16415032, Bug #71112, Bug #17919313, Bug #71113, Bug #17919422) * For logging of prepared statements to the general query log, the Execute line was logged after statement execution, not before. (Bug #69453, Bug #16953758) * If a prepared statement being executed produced an error, the server failed to write the statement to the general query log. (Bug #72375, Bug #18616826) * Invalid memory access could occur when using prepared statements if a mysql client connection was lost after statement preparation was complete and there was at least one statement that was in initialized state but not prepared yet. (Bug #70429, Bug #17512527) * SHA2() failed to return NULL if the hash-length argument was NULL or not one of the permitted values. (Bug #72856, Bug #18899869) * MOD operations on a DECIMAL value with leading zeros could produce incorrect results. (Bug #72100, Bug #18509896) * For debug builds, a SELECT under load from the Performance Schema events_statements_current table could raise an assertion. (Bug #73530, Bug #19419463) * Notification of events for the general log were received by the audit log plugin only of the general query log was enabled. Now notifications are posted regardless of whether the general query log is enabled. (Bug #60782, Bug #12368204) * mysql_secure_installation failed to run properly if the root account authentication plugin was sha256_password. (Bug #73148, Bug #19127636) * LIKE matches failed for code points of HALF WIDTH KATAKANA in the sjis and cp932 character sets. (Bug #47641, Bug #11755818) * mysql_upgrade could fail if the mysql.user table contained multiple accounts with the same user name and host name where the host name differed in lettercase. This is still not permitted, but now mysql_upgrade prints a more informative error message to indicate the nature of the problem: ERROR 1644 (45000): Multiple accounts exist for user_name, host_name that differ only in Host lettercase; remove all except one of them (Bug #72066, Bug #18415196) * If the general query log or slow query log file was set to a FIFO or socket file, and the file reader went away, the server stopped executing statements. Now the server detects such files, logs an error message, and continues with the appropriate log disabled. (Bug #67088, Bug #14757009) * A simultaneous OPTIMIZE TABLE and online ALTER TABLE on the same InnoDB table could result in deadlock. (Bug #71433, Bug #18110156) * The query cache was not invalidated for a table when a CASCADE DELETE or CASCADE UPDATE referential constraint was specified and the database name or table name contained special characters. (Bug #72547, Bug #18710853) * For new connections, the server could allocate thread IDs that were not actually free. (Bug #44167, Bug #11752851) * mysql_install_db could fail if not invoked in the MySQL installation base directory. (Bug #54034, Bug #11761529) * NOW(N) in a view definition was stored as NOW(), thus losing the fractional seconds part. (Bug #72472, Bug #18675237) * The server failed to produce an error for INSERT statements that provided no column names but did provide column values. (Bug #20943, Bug #11745889, Bug #18064775) References: This bug is a regression of Bug #16820562. * The server was made more consistent and resilient with regard to handling of statements for which the IGNORE keyword is specified. + The server failed to report warnings for INSERT IGNORE statements. + The server could fail to report warnings for multiple-table DELETE IGNORE statements. + UPDATE triggers for a table were invoked even for UPDATE IGNORE statements for which a unique index caused the update to be ignored. + For debug builds, an assertion could be raised for errors occurring in DELETE IGNORE statements. + For debug builds, an assertion could be raised for deadlocks resulting from DELETE IGNORE statements. + For DELETE IGNORE executed on the parent table in a foreign key relationship, foreign key violation errors were treated as warnings (correct), but rows that did not produce foreign key violations were not deleted. (Bug #6196, Bug #11744960, Bug #43895, Bug #11752648, Bug #68726, Bug #16522924, Bug #16860715, Bug #16860829, Bug #14786621, Bug #17550423) * Connection IDs are 32-bit unsigned integers, beginning at 1. When the server assigns connection IDs and reaches the top of the 32-bit range, it rolls the value over to begin at 1 again. It was possible that the server would assign a connection ID to a new thread while that ID was still in use by an existing thread, if the old thread was particularly long running. For such cases, reference to the ID becomes ambiguous. For example, it cannot reliably be determined for KILL connection_id which thread to kill, which could lead to undefined behavior. This behavior has been corrected so that in-use IDs are not reused. -- MySQL General Mailing List For list archives: http://lists.mysql.com/mysql To unsubscribe: http://lists.mysql.com/mysql