1. 10 May, 2007 3 commits
  2. 09 May, 2007 4 commits
  3. 08 May, 2007 6 commits
    • unknown's avatar
      Merge epotemkin@bk-internal.mysql.com:/home/bk/mysql-5.0-opt · 18cfcd76
      unknown authored
      into  moonbone.local:/mnt/gentoo64/work/27670-bug-5.0-opt-mysql
      
      18cfcd76
    • unknown's avatar
      Bug#27670: LOAD DATA does not set CURRENT_TIMESTAMP default value for a · dcede16e
      unknown authored
      TIMESTAMP field when no value has been provided.
      
      The LOAD DATA sets the current time in the TIMESTAMP field with
      CURRENT_TIMESTAMP default value when the field is detected as a null.
      But when the LOAD DATA command loads data from a file that doesn't contain
      enough data for all fields then the rest of fields are simply set to null
      without any check. This leads to no value being inserted to such TIMESTAMP
      field.
      
      Now the read_sep_field() and the read_fixed_length() functions set current
      time to the TIMESTAMP field with CURRENT_TIMESTAMP default value in all cases
      when a NULL value is loaded to the field.
      
      
      mysql-test/t/loaddata.test:
        Added a test case for the bug#27670: LOAD DATA does not set CURRENT_TIMESTAMP
        default value for a TIMESTAMP field when no value has been provided.
      mysql-test/r/loaddata.result:
        Added a test case for the bug#27670: LOAD DATA does not set CURRENT_TIMESTAMP
        default value for a TIMESTAMP field when no value has been provided.
      sql/sql_load.cc:
        Bug#27670: LOAD DATA does not set CURRENT_TIMESTAMP default value for a
        TIMESTAMP field when no value has been provided.
        Now the read_sep_field() and the read_fixed_length() functions set current
        time to the TIMESTAMP field with CURRENT_TIMESTAMP default value in all cases
        when a NULL value is loaded to the field.
      dcede16e
    • unknown's avatar
      item_cmpfunc.cc, type_datetime.result, type_datetime.test, item_cmpfunc.h: · 759ebc25
      unknown authored
        After merge fix.
      
      
      sql/item_cmpfunc.cc:
        After merge fix.
      sql/item_cmpfunc.h:
        After merge fix.
      mysql-test/r/type_datetime.result:
        After merge fix.
      mysql-test/t/type_datetime.test:
        After merge fix.
      759ebc25
    • unknown's avatar
      Merge moonbone.local:/mnt/gentoo64/work/bk-trees/mysql-5.0-opt · 26938810
      unknown authored
      into  moonbone.local:/mnt/gentoo64/work/test-5.1-opt-mysql
      
      
      mysql-test/r/func_in.result:
        Auto merged
      mysql-test/r/insert_update.result:
        Auto merged
      mysql-test/r/type_datetime.result:
        Auto merged
      mysql-test/t/insert_update.test:
        Auto merged
      mysql-test/t/type_datetime.test:
        Auto merged
      sql/item_func.cc:
        Auto merged
      sql/handler.cc:
        Manual merge
      sql/item_cmpfunc.cc:
        Manual merge
      sql/item_cmpfunc.h:
        Manual merge
      sql/item_func.h:
        Manual merge
      sql/sql_class.h:
        Manual merge
      26938810
    • unknown's avatar
      Raise version number after cloning 5.1.18-beta · 4613a2ab
      unknown authored
      4613a2ab
    • unknown's avatar
      warning eliminated · dacd0f51
      unknown authored
      dacd0f51
  4. 07 May, 2007 19 commits
    • unknown's avatar
      475b8ee9
    • unknown's avatar
      Merge epotemkin@bk-internal.mysql.com:/home/bk/mysql-5.0-opt · 68b1b66b
      unknown authored
      into  moonbone.local:/mnt/gentoo64/work/27759-bug-5.0-opt-mysql
      
      68b1b66b
    • unknown's avatar
      Additional fix for the bug#27759: Wrong DATE/DATETIME comparison in LEAST()/GREATEST() functions. · b49ab780
      unknown authored
      
      mysql-test/t/type_datetime.test:
        Additional test case for the bug#27759.
      sql/item_func.h:
        Bug#27759: Wrong DATE/DATETIME comparison in LEAST()/GREATEST() functions.
        Now the Item_func_min_max::result_as_longlong() returns TRUE when LEAST()
        compares DATE/DATETIME values. This allows caller to obtain correct integer
        values through the val_int() function.
      b49ab780
    • unknown's avatar
      Merge gleb.loc:/home/uchum/work/bk/mysql-5.0-opt · 64409658
      unknown authored
      into  gleb.loc:/home/uchum/work/bk/mysql-5.0-opt-27954
      
      64409658
    • unknown's avatar
      Merge xiphis.org:/home/antony/work2/mysql-5.1-engines · 1bfcd5b6
      unknown authored
      into  xiphis.org:/home/antony/work2/mysql-5.1-merge
      
      
      mysql-test/mysql-test-run.pl:
        Auto merged
      sql/ha_ndbcluster.cc:
        Auto merged
      sql/item_func.cc:
        Auto merged
      sql/mysql_priv.h:
        Auto merged
      sql/sql_parse.cc:
        Auto merged
      sql/sql_select.cc:
        Auto merged
      1bfcd5b6
    • unknown's avatar
      Fixed bug #27954. · 72142bbe
      unknown authored
      This bug affects multi-row INSERT ... ON DUPLICATE into table
      with PRIMARY KEY of AUTO_INCREMENT field and some additional UNIQUE indices.
      If the first row in multi-row INSERT contains duplicated values of UNIQUE
      indices, then following rows of multi-row INSERT (with either duplicated or
      unique key field values) may me applied to _arbitrary_ records of table as
      updates.
      This bug was introduced in 5.0. Related code was widely rewritten in 5.1, and
      5.1 is already free of this problem. 4.1 was not affected too.
      
      When updating the row during INSERT ON DUPLICATE KEY UPDATE, we called
      restore_auto_increment(), which set next_insert_id back to 0, but we
      forgot to set clear_next_insert_id back to 0.
      restore_auto_increment() function has been fixed.
      
      
      sql/sql_class.h:
        Fixed bug #27954.
        Added commentary for THD::clear_next_insert_id variable.
      sql/handler.cc:
        Fixed bug #27954.
        When updating the row during INSERT ON DUPLICATE KEY UPDATE, we called
        restore_auto_increment(), which set next_insert_id back to 0, but we
        forgot to set clear_next_insert_id back to 0.
        restore_auto_increment() function has been fixed.
      mysql-test/t/insert_update.test:
        Added test case for bug #27954.
      mysql-test/r/insert_update.result:
        Added test case for bug #27954.
      72142bbe
    • unknown's avatar
      Merge epotemkin@bk-internal.mysql.com:/home/bk/mysql-5.0-opt · 3dbf6079
      unknown authored
      into  moonbone.local:/mnt/gentoo64/work/28133-bug-5.0-opt-mysql
      
      
      sql/item_cmpfunc.cc:
        Auto merged
      mysql-test/r/type_datetime.result:
        SCCS merged
      mysql-test/t/type_datetime.test:
        SCCS merged
      3dbf6079
    • unknown's avatar
      Bug#28133: Wrong DATE/DATETIME comparison in IN() function. · 2d9c93ce
      unknown authored
      The IN function was comparing DATE/DATETIME values either as ints or as
      strings. Both methods have their disadvantages and may lead to a wrong
      result.
      
      Now IN function checks whether all of its arguments has the STRING result
      types and at least one of them is a DATE/DATETIME item. If so it uses either
      an object of the in_datetime class or an object of the cmp_item_datetime
      class to perform its work. If the IN() function arguments are rows then
      row columns are checked whether the DATE/DATETIME comparator should be used
      to compare them.
      The in_datetime class is used to find occurence of the item to be checked
      in the vector of the constant DATE/DATETIME values. The cmp_item_datetime
      class is used to compare items one by one in the DATE/DATETIME context.
      Both classes obtain values from items with help of the get_datetime_value()
      function and cache the left item if it is a constant one.
      
      
      
      mysql-test/t/type_datetime.test:
        Added a test case for the bug#28133: Wrong DATE/DATETIME comparison in IN() function.
      mysql-test/r/type_datetime.result:
        Added a test case for the bug#28133: Wrong DATE/DATETIME comparison in IN() function.
      mysql-test/r/func_in.result:
        A test case result is corrected after the fix for the bug#28133.
      sql/item_cmpfunc.h:
        Bug#28133: Wrong DATE/DATETIME comparison in IN() function.
        Two DATE/DATETIME comparison classes are added.
        The in_datetime class is used to find occurence of the item to be checked
        in the vector of the constant DATE/DATETIME values. The cmp_item_datetime
        class is used to compare items one by one in the DATE/DATETIME context.
        Both classes obtain values from items with help of the get_datetime_value()
        function and cache the left item if it is a constant one.
      sql/item_cmpfunc.cc:
        Bug#28133: Wrong DATE/DATETIME comparison in IN() function.
        Now IN function checks whether all of its arguments has the STRING result
        types and at least one of them is a DATE/DATETIME item. If so it uses either
        an object of the in_datetime class or an object of the cmp_item_datetime
        class to perform its work. If the IN() function arguments are rows then
        row columns are checked whether the DATE/DATETIME comparator should be used
        to compare them.
      2d9c93ce
    • unknown's avatar
      item_func.cc: · bfe9139b
      unknown authored
        Fixed compiler warnings.
      
      
      sql/item_func.cc:
        Fixed compiler warnings.
      bfe9139b
    • unknown's avatar
      merging fix · 218af4b7
      unknown authored
      
      mysql-test/r/sp-vars.result:
        merging
      218af4b7
    • unknown's avatar
      Merge mysql.com:/d2/hf/mrg/mysql-5.0-opt · 50f573dc
      unknown authored
      into  mysql.com:/d2/hf/mrg/mysql-5.1-opt
      
      
      sql/item.cc:
        Auto merged
      sql/item.h:
        Auto merged
      sql/item_cmpfunc.cc:
        Auto merged
      sql/item_func.cc:
        Auto merged
      sql/item_subselect.cc:
        Auto merged
      sql/sql_select.cc:
        Auto merged
      mysql-test/r/sp-vars.result:
        merging
      mysql-test/r/type_datetime.result:
        SCCS merged
      mysql-test/t/type_datetime.test:
        SCCS merged
      sql/item_func.h:
        merging
      sql/mysql_priv.h:
        merging
      50f573dc
    • unknown's avatar
      Merge mysql.com:/d2/hf/mrg/mysql-4.1-opt · a2d84899
      unknown authored
      into  mysql.com:/d2/hf/mrg/mysql-5.0-opt
      
      a2d84899
    • unknown's avatar
      Merge bk@192.168.21.1:mysql-5.0 · a0421698
      unknown authored
      into  mysql.com:/d2/hf/mrg/mysql-5.0-opt
      
      
      sql/item_func.cc:
        Auto merged
      sql/item_func.h:
        Auto merged
      sql/mysql_priv.h:
        Auto merged
      a0421698
    • unknown's avatar
      Merge bk@192.168.21.1:mysql-4.1 · 1203f482
      unknown authored
      into  mysql.com:/d2/hf/mrg/mysql-4.1-opt
      
      1203f482
    • unknown's avatar
      Merge bk@192.168.21.1:mysql-5.1 · 69242b91
      unknown authored
      into  mysql.com:/d2/hf/mrg/mysql-5.1-opt
      
      
      sql/ha_ndbcluster.cc:
        Auto merged
      sql/item_func.cc:
        Auto merged
      69242b91
    • unknown's avatar
      Merge whalegate.ndb.mysql.com:/home/tomas/mysql-5.0 · bf7e6b3a
      unknown authored
      into  whalegate.ndb.mysql.com:/home/tomas/mysql-5.0-ndb
      
      bf7e6b3a
    • unknown's avatar
      Merge whalegate.ndb.mysql.com:/home/tomas/mysql-5.0-ndb · 6581a3ea
      unknown authored
      into  whalegate.ndb.mysql.com:/home/tomas/mysql-5.1-single-user
      
      6581a3ea
    • unknown's avatar
      fixed Solaris compilation failure · ee57deae
      unknown authored
      
      sql/field.cc:
        parameters fixed to not interfere with the Field_blob members
      sql/field.h:
        BIGENDIAN machine will require 'table' member. so cannot be static
      ee57deae
    • unknown's avatar
      bug #28005 (Partitions can't use -922337...) · 73d2adfe
      unknown authored
      one more test added
      
      
      mysql-test/r/bigint.result:
        test result
      mysql-test/t/bigint.test:
        testcase
      73d2adfe
  5. 06 May, 2007 1 commit
    • unknown's avatar
      Bug #28005 Partitions: can't use -9223372036854775808 · a7bbdafb
      unknown authored
      the Item_neg changes INT_RESULT with DECIMAL_RESULT when
      it gets this border value, what is not necessary.
      
      
      mysql-test/r/partition.result:
        result added
      mysql-test/t/partition.test:
        testcase
      sql/item_func.cc:
        we can handle '==' case in ordinary way - no need to use DECIMAL_RESULT
      a7bbdafb
  6. 05 May, 2007 1 commit
    • unknown's avatar
      Merge xiphis.org:/home/antony/work2/mysql-5.1-engines · 29aeae5c
      unknown authored
      into  xiphis.org:/home/antony/work2/mysql-5.1-engines.merge
      
      
      include/my_global.h:
        Auto merged
      mysql-test/mysql-test-run.pl:
        Auto merged
      scripts/mysql_install_db.sh:
        Auto merged
      sql/ha_ndbcluster.cc:
        Auto merged
      sql/item_func.cc:
        Auto merged
      sql/item_sum.cc:
        Auto merged
      sql/mysql_priv.h:
        Auto merged
      sql/sql_base.cc:
        Auto merged
      sql/sql_lex.h:
        Auto merged
      sql/sql_parse.cc:
        Auto merged
      sql/sql_select.cc:
        Auto merged
      sql/sql_show.cc:
        Auto merged
      sql/sql_table.cc:
        Auto merged
      sql/sql_yacc.yy:
        Auto merged
      sql/table.cc:
        Auto merged
      sql/table.h:
        Auto merged
      storage/innobase/handler/ha_innodb.cc:
        manual change to new api
      29aeae5c
  7. 04 May, 2007 6 commits
    • unknown's avatar
      WL#2936 · abf268c1
      unknown authored
        Move copying of global variables into thd.variables into plugin_thdvar_init().
        plugin_thdvar_init() may be called multiple times when THD::change_user() is called.
        This fixes a plugin ref-count leak when running the test mysql_client_test
      
      
      sql/sql_class.cc:
        wl2936
          Initialize thd.variables to zero in constructor.
          Move copying of global variables into thd.variables into plugin_thdvar_init()
      sql/sql_plugin.cc:
        wl2936
          Move copying of global variables into thd.variables into plugin_thdvar_init().
          plugin_thdvar_init() may be called multiple times when THD::change_user() is called.
          This fixes a plugin ref-count leak when running the test mysql_client_test
      abf268c1
    • unknown's avatar
      Merge epotemkin@bk-internal.mysql.com:/home/bk/mysql-5.0-opt · 356c2182
      unknown authored
      into  moonbone.local:/mnt/gentoo64/work/27759-bug-5.0-opt-mysql
      
      
      sql/item_func.cc:
        Auto merged
      356c2182
    • unknown's avatar
      bug #27531: · dac64e18
      unknown authored
       fixed coverage of out-of-mem errors
      
      dac64e18
    • unknown's avatar
      bug #27531: 5.1 part of the fix: · e53847f3
      unknown authored
       - added join cache indication in EXPLAIN (Extra column).
       - prefer filesort over full scan over 
         index for ORDER BY (because it's faster).
       - when switching from REF to RANGE because
         RANGE uses longer key turn off sort on
         the head table only as the resulting 
         RANGE access is a candidate for join cache
         and we don't want to disable it by sorting
         on the first table only. 
      
      
      mysql-test/r/archive_gis.result:
        bug #27531: join cache in EXPLAIN
      mysql-test/r/compress.result:
        bug #27531:
         - join cache in EXPLAIN. 
         - prefer filesort over full scan over index for ORDER BY.
      mysql-test/r/ctype_utf8.result:
        bug #27531: join cache in EXPLAIN
      mysql-test/r/derived.result:
        bug #27531: join cache in EXPLAIN
      mysql-test/r/distinct.result:
        bug #27531: join cache in EXPLAIN
      mysql-test/r/func_group.result:
        bug #27531: join cache in EXPLAIN
      mysql-test/r/func_group_innodb.result:
        bug #27531: join cache in EXPLAIN
      mysql-test/r/gis.result:
        bug #27531: join cache in EXPLAIN
      mysql-test/r/greedy_optimizer.result:
        bug #27531: join cache in EXPLAIN
      mysql-test/r/group_by.result:
        bug #27531: join cache in EXPLAIN
      mysql-test/r/group_min_max.result:
        bug #27531: join cache in EXPLAIN
      mysql-test/r/index_merge_myisam.result:
        bug #27531: join cache in EXPLAIN
      mysql-test/r/information_schema.result:
        bug #27531: join cache in EXPLAIN
      mysql-test/r/innodb_gis.result:
        bug #27531: join cache in EXPLAIN
      mysql-test/r/innodb_mysql.result:
        bug #27531: join cache in EXPLAIN
      mysql-test/r/join.result:
        bug #27531: join cache in EXPLAIN
      mysql-test/r/join_nested.result:
        bug #27531: join cache in EXPLAIN
      mysql-test/r/key_diff.result:
        bug #27531: join cache in EXPLAIN
      mysql-test/r/myisam.result:
        bug #27531: join cache in EXPLAIN
      mysql-test/r/ndb_condition_pushdown.result:
        bug #27531: join cache in EXPLAIN
      mysql-test/r/ndb_gis.result:
        bug #27531: join cache in EXPLAIN
      mysql-test/r/range.result:
        bug #27531: join cache in EXPLAIN
      mysql-test/r/row.result:
        bug #27531: join cache in EXPLAIN
      mysql-test/r/select.result:
        bug #27531:
         - join cache in EXPLAIN.
         - prefer filesort over full scan over index for ORDER BY.
      mysql-test/r/ssl.result:
        bug #27531:
         - join cache in EXPLAIN.
         - prefer filesort over full scan over index for ORDER BY.
      mysql-test/r/ssl_compress.result:
        bug #27531:
         - join cache in EXPLAIN.
         - prefer filesort over full scan over index for ORDER BY.
      mysql-test/r/subselect.result:
        bug #27531: join cache in EXPLAIN
      mysql-test/r/subselect3.result:
        bug #27531: join cache in EXPLAIN
      mysql-test/r/union.result:
        bug #27531: join cache in EXPLAIN
      mysql-test/r/view.result:
        bug #27531: join cache in EXPLAIN
      sql/sql_select.cc:
        bug #27531:
         - join cache in EXPLAIN.
         - prefer filesort over full scan over
           index for ORDER BY.
         - disable sorting on the first table only
           when switching from REF to RANGE.
      e53847f3
    • unknown's avatar
      Bug#27759: Wrong DATE/DATETIME comparison in LEAST()/GREATEST() functions. · 435d728e
      unknown authored
      The LEAST/GREATEST functions compared DATE/DATETIME values as
      strings which in some cases could lead to a wrong result.
      
      A new member function called cmp_datetimes() is added to the
      Item_func_min_max class. It compares arguments in DATETIME context
      and returns index of the least/greatest argument.
      The Item_func_min_max::fix_length_and_dec() function now detects when
      arguments should be compared in DATETIME context and sets the newly
      added flag compare_as_dates. It indicates that the cmp_datetimes() function
      should be called to get a correct result.
      Item_func_min_max::val_xxx() methods are corrected to call the
      cmp_datetimes() function when needed.
      Objects of the Item_splocal class now stores and reports correct original
      field type.
      
      
      mysql-test/t/type_datetime.test:
        Added a test case for the bug#27759: Wrong DATE/DATETIME comparison in LEAST()/GREATEST() functions.
      mysql-test/r/type_datetime.result:
        Added a test case for the bug#27759: Wrong DATE/DATETIME comparison in LEAST()/GREATEST() functions.
      mysql-test/r/sp-vars.result:
        A test case result corrected after the fix for the bug#27759.
      sql/mysql_priv.h:
        Bug#27759: Wrong DATE/DATETIME comparison in LEAST()/GREATEST() functions.
        Added the prototype of the get_datetime_value() function.
      sql/item_func.h:
        Bug#27759: Wrong DATE/DATETIME comparison in LEAST()/GREATEST() functions.
        A new member function called cmp_datetimes() is added to the
        Item_func_min_max class.
      sql/item_func.cc:
        Bug#27759: Wrong DATE/DATETIME comparison in LEAST()/GREATEST() functions.
        A new member function called cmp_datetimes() is added to the
        Item_func_min_max class. It compares arguments in DATETIME context
        and returns index of the least/greatest argument.
        The Item_func_min_max::fix_length_and_dec() function now detects when
        arguments should be compared in DATETIME context and sets the newly
        added flag compare_as_dates. It indicates that the cmp_datetimes() function
        should be called to get a correct result.
        Item_func_min_max::val_xxx() methods are corrected to call the
        cmp_datetimes() function when needed.
      sql/item_cmpfunc.cc:
        Bug#27759: Wrong DATE/DATETIME comparison in LEAST()/GREATEST() functions.
        The get_datetime_value() function is no longer static.
      sql/item.h:
        Bug#27759: Wrong DATE/DATETIME comparison in LEAST()/GREATEST() functions.
        Objects of the Item_splocal class now stores and reports correct original
        field type.
      sql/item.cc:
        Bug#27759: Wrong DATE/DATETIME comparison in LEAST()/GREATEST() functions.
        Objects of the Item_splocal class now stores and reports correct original
        field type.
      435d728e
    • unknown's avatar
      Merge magare.gmz:/home/kgeorge/mysql/work/B27531-5.0-opt · c8878433
      unknown authored
      into  magare.gmz:/home/kgeorge/mysql/work/B27531-5.1-opt-after-merge
      
      
      mysql-test/r/join.result:
        Auto merged
      mysql-test/t/join.test:
        Auto merged
      sql/sql_select.cc:
        Auto merged
      c8878433