1. 05 Oct, 2012 1 commit
    • unknown's avatar
      Fix of MDEV-589. · b0d11675
      unknown authored
      The problem was in incorrect detection of merged views in tem_direct_view_ref::used_tables() .
      b0d11675
  2. 02 Oct, 2012 1 commit
  3. 01 Oct, 2012 1 commit
  4. 30 Sep, 2012 1 commit
    • Igor Babaev's avatar
      Fixed LP bug #1058071 (mdev-564). · 66bd2b56
      Igor Babaev authored
      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.  
      66bd2b56
  5. 28 Sep, 2012 1 commit
  6. 27 Sep, 2012 4 commits
    • Sergei Golubchik's avatar
      merge · 352d7cad
      Sergei Golubchik authored
      352d7cad
    • unknown's avatar
      Merge from 5.1 · 807f537f
      unknown authored
      807f537f
    • unknown's avatar
    • Alexey Botchkov's avatar
      MDEV-495 backport --ignore-db-dir. · 8c2bb705
      Alexey Botchkov authored
      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.
      8c2bb705
  7. 26 Sep, 2012 3 commits
  8. 25 Sep, 2012 1 commit
  9. 26 Sep, 2012 1 commit
  10. 24 Sep, 2012 3 commits
  11. 20 Sep, 2012 1 commit
    • unknown's avatar
      MDEV-521 fix. · 792efd59
      unknown authored
      After pullout item during single row subselect transformation it should be fixed properly.
      792efd59
  12. 17 Sep, 2012 1 commit
  13. 14 Sep, 2012 1 commit
    • unknown's avatar
      Fix bug lp:1009187, mdev-373, mysql bug#58628 · b917fb63
      unknown authored
      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.
      b917fb63
  14. 07 Sep, 2012 1 commit
    • unknown's avatar
      Fix of MDEV-511. · 83bdf56e
      unknown authored
      As far as we reopen tables so TABLE become invalid we should remove the pointer on cleanup().
      83bdf56e
  15. 05 Sep, 2012 1 commit
    • unknown's avatar
      MDEV-486 LP BUG#1010116 fix. · 54bb28d4
      unknown authored
      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.
      54bb28d4
  16. 31 Aug, 2012 2 commits
    • Alexey Botchkov's avatar
      Bug #1043845 st_distance() results are incorrect depending on variable order. · 589c62fe
      Alexey Botchkov authored
              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.
      589c62fe
    • Sergei Golubchik's avatar
      compilation warning · 51e14492
      Sergei Golubchik authored
      51e14492
  17. 30 Aug, 2012 2 commits
    • unknown's avatar
      MDEV-381: fdatasync() does not correctly flush growing binlog file. · 10802c4d
      unknown authored
      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.
      10802c4d
    • Sergei Golubchik's avatar
      MDEV-437 Microseconds: In time functions precision is calculated modulo 256 · 0536c506
      Sergei Golubchik authored
      store the precision in uint, not uint8
      0536c506
  18. 29 Aug, 2012 4 commits
  19. 28 Aug, 2012 1 commit
  20. 24 Aug, 2012 1 commit
  21. 25 Aug, 2012 1 commit
    • unknown's avatar
      fix for MDEV-367 · 4d2b05b7
      unknown authored
      The problem was that was_null and null_value variables was reset in each reexecution of IN subquery, but engine rerun only for non-constant subqueries.
      
      Fixed checking constant in Item_equal sort.
      Fix constant reporting in Item_subselect.
      4d2b05b7
  22. 24 Aug, 2012 7 commits