1. 16 Feb, 2007 5 commits
    • unknown's avatar
      Adjusted results after fix for bug 25971. · 6a5697ad
      unknown authored
      6a5697ad
    • unknown's avatar
      Adjusted results after fix for bug 25971. · ff112bb9
      unknown authored
      ff112bb9
    • unknown's avatar
      Merge ibabaev@bk-internal.mysql.com:/home/bk/mysql-5.0-opt · a596150a
      unknown authored
      into  olga.mysql.com:/home/igor/mysql-5.0-opt
      
      
      sql/sql_select.cc:
        Auto merged
      a596150a
    • unknown's avatar
      Merge epotemkin@bk-internal.mysql.com:/home/bk/mysql-5.0-opt · 70cadbd7
      unknown authored
      into  moonbone.local:/mnt/gentoo64/work/16630-bug-5.0-opt-mysql
      
      
      sql/item.cc:
        Auto merged
      sql/sql_select.cc:
        Auto merged
      70cadbd7
    • unknown's avatar
      Bug#16630: The update fields of the INSERT .. SELECT .. ON DUPLICATE KEY · 757ae6e1
      unknown authored
      UPDATE contains wrong data if the SELECT employs a temporary table.
      
      If the UPDATE values of the INSERT .. SELECT .. ON DUPLICATE KEY UPDATE
      statement contains fields from the SELECT part and the select employs a
      temporary table then those fields will contain wrong values because they
      aren't corrected to get data from the temporary table.
      
      The solution is to add these fields to the selects all_fields list,
      to store pointers to those fields in the selects ref_pointer_array and
      to access them via Item_ref objects.
      
      The substitution for Item_ref objects is done in the new function called 
      Item_field::update_value_transformer(). It is called through the
      item->transform() mechanism at the end of the select_insert::prepare()
      function.
      
      
      sql/item.cc:
        Bug#16630: The update fields of the INSERT .. SELECT .. ON DUPLICATE KEY
        UPDATE contains wrong data if the SELECT employs a temporary table.
        The new method Item_field::update_value_transformer() is added. It
        substitutes fields in the update values list for references 
        (Item_ref objects) to them.
      sql/item.h:
        Bug#16630: The update fields of the INSERT .. SELECT .. ON DUPLICATE KEY
        UPDATE contains wrong data if the SELECT employs a temporary table.
        The update_value_transformer() method is added to the Item and to the
        Item_field classes.
      sql/sql_insert.cc:
        Bug#16630: The update fields of the INSERT .. SELECT .. ON DUPLICATE KEY
        UPDATE contains wrong data if the SELECT employs a temporary table.
        Traverse update values and substitute fields from the select for
        references (Item_ref objects) to them.
      sql/sql_select.cc:
        Bug#16630: The update fields of the INSERT .. SELECT .. ON DUPLICATE KEY
        UPDATE contains wrong data if the SELECT employs a temporary table.
        Traverse update values and substitute fields from the select for
        references (Item_ref objects) to them.
      mysql-test/r/insert_select.result:
        Added a test case for bug#16630: The update fields of the INSERT .. SELECT ..
        ON DUPLICATE KEY UPDATE contains wrong data if the SELECT employs a 
        temporary table.
      mysql-test/t/insert_select.test:
        Added a test case for bug#16630: The update fields of the INSERT .. SELECT ..
        ON DUPLICATE KEY UPDATE contains wrong data if the SELECT employs a 
        temporary table.
      757ae6e1
  2. 15 Feb, 2007 1 commit
    • unknown's avatar
      Fixed bug #25971: indexes on text columns were ignored when ref accesses · 17fc7890
      unknown authored
      were evaluated.
      According to the new rules for string comparison partial indexes on text
      columns can be used in the same cases when partial indexes on varchar
      columns can be used.
      
      
      mysql-test/r/endspace.result:
        Adjusted results after the fix for bug #25971.
      mysql-test/r/innodb.result:
        Adjusted results after the fix for bug #25971.
      mysql-test/r/myisam.result:
        Adjusted results after the fix for bug #25971.
      mysql-test/r/select.result:
        Added a test case for bug #25971.
      mysql-test/r/type_blob.result:
        Adjusted results after the fix for bug #25971.
      mysql-test/t/select.test:
        Added a test case for bug #25971.
      17fc7890
  3. 13 Feb, 2007 5 commits
    • unknown's avatar
      Post-merge fix · 5ecad9a5
      unknown authored
      5ecad9a5
    • unknown's avatar
      Merge bk-internal.mysql.com:/data0/bk/mysql-5.0 · cfe1a891
      unknown authored
      into  bk-internal.mysql.com:/data0/bk/mysql-5.0-opt
      
      
      BitKeeper/etc/gone:
        auto-union
      mysys/my_getopt.c:
        Auto merged
      sql/field.h:
        Auto merged
      sql/item.cc:
        Auto merged
      sql/item_cmpfunc.cc:
        Auto merged
      sql/item_cmpfunc.h:
        Auto merged
      sql/mysql_priv.h:
        Auto merged
      sql/sql_prepare.cc:
        Auto merged
      sql/sql_select.cc:
        Auto merged
      sql/table.cc:
        Auto merged
      mysql-test/r/select.result:
        Manual merge
      mysql-test/t/select.test:
        Manual merge
      cfe1a891
    • unknown's avatar
      Merge pilot.mysql.com:/home/msvensson/mysql/mysql-5.0 · f72e6447
      unknown authored
      into  pilot.mysql.com:/home/msvensson/mysql/mysql-5.0-maint
      
      
      BitKeeper/etc/ignore:
        auto-union
      f72e6447
    • unknown's avatar
      Merge pilot.mysql.com:/home/msvensson/mysql/mysql-4.1-maint · 457d4d6b
      unknown authored
      into  pilot.mysql.com:/home/msvensson/mysql/mysql-5.0-maint
      
      
      BitKeeper/etc/gone:
        auto-union
      mysys/my_getopt.c:
        Auto merged
      sql/sql_prepare.cc:
        Auto merged
      sql/table.cc:
        Auto merged
      457d4d6b
    • unknown's avatar
      Merge olga.mysql.com:/home/igor/mysql-5.0-opt · 147a8485
      unknown authored
      into  olga.mysql.com:/home/igor/dev-opt/mysql-5.0-opt-bug26209
      
      
      sql/sql_select.cc:
        Auto merged
      147a8485
  4. 12 Feb, 2007 16 commits
    • unknown's avatar
      Merge mysql.com:/home/hf/work/20691/my50-20691 · 557e4709
      unknown authored
      into  mysql.com:/home/hf/work/25492/my50-25492
      
      
      sql/item.cc:
        Auto merged
      557e4709
    • unknown's avatar
      Merge bk@192.168.21.1:mysql-5.0-opt · 72748ac7
      unknown authored
      into  mysql.com:/home/hf/work/25492/my50-25492
      
      72748ac7
    • unknown's avatar
      Merge mysql.com:/home/hf/work/25492/my41-25492 · f5162a11
      unknown authored
      into  mysql.com:/home/hf/work/25492/my50-25492
      
      
      libmysqld/lib_sql.cc:
        merging
      f5162a11
    • unknown's avatar
      bug #25492 (Invalid deallocation in mysql_stmt_fetch) · 07efefd2
      unknown authored
      
      libmysqld/lib_sql.cc:
        code modified to prevent freeing of memory that wasn't malloc-ed.
        Now we check if MYSQL_STMT::result was used.
      07efefd2
    • unknown's avatar
      Merge mysql.com:/home/gluh/MySQL/Merge/5.0 · 9f1c12ac
      unknown authored
      into  mysql.com:/home/gluh/MySQL/Merge/5.0-opt
      
      9f1c12ac
    • unknown's avatar
      Merge sgluhov@bk-internal.mysql.com:/home/bk/mysql-5.0-opt · 8e153eba
      unknown authored
      into  mysql.com:/home/gluh/MySQL/Merge/5.0-opt
      
      8e153eba
    • unknown's avatar
      valgrind error fix · b70ae8b4
      unknown authored
      b70ae8b4
    • unknown's avatar
      Fixed MacOSX/Intel linking problem · 854015a0
      unknown authored
       Common symbols with and without initialization
       cause the apple linker to exclude then from the
       list of global symbols.
      
      854015a0
    • unknown's avatar
      Merge tnurnberg@bk-internal.mysql.com:/home/bk/mysql-5.0-maint · 745b5b99
      unknown authored
      into  mysql.com:/home/tnurnberg/24660/50-24660
      
      
      sql/table.cc:
        Auto merged
      sql/unireg.cc:
        Auto merged
      745b5b99
    • unknown's avatar
      Merge tnurnberg@bk-internal.mysql.com:/home/bk/mysql-4.1-maint · 18dc6317
      unknown authored
      into  mysql.com:/home/tnurnberg/24660/41-24660
      
      
      sql/table.cc:
        Auto merged
      18dc6317
    • unknown's avatar
      Merge mysql.com:/home/tnurnberg/24660/41-24660 · 8b5e1c86
      unknown authored
      into  mysql.com:/home/tnurnberg/24660/50-24660
      
      
      mysql-test/r/type_enum.result:
        Auto merged
      sql/table.cc:
        Auto merged
      sql/unireg.cc:
        Auto merged
      8b5e1c86
    • unknown's avatar
      Bug#24660: "enum" field type definition problem · 7ca628c6
      unknown authored
      ENUMs weren't allowed to have character 0xff, a perfectly good character in some locales.
      This was circumvented by mapping 0xff in ENUMs to ',', thereby prevent actual commas from
      being used. Now if 0xff makes an appearance, we find a character not used in the enum and
      use that as a separator. If no such character exists, we throw an error.
      
      Any solution would have broken some sort of existing behaviour. This solution should
      serve both fractions (those with 0xff and those with ',' in their enums), but
      WILL REQUIRE A DUMP/RESTORE CYCLE FROM THOSE WITH 0xff IN THEIR ENUMS. :-/
      That is, mysqldump with their current server, and restore when upgrading to one with
      this patch.
      
      
      mysql-test/r/type_enum.result:
        Bug#24660: "enum" field type definition problem
        
        Show that enums can now contain NAMES_SEP_CHAR (0xff, which is a perfectly respectable
        char in some locales), or ',', or both.
      mysql-test/t/type_enum.test:
        Bug#24660: "enum" field type definition problem
        
        Show that enums can now contain NAMES_SEP_CHAR (0xff, which is a perfectly respectable
        char in some locales), or ',', or both.
      sql/table.cc:
        Bug#24660: "enum" field type definition problem
        
        Revert fix for Bug#20922.
      sql/unireg.cc:
        Bug#24660: "enum" field type definition problem
        
        Use a field-separator for ENUM-values that is not part of those values. If impossible,
        throw error.
      7ca628c6
    • unknown's avatar
      Bug#24630 Subselect query crashes mysqld · b35801de
      unknown authored
      The crash happens because second filling of the same I_S table happens in
      case of subselect with order by. table->sort.io_cache previously allocated
      in create_sort_index() is deleted during second filling
      (function get_schema_tables_result). There are two places where
      I_S table can be filled: JOIN::exec and create_sort_index().
      To fix the bug we should check if the table was already filled
      in one of these places and skip processing of the table in second.
      
      
      mysql-test/r/information_schema.result:
        test case
      mysql-test/t/information_schema.test:
        test case
      sql/mysql_priv.h:
        added new parameter 'executed_place' to function get_schema_tables_result()
      sql/sql_select.cc:
        added new parameter 'executed_place' to function get_schema_tables_result()
      sql/sql_show.cc:
        added more accurate check for cases when we need to refresh I_S table
      sql/table.cc:
        added more accurate check for cases when we need to refresh I_S table
      sql/table.h:
        added more accurate check for cases when we need to refresh I_S table
      b35801de
    • unknown's avatar
      bug #20691 (INSERT (DEFAULT) may insert garbage with NO DEFAULT NOT NULL field) · 7ed652e0
      unknown authored
      Some fields (GEOMETRY first of all) can't be handled properly in this
      case at all. So we return an error in this case
      
      
      mysql-test/r/default.result:
        result fixed
      mysql-test/r/gis.result:
        result fixed
      mysql-test/t/default.test:
        VIEW test added
      mysql-test/t/gis.test:
        testcase added
      sql/item.cc:
        set_defaults() changed with the 'reset()'
      7ed652e0
    • unknown's avatar
      Merge olga.mysql.com:/home/igor/mysql-5.0-opt · 68fbbbf1
      unknown authored
      into  olga.mysql.com:/home/igor/dev-opt/mysql-5.0-opt-bug26159
      
      68fbbbf1
    • unknown's avatar
      Fixed bug #26209. · 3ec35ab0
      unknown authored
      The function make_unireg_sortorder ignored the fact that any
      view field is represented by a 'ref' object.
      This could lead to wrong results for the queries containing
      both GROUP BY and ORDER BY clauses.
      
      
      mysql-test/r/view.result:
        Added a test case for bug #26209.
      mysql-test/t/view.test:
        Added a test case for bug #26209.
      3ec35ab0
  5. 11 Feb, 2007 3 commits
    • unknown's avatar
      sql_view.cc: · 56baa89b
      unknown authored
        Post fix for bug#12122.
      information_schema.result:
        Corrected test case after fixing bug#12122.
      
      
      sql/sql_view.cc:
        Post fix for bug#12122.
      mysql-test/r/information_schema.result:
        Corrected test case after fixing bug#12122.
      56baa89b
    • unknown's avatar
      Merge epotemkin@bk-internal.mysql.com:/home/bk/mysql-5.0-opt · 537de83a
      unknown authored
      into  moonbone.local:/mnt/gentoo64/work/12122-bug-5.0-opt-mysql
      
      537de83a
    • unknown's avatar
      Fixed bug #26159. · c30ebf55
      unknown authored
      A wrong order of statements in QUICK_GROUP_MIN_MAX_SELECT::reset
      caused a crash when a query with DISTINCT was executed by a loose scan
      for an InnoDB table that had been emptied. 
      
      
      mysql-test/r/innodb_mysql.result:
        Added a test case for bug #26159.
      mysql-test/t/innodb_mysql.test:
        Added a test case for bug #26159.
      sql/opt_range.cc:
        Fixed bug #26159.
        A wrong order of statements in QUICK_GROUP_MIN_MAX_SELECT::reset
        caused a crash when a query with DISTINCT was executed by a loose scan
        for an InnoDB table that had been emptied. 
        For an empty table quick_prefix_select->reset() was not called at all
        and thus some important initialization steps were missing.
      c30ebf55
  6. 09 Feb, 2007 7 commits
    • unknown's avatar
      Bug#12122: The MERGE algorithm isn't applicable if the ORDER BY clause is · 94032c61
      unknown authored
      present.
      
      A view created with CREATE VIEW ... ORDER BY ... cannot be resolved with
      the MERGE algorithm, even when no other part of the CREATE VIEW statement
      would require the view to be resolved using the TEMPTABLE algorithm.
      
      The check for presence of the ORDER BY clause in the underlying select is 
      removed from the st_lex::can_be_merged() function.
      The ORDER BY list of the underlying select is appended to the ORDER BY list 
      
      
      mysql-test/t/view.test:
        Added a test case for bug#12122: Views with ORDER BY can't be resolved using MERGE algorithm.
      mysql-test/r/view.result:
        Added a test case for bug#12122: Views with ORDER BY can't be resolved using MERGE algorithm.
      sql/sql_lex.cc:
        Bug#12122: Views with ORDER BY can't be resolved using MERGE algorithm.
        The st_lex::can_be_merged() function now allows views with the ORDER BY
        clause to be resolved using MERGE algorithm. The ORDER BY list of the view 
        is appended to the ORDER BY list of the embedding select.
      94032c61
    • unknown's avatar
      Merge olga.mysql.com:/home/igor/mysql-5.0-opt · 854f45ef
      unknown authored
      into  olga.mysql.com:/home/igor/dev-opt/mysql-5.0-opt-bug26017
      
      854f45ef
    • unknown's avatar
      Fixed bug #26017. · 1ba8ec70
      unknown authored
      Objects of the class Item_equal contain an auxiliary member
      eval_item of the type cmp_item that is used only for direct 
      evaluation of multiple equalities. Currently a multiple equality
      is evaluated directly only in the cases when the equality holds
      at most for one row in the result set.
      The compare collation of eval_item was determined incorectly.
      It could lead to returning incorrect results for some queries.
      
      
      mysql-test/r/join_outer.result:
        Added a test case for bug #26017.
      mysql-test/t/join_outer.test:
        Added a test case for bug #26017.
      sql/item_cmpfunc.cc:
        Fixed bug #26017.
        Objects of the class Item_equal contain an auxiliary member
        eval_item of the type cmp_item that is used only for direct 
        evaluation of multiple equalities. Currently a multiple equality
        is evaluated directly only in the cases when the equality holds
        at most for one row in the result set.
        The compare collation of eval_item was determined incorrectly.
        It could lead to returning incorrect results for some queries.
      sql/item_cmpfunc.h:
        Fixed bug #26017.
        Removed the cmp_collation member from the Item_equal class as useless
        for the current implementation of the class.
      1ba8ec70
    • unknown's avatar
      Bug#23170: LAST_INSERT_ID isn't reset to 0 in INSERT .. SELECT when no rows were · 27481649
      unknown authored
      inserted.
      
      The select_insert::send_eof() function now resets LAST_INSERT_ID variable if
      no rows were inserted.
      
      
      mysql-test/t/insert_select.test:
        Added a test case for bug#23170: LAST_INSERT_ID isn't reset to 0 in INSERT .. SELECT when no rows were inserted.
      mysql-test/r/insert_select.result:
        Added a test case for bug#23170: LAST_INSERT_ID isn't reset to 0 in INSERT .. SELECT when no rows were inserted.
      sql/sql_insert.cc:
        Bug#23170: LAST_INSERT_ID isn't reset to 0 in INSERT .. SELECT when no rows were
        inserted.The select_insert::send_eof() function now resets LAST_INSERT_ID variable if
        no rows were inserted.
      27481649
    • unknown's avatar
      Merge trift2.:/MySQL/M50/mysql-5.0 · f0557ca8
      unknown authored
      into  trift2.:/MySQL/M50/push-5.0
      
      f0557ca8
    • unknown's avatar
      Merge bk-internal:/home/bk/mysql-5.0-opt · d7798f8d
      unknown authored
      into  macbook.gmz:/Users/kgeorge/mysql/work/B22344-5.0-opt
      
      d7798f8d
    • unknown's avatar
      8f31da3c
  7. 08 Feb, 2007 3 commits