Download | Release Notes | Changelog | Overview of 5.3

Release date: 02 Oct 2012

For the highlights of this release, see the release notes.

The revision number links will take you to the revision's page on Launchpad. On Launchpad you can view more details of the revision and view diffs of the code modified in that revision.

  • Revision #3583 Mon 2012-10-01 15:42:49 +0200
    • increase the version
  • Revision #3582 Sat 2012-09-29 22:44:13 -0700
    • Fixed Bug #1058071 (MDEV-564).
    • In some rare cases when the value of the system variable join_buffer_size was set to a number less than 256 the function JOIN_CACHE::set_constants determined the size of an offset in the join buffer equal to 1 though the minimal join buffer required more than 256 bytes. This could cause a crash of the server when records from the join buffer were read.
  • Revision #3581 Fri 2012-09-28 09:54:43 +0200
    • Fix compiler warnings that breaks build (-Werror).
  • Revision #3580 [merge] Thu 2012-09-27 15:02:17 +0200
    • merge
    • Revision #2732.57.21 [merge] Thu 2012-09-27 12:59:23 +0200
      • Merge from 5.1
      • Revision #2643.153.18 Thu 2012-09-27 12:25:45 +0200
        • Fix incorrect assembler in Taocrypt which causes crashes on i386 with certain GCC versions/options
    • Revision #2732.57.20 [merge] Wed 2012-09-26 18:49:38 +0200
    • Revision #2732.57.19 Tue 2012-09-25 20:23:01 +0200
      • a simple pam user mapper module
    • Revision #2732.57.18 [merge] Wed 2012-09-26 18:29:49 +0200
      • Merge from 5.1.
      • Revision #2643.153.16 Wed 2012-09-26 15:30:08 +0200
        • Fix some failures in 5.1 Buildbot:
          • Fix some warnings in newer GCC (-Werror ...).
          • Fix wrong STACK_DIRECTION detected by configure due to compiler inlining.
  • Revision #3579 Thu 2012-09-27 13:18:07 +0500
    • MDEV-495 backport --ignore-db-dir
    • The feature was backported from MySQL 5.6.
    • Some code was added to make commands as
      • SELECT * FROM ignored_db.t1;
      • CALL ignored_db.proc();
      • USE ignored_db;
    • to take that option into account.
    • per-file comments:
      • mysql-test/r/ignore_db_dirs_basic.result
        • test result added.
      • mysql-test/t/ignore_db_dirs_basic-master.opt
        • options for the test,
        • actually the set of --ignore-db-dir lines.
      • mysql-test/t/ignore_db_dirs_basic.test
        • test for the feature.
        • Same test from 5.6 was taken as a basis,
        • then tests for SELECT, CALL etc were added.
    • per-file comments:
      • sql/mysql_priv.h
        • MDEV-495 backport --ignore-db-dir
        • interface for db_name_is_in_ignore_list() added.
      • sql/mysqld.cc
        • MDEV-495 backport --ignore-db-dir
        • --ignore-db-dir handling.
      • sql/set_var.cc
        • MDEV-495 backport --ignore-db-dir
        • the @@ignore_db_dirs variable added.
      • sql/sql_show.cc
        • MDEV-495 backport --ignore-db-dir
        • check if the directory is ignored.
      • sql/sql_show.h
        • MDEV-495 backport --ignore-db-dir
        • interface added for opt_ignored_db_dirs.
      • sql/table.cc
        • MDEV-495 backport --ignore-db-dir
        • check if the directory is ignored.
  • Revision #3578 [merge] Mon 2012-09-24 17:29:26 +0200
  • Revision #3577 Thu 2012-09-20 12:48:59 +0300
    • MDEV-521 fix.
    • After pullout item during single row subselect transformation it should be fixed properly.
  • Revision #3576 [merge] Mon 2012-09-17 11:13:46 +0300
    • Merged the fix for Bug #1009187, MDEV-373.
    • Performed some refactoring and simplification that was enabled and required by the merge.
    • Revision #2732.57.16 Fri 2012-09-14 11:26:01 +0300
      • Fix Bug #1009187, MDEV-373, MySQL Bug #58628
      • Analysis:
        • The queries in question use the [unique | index]_subquery execution methods. These methods reuse the ref keys constructed by create_ref_for_key(). The way create_ref_for_key() works is that it doesn't store in ref.key_copy[] store_key elements that represent constants. In particular it doesn't store the store_key for NULL constants.
        • The execution of [unique | index]_subquery calls subselect_uniquesubquery_engine::copy_ref_key, which in addition to copy the left IN argument into a index lookup key, is supposed to detect if the left IN argument contains NULLs. Since the store_key for the NULL constant is not copied into the key array, the null is not detected, and execution erroneously proceeds as if it should look for a complete match.
      • Solution:
        • The solution (unlike MySQL) is to reuse already computed information about NULL presence. Item_in_optimizer::val_int already finds out if the left IN operand contains NULLs. The fix propagates this to the execution methods subselect_[unique | index]subquery_engine::exec so it knows if there were NULL values independent of the presence of keys.
        • In addition the patch siplifies copy_ref_key() and the logic that hanldes the case of NULLs in the left IN operand.
  • Revision #3575 Fri 2012-09-07 09:39:51 +0300
    • Fix of MDEV-511.
    • As far as we reopen tables so TABLE become invalid we should remove the pointer on cleanup().
  • Revision #3574 Wed 2012-09-05 23:23:58 +0300
    • MDEV-486 Bug #1010116 fix.
    • Link view/derived table fields to a real table to check turning the table record to null row.
    • Item_direct_view_ref wrapper now checks if table is turned to null row.
  • Revision #3573 Fri 2012-08-31 19:50:45 +0500
    • Bug #1043845 st_distance() results are incorrect depending on variable order.
    • Autointersections of an object were treated as nodes, so the wrong result.
    • per-file comments:
      • mysql-test/r/gis.result
        • Bug #1043845 st_distance() results are incorrect depending on variable order.
        • test result updated.
      • mysql-test/t/gis.test
        • Bug #1043845 st_distance() results are incorrect depending on variable order.
        • test case added.
      • sql/item.cc
        • small fix to make compilers happy.
      • sql/item_geofunc.cc
        • Bug #1043845 st_distance() results are incorrect depending on variable order.
        • Skip intersection points when calculate distance.
  • Revision #3572 Fri 2012-08-31 12:01:52 +0200
    • compilation warning
  • Revision #3571 Thu 2012-08-30 10:53:49 +0200
    • MDEV-381: fdatasync() does not correctly flush growing binlog file.
    • When we append data to the binlog file, we use fdatasync() to ensure the data gets to disk so that crash recovery can work.
    • Unfortunately there seems to be a bug in ext3/ext4 on linux, so that fdatasync() does not correctly sync all data when the size of a file is increased. This causes crash recovery to not work correctly (it loses transactions from the binlog).
    • As a work-around, use fsync() for the binlog, not fdatasync(). Since we are increasing the file size, (correct) fdatasync() will most likely not be faster than fsync() on any file system, and fsync() does work correctly on ext3/ext4. This avoids the need to try to detect if we are running on buggy ext3/ext4.
  • Revision #3570 Thu 2012-08-30 09:05:27 +0200
    • MDEV-437 Microseconds: In time functions precision is calculated modulo 256
    • store the precision in uint, not uint8
  • Revision #3569 Wed 2012-08-29 18:36:57 +0200
    • MDEV-438 Microseconds: Precision is ignored in CURRENT_TIMESTAMP(N) when it is given as a default column value
    • The syntax for specifying precision in the DEFAULT clause is unintentional and unsupported.
    • Don't allow it anymore.
  • Revision #3568 Wed 2012-08-29 17:55:59 +0200
    • MDEV-454 Addition of a time interval reduces the resulting value
      1. Field_newdate::get_date should refuse to return a date with zeros when TIME_NO_ZERO_IN_DATE is set, not when TIME_FUZZY_DATE is unset
      2. Item_func_to_days and Item_date_add_interval can only work with valid dates, no zeros allowed.
  • Revision #3567 Wed 2012-08-29 10:59:51 +0200
    • MDEV-456 An out-of-range datetime value (with a 5-digit year) can be created and cause troubles
      • fix Item_func_add_time::get_date() to generate valid dates.
      • Move the validity check inside get_date_from_daynr() instead of relying on callers
      • (5 that had it, and 2 that did not, but should've)
  • Revision #3566 Wed 2012-08-29 11:35:42 +0300
  • Revision #3565 Tue 2012-08-28 13:51:01 +0400
    • Fix bugs in BatchedKeyAccess that show up when working with a storage engine in HA_MRR_NO_ASSOCIATION mode.
    • (there is no testcase because we don't ship any such engines currently)

Comments

Comments loading...