1. 28 Sep, 2007 1 commit
    • unknown's avatar
      Bug#30665: Inconsistent optimization of IGNORE INDEX FOR {ORDER BY|GROUP BY} · 5a177308
      unknown authored
      The optimizer takes different execution paths during EXPLAIN than SELECT,
      this fix relates only to EXPLAIN, hence no behavior changes.
      The test of sort keys for ORDER BY was prohibited from considering keys
      that were mentioned in IGNORE KEYS FOR ORDER BY. This led to two 
      inconsistencies: One was that IGNORE INDEX FOR GROUP BY and 
      IGNORE INDEX FOR ORDER BY gave apparently different EXPLAINs; the latter 
      erroneously claimed to do filesort. The second inconsistency 
      is that the test of sort keys is called twice, finding a sort key the first
      time but not the second time, leading to the mentioned filesort.
      
      Fixed by making the test of sort keys consider all enabled 
      keys on the table. This test rejects keys that are not covering, and for 
      covering keys the hint should be ignored anyway. 
      
      
      mysql-test/r/group_by.result:
        Bug#30665: Changed test result. The plan gets more efficient here. 
        The output is included in order to show that it is still correct.
      mysql-test/r/order_by.result:
        Bug#30665: Test result
      mysql-test/t/group_by.test:
        Bug#30665: Changed test case to show correctness of changed plan
      mysql-test/t/order_by.test:
        Bug#30665: Test case
      sql/sql_select.cc:
        Bug#30665: 
        - the fix: Give test_if_skip_sort_order all keys not the subset of non-disabled keys.
        - Added comment to test_if_skip_sort_order
      5a177308
  2. 21 Sep, 2007 2 commits
  3. 20 Sep, 2007 6 commits
    • unknown's avatar
      Merge sgluhov@bk-internal.mysql.com:/home/bk/mysql-5.1-opt · c9f5a087
      unknown authored
      into  mysql.com:/home/gluh/MySQL/Merge/5.1-opt
      
      
      c9f5a087
    • unknown's avatar
      result fix · ae270c42
      unknown authored
      ae270c42
    • unknown's avatar
      Merge mysql.com:/home/gluh/MySQL/Merge/5.0-opt · 83540130
      unknown authored
      into  mysql.com:/home/gluh/MySQL/Merge/5.1-opt
      
      
      mysql-test/r/grant.result:
        Auto merged
      83540130
    • unknown's avatar
      result fix · ad57f912
      unknown authored
      ad57f912
    • unknown's avatar
      Merge mysql.com:/home/gluh/MySQL/Merge/5.0-opt · d0f79424
      unknown authored
      into  mysql.com:/home/gluh/MySQL/Merge/5.1-opt
      
      
      mysql-test/r/alter_table.result:
        Auto merged
      mysql-test/r/create.result:
        Auto merged
      mysql-test/r/ctype_collate.result:
        Auto merged
      mysql-test/r/ctype_recoding.result:
        Auto merged
      mysql-test/r/default.result:
        Auto merged
      mysql-test/r/gis.result:
        Auto merged
      mysql-test/r/grant.result:
        Auto merged
      mysql-test/r/information_schema.result:
        Auto merged
      mysql-test/r/key.result:
        Auto merged
      mysql-test/r/mysql.result:
        Auto merged
      mysql-test/r/ps_1general.result:
        Auto merged
      mysql-test/r/sp.result:
        Auto merged
      mysql-test/r/type_enum.result:
        Auto merged
      mysql-test/r/type_ranges.result:
        Auto merged
      mysql-test/r/show_check.result:
        manual merge
      mysql-test/t/information_schema.test:
        manual merge
      sql/sql_show.cc:
        manual merge
      d0f79424
    • unknown's avatar
      Bug#27747 database metadata doesn't return sufficient column default info · fac190a2
      unknown authored
      added get_field_default_value() function which obtains default value from the field
      (used in store_create_info() & get_schema_column_record() functions)
      
      
      mysql-test/r/alter_table.result:
        result fix
      mysql-test/r/create.result:
        result fix
      mysql-test/r/ctype_collate.result:
        result fix
      mysql-test/r/ctype_recoding.result:
        result fix
      mysql-test/r/default.result:
        result fix
      mysql-test/r/gis.result:
        result fix
      mysql-test/r/grant.result:
        result fix
      mysql-test/r/information_schema.result:
        result fix
      mysql-test/r/key.result:
        result fix
      mysql-test/r/mysql.result:
        result fix
      mysql-test/r/ps_1general.result:
        result fix
      mysql-test/r/show_check.result:
        result fix
      mysql-test/r/sp.result:
        result fix
      mysql-test/r/type_enum.result:
        result fix
      mysql-test/r/type_ranges.result:
        result fix
      mysql-test/t/information_schema.test:
        test case
      fac190a2
  4. 19 Sep, 2007 5 commits
    • unknown's avatar
      Merge gkodinov@bk-internal.mysql.com:/home/bk/mysql-5.1-opt · ff4a94b7
      unknown authored
      into  magare.gmz:/home/kgeorge/mysql/autopush/B30639-5.1-opt
      
      
      mysql-test/r/select.result:
        Auto merged
      mysql-test/t/select.test:
        Auto merged
      sql/sql_lex.cc:
        Auto merged
      ff4a94b7
    • unknown's avatar
      Bug #30639: limit offset,rowcount wraps when rowcount >= 2^32 in windows · 717dba24
      unknown authored
       The parser uses ulonglong to store the LIMIT number. This number
       then is stored into a variable of type ha_rows. ha_rows is either
       4 or 8 byte depending on the BIG_TABLES define from config.h
       So an overflow may occur (and LIMIT becomes zero) while storing an
       ulonglong value in ha_rows.
       Fixed by :
        1. Using the maximum possible value for ha_rows on overflow
        2. Defining BIG_TABLES for the windows builds (to match the others) 
      
      
      include/config-win.h:
        Bug #30639: turn on BIG_TABLES for windows
      mysql-test/r/select.result:
        Bug #30639: test case
      mysql-test/t/select.test:
        Bug #30639: test case
      sql/sql_lex.cc:
        Bug #30639: Use the maximum possible number on overflow 
         of LIMIT. This is valid because there won't be more rows
         anyway.
      717dba24
    • unknown's avatar
      Merge mysql.com:/home/gluh/MySQL/Merge/5.0-opt · ed34aabe
      unknown authored
      into  mysql.com:/home/gluh/MySQL/Merge/5.1-opt
      
      
      ed34aabe
    • unknown's avatar
      Merge mysql.com:/home/gluh/MySQL/Merge/5.1 · 0e8d541d
      unknown authored
      into  mysql.com:/home/gluh/MySQL/Merge/5.1-opt
      
      
      mysql-test/suite/rpl/r/rpl_row_tabledefs_2myisam.result:
        Auto merged
      mysql-test/suite/rpl/r/rpl_row_tabledefs_3innodb.result:
        Auto merged
      0e8d541d
    • unknown's avatar
      Merge mysql.com:/home/gluh/MySQL/Merge/5.0 · ffdc5b93
      unknown authored
      into  mysql.com:/home/gluh/MySQL/Merge/5.0-opt
      
      
      ffdc5b93
  5. 15 Sep, 2007 3 commits
    • unknown's avatar
      Many files: · 95daa4ed
      unknown authored
        Post-merge fix.
      
      
      mysql-test/suite/rpl/r/rpl_row_colSize.result:
        Post-merge fix.
      mysql-test/suite/rpl/r/rpl_row_tabledefs_2myisam.result:
        Post-merge fix.
      mysql-test/suite/rpl/r/rpl_extraCol_innodb.result:
        Post-merge fix.
      mysql-test/suite/rpl/r/rpl_extraCol_myisam.result:
        Post-merge fix.
      mysql-test/suite/rpl/r/rpl_row_tabledefs_3innodb.result:
        Post-merge fix.
      95daa4ed
    • unknown's avatar
      Merge devsrv-b.mysql.com:/data0/gshchepa/mysql-5.0-opt · 8d8d1118
      unknown authored
      into  devsrv-b.mysql.com:/data0/gshchepa/mysql-5.1-opt
      
      
      mysql-test/t/select.test:
        Auto merged
      8d8d1118
    • unknown's avatar
      select.test: · 692b686d
      unknown authored
        Post-fix for bug#27695.
      
      
      mysql-test/t/select.test:
        Post-fix for bug#27695.
      692b686d
  6. 14 Sep, 2007 23 commits
    • unknown's avatar
      Merge gkodinov@bk-internal.mysql.com:/home/bk/mysql-5.1-opt · 302e82d1
      unknown authored
      into  magare.gmz:/home/kgeorge/mysql/autopush/B31001-5.1-opt
      
      
      302e82d1
    • unknown's avatar
      Merge gshchepa@bk-internal.mysql.com:/home/bk/mysql-5.1-opt · 887b594c
      unknown authored
      into  devsrv-b.mysql.com:/data0/gshchepa/mysql-5.1-opt
      
      
      sql/item.cc:
        Auto merged
      887b594c
    • unknown's avatar
      Merge gshchepa@bk-internal.mysql.com:/home/bk/mysql-5.0-opt · f58cbe3d
      unknown authored
      into  devsrv-b.mysql.com:/data0/gshchepa/mysql-5.0-opt
      
      
      f58cbe3d
    • unknown's avatar
      Fix compile failure on windows · 1684d47d
      unknown authored
      1684d47d
    • unknown's avatar
      Merge gkodinov@bk-internal.mysql.com:/home/bk/mysql-5.0-opt · 4d8ec62d
      unknown authored
      into  magare.gmz:/home/kgeorge/mysql/autopush/B31001-5.0-opt
      
      
      4d8ec62d
    • unknown's avatar
      Merge magare.gmz:/home/kgeorge/mysql/work/B31001-5.0-opt · edbc2ca9
      unknown authored
      into  magare.gmz:/home/kgeorge/mysql/work/B31001-5.1-opt
      
      
      mysql-test/include/mix1.inc:
        merge 5.0-opt -> 5.1-opt
      mysql-test/r/innodb_mysql.result:
        merge 5.0-opt -> 5.1-opt
      sql/sql_select.cc:
        merge 5.0-opt -> 5.1-opt
      edbc2ca9
    • unknown's avatar
      Many files: · c0d75796
      unknown authored
        Merge with 5.0-opt.
      
      
      mysql-test/r/binlog_unsafe.result:
        Merge with 5.0-opt.
      mysql-test/r/events_bugs.result:
        Merge with 5.0-opt.
      mysql-test/r/events_trans.result:
        Merge with 5.0-opt.
      mysql-test/r/sp.result:
        Merge with 5.0-opt.
      mysql-test/r/sp_gis.result:
        Merge with 5.0-opt.
      mysql-test/r/xml.result:
        Merge with 5.0-opt.
      mysql-test/suite/rpl/r/rpl_incident.result:
        Merge with 5.0-opt.
      mysql-test/suite/rpl/r/rpl_loaddata_fatal.result:
        Merge with 5.0-opt.
      mysql-test/suite/rpl/r/rpl_udf.result:
        Merge with 5.0-opt.
      mysql-test/suite/rpl_ndb/r/rpl_ndb_extraCol.result:
        Merge with 5.0-opt.
      mysql-test/suite/ndb/r/ndb_dd_basic.result:
        Merge with 5.0-opt.
      mysql-test/suite/ndb/r/ndb_dd_ddl.result:
        Merge with 5.0-opt.
      mysql-test/suite/ndb/r/ndb_gis.result:
        Merge with 5.0-opt.
      mysql-test/suite/ndb/r/ndb_row_format.result:
        Merge with 5.0-opt.
      mysql-test/suite/ndb/r/ndb_single_user.result:
        Merge with 5.0-opt.
      c0d75796
    • unknown's avatar
      Bug #31001: ORDER BY DESC in InnoDB not working · ad496be0
      unknown authored
      The optimizer sets index traversal in reverse order only if there are 
       used key parts that are not compared to a constant.
      However using the primary key as an ORDER BY suffix rendered the check
      incomplete : going in reverse order must still be used even if 
      all the parts of the secondary key are compared to a constant.
      
      Fixed by relaxing the check and set reverse traversal even when all
      the secondary index keyparts are compared to a const.
      Also account for the case when all the primary keys are compared to a
      constant.
      
      
      mysql-test/r/innodb_mysql.result:
        Bug #31001: test case
      mysql-test/t/innodb_mysql.test:
        Bug #31001: test case
      sql/sql_select.cc:
        Bug #31001: 
         - account for the case when all the primary key parts are compared
           to a constant
         - force test_if_skip_sort_order to go backwards over the key even 
           when the number of keyparts used is the same as the number of 
           keyparts equal to a constant. (because of the primary key 
           suffix).
      ad496be0
    • unknown's avatar
      Merge mysql.com:/home/psergey/mysql-5.0-bug30324 · fd3d146f
      unknown authored
      into  mysql.com:/home/psergey/mysql-5.1-bug27927
      
      
      mysql-test/r/type_bit.result:
        Auto merged
      mysql-test/t/type_bit.test:
        Auto merged
      sql/item_sum.cc:
        Auto merged
      fd3d146f
    • unknown's avatar
      Merge spetrunia@bk-internal.mysql.com:/home/bk/mysql-5.0-opt · 2ab4e3d1
      unknown authored
      into  mysql.com:/home/psergey/mysql-5.0-bug30324
      
      
      2ab4e3d1
    • unknown's avatar
      BUG#30324: Grouping queries with COUNT(DISTINCT bit column) return wrong results · 466747d5
      unknown authored
      - The bug was caused by COUNT(DISTINCT ...) code using Unique object in 
        a way that assumed that BIT(N) column occupies a contiguous space in
        temp_table->record[0] buffer. 
      - The fix is to make COUNT(DISTINCT ...) code instruct create_tmp_table to
        create temporary table with column of type BIGINT, not BIT(N).
      
      
      mysql-test/r/type_bit.result:
        BUG#30324: Grouping queries with COUNT(DISTINCT bit column) return wrong results
        - Testcase
      mysql-test/t/type_bit.test:
        BUG#30324: Grouping queries with COUNT(DISTINCT bit column) return wrong results
        - Testcase
      sql/item_sum.cc:
        BUG#30324: Grouping queries with COUNT(DISTINCT bit column) return wrong results
        - Make COUNT(DISTINCT ...) code instruct create_tmp_table to create 
          temporary table with BIGINT, not BIT(N) column.
      466747d5
    • unknown's avatar
      Merge spetrunia@bk-internal.mysql.com:/home/bk/mysql-5.1-opt · 98d79d93
      unknown authored
      into  mysql.com:/home/psergey/mysql-5.1-bug27927
      
      
      mysql-test/r/partition_pruning.result:
        Auto merged
      98d79d93
    • unknown's avatar
      BUG#27927:Partition pruning not optimal with TO_DAYS and YEAR functions · 4aaabb06
      unknown authored
      - Introduced val_int_endpoint() function which converts between func 
        argument intervals and func value intervals for monotonic functions.
      - Made partition interval analyzer use part_expr->val_int_endpoint()
        to check if the edge values should be included.
      
      
      mysql-test/r/partition_pruning.result:
        BUG#27927: Partition pruning not optimal with TO_DAYS and YEAR functions
        - Testcase
      mysql-test/t/partition_pruning.test:
        BUG#27927: Partition pruning not optimal with TO_DAYS and YEAR functions
        - Testcase
      sql/item.cc:
        BUG#27927: Partition pruning not optimal with TO_DAYS and YEAR functions
        - Added Item_field::val_int_endpoint() implementation
      sql/item.h:
        BUG#27927: Partition pruning not optimal with TO_DAYS and YEAR functions
        - Added Item::val_int_endpoint() which converts intervals from argument
          space to function value space for unary monotonic functions.
      sql/item_timefunc.cc:
        BUG#27927: Partition pruning not optimal with TO_DAYS and YEAR functions
        - Added val_int_endpoint() for TO_DAYS and YEAR functions.
      sql/item_timefunc.h:
        BUG#27927: Partition pruning not optimal with TO_DAYS and YEAR functions
        - Added val_int_endpoint() for TO_DAYS and YEAR functions.
      sql/partition_info.h:
        BUG#27927: Partition pruning not optimal with TO_DAYS and YEAR functions
        - Removed partition_info::range_analysis_include_bounds as it is no longer 
          needed.
      sql/sql_partition.cc:
        BUG#27927: Partition pruning not optimal with TO_DAYS and YEAR functions
        - Make partition interval analyzer use part_expr->val_int_endpoint() to 
          check if the edge values should be included.
      4aaabb06
    • unknown's avatar
      Merge whalegate.ndb.mysql.com:/home/tomas/mysql-5.1 · c0850719
      unknown authored
      into  whalegate.ndb.mysql.com:/home/tomas/mysql-5.1-new-ndb-merge
      
      
      sql/log_event.cc:
        Auto merged
      c0850719
    • unknown's avatar
      Merge whalegate.ndb.mysql.com:/home/tomas/mysql-5.1-new-ndb · bb959d11
      unknown authored
      into  whalegate.ndb.mysql.com:/home/tomas/mysql-5.1-new-ndb-merge
      
      
      bb959d11
    • unknown's avatar
      Merge whalegate.ndb.mysql.com:/home/tomas/mysql-5.0 · 820a2b8c
      unknown authored
      into  whalegate.ndb.mysql.com:/home/tomas/mysql-5.0-ndb-merge
      
      
      820a2b8c
    • unknown's avatar
      Merge whalegate.ndb.mysql.com:/home/tomas/mysql-5.0-ndb · 5a001065
      unknown authored
      into  whalegate.ndb.mysql.com:/home/tomas/mysql-5.0-ndb-merge
      
      
      5a001065
    • unknown's avatar
      Merge whalegate.ndb.mysql.com:/home/tomas/mysql-5.0-ndb · e0f2907c
      unknown authored
      into  whalegate.ndb.mysql.com:/home/tomas/mysql-5.1-new-ndb
      
      
      e0f2907c
    • unknown's avatar
      Merge devsrv-b.mysql.com:/data0/gshchepa/mysql-5.0-opt · 1d97c748
      unknown authored
      into  devsrv-b.mysql.com:/data0/gshchepa/mysql-5.1-opt
      
      
      mysql-test/r/select.result:
        Auto merged
      mysql-test/t/select.test:
        Auto merged
      sql/item.cc:
        Auto merged
      sql/share/errmsg.txt:
        Merge with 5.0-opt.
      1d97c748
    • unknown's avatar
      Merge devsrv-b.mysql.com:/users/gshchepa/mysql-5.0-opt · 99c63cff
      unknown authored
      into  devsrv-b.mysql.com:/data0/gshchepa/mysql-5.0-opt
      
      
      99c63cff
    • unknown's avatar
      Merge gshchepa@bk-internal.mysql.com:/users/gshchepa/mysql-5.0-opt · b9f9aa65
      unknown authored
      into  gleb.loc:/home/uchum/work/bk/5.0-opt-27695
      
      
      b9f9aa65
    • unknown's avatar
      Merge gleb.loc:/home/uchum/work/bk/5.0-opt · 9a20ca13
      unknown authored
      into  gleb.loc:/home/uchum/work/bk/5.1-opt
      
      
      9a20ca13
    • unknown's avatar
      Merge gleb.loc:/home/uchum/work/bk/5.1 · a89c768b
      unknown authored
      into  gleb.loc:/home/uchum/work/bk/5.1-opt
      
      
      a89c768b