1. 30 Jan, 2007 2 commits
    • unknown's avatar
      Merge olga.mysql.com:/home/igor/dev-opt/mysql-4.1-opt-bug24987 · 7ebda36c
      unknown authored
      into  olga.mysql.com:/home/igor/dev-opt/mysql-5.0-opt-bug24987
      
      
      sql/opt_sum.cc:
        Auto merged
      sql/sql_select.cc:
        Manual merge
      7ebda36c
    • unknown's avatar
      Fixed bug #24987. · 396025b0
      unknown authored
      Made the function opt_sum_query to return HA_ERR_KEY_NOT_FOUND when
      no matches were found (instead of -1 it returned prior this patch).
      This changes allow us to avoid possible conflicts with return values
      from user-defined handler methods which also may return -1. 
      No particular test cases are provided with this fix.
      
      
      sql/opt_sum.cc:
        Fixed bug #24987.
        Made the function opt_sum_query to return HA_ERR_KEY_NOT_FOUND when
        no matches were found (instead of -1 it returned prior this patch).
        This changes allow us to avoid possible conflicts with return values
        from user-defined handler methods which also may return -1.
      sql/sql_select.cc:
        Fixed bug #24987.
        Made the function opt_sum_query to return HA_ERR_KEY_NOT_FOUND when
        no matches were found (instead of -1 it returned prior this patch).
        This changes allow us to avoid possible conflicts with return values
        from user-defined handler methods which also may return -1.
      396025b0
  2. 27 Jan, 2007 1 commit
    • unknown's avatar
      Fixed bug #24420. · 30161731
      unknown authored
      Objects of the classes Item_func_is_not_null_test and Item_func_trig_cond
      must be transparent for the method Item::split_sum_func2 as these classes
      are pure helpers. It means that the method Item::split_sum_func2 should
      look at those objects as at pure wrappers.
      
      
      mysql-test/r/subselect3.result:
        Added a test case for bug #24420.
      mysql-test/t/subselect3.test:
        Added a test case for bug #24420.
      30161731
  3. 26 Jan, 2007 5 commits
    • unknown's avatar
      Merge olga.mysql.com:/home/igor/mysql-5.0-opt · 0e5890e1
      unknown authored
      into  olga.mysql.com:/home/igor/dev-opt/mysql-5.0-opt-bug24653
      
      
      sql/item.h:
        Auto merged
      0e5890e1
    • unknown's avatar
      Merge mysql.com:/home/gluh/MySQL/Merge/5.0-opt · 8b12f20a
      unknown authored
      into  mysql.com:/home/gluh/MySQL/Merge/5.0
      
      
      sql/item.h:
        Auto merged
      sql/sql_table.cc:
        Auto merged
      sql/sql_update.cc:
        Auto merged
      8b12f20a
    • unknown's avatar
      Post merge fix · 9c70d40a
      unknown authored
      9c70d40a
    • unknown's avatar
      Merge olga.mysql.com:/home/igor/dev-opt/mysql-4.1-opt-bug24653 · a0d5ced4
      unknown authored
      into  olga.mysql.com:/home/igor/dev-opt/mysql-5.0-opt-bug24653
      
      
      sql/item.cc:
        Auto merged
      sql/item.h:
        Auto merged
      sql/item_cmpfunc.cc:
        Auto merged
      sql/item_func.cc:
        Auto merged
      sql/sql_select.cc:
        Auto merged
      mysql-test/r/subselect.result:
        Manual merge
      mysql-test/t/subselect.test:
        Manual merge
      sql/filesort.cc:
        Manual merge
      sql/item_cmpfunc.h:
        Manual merge
      sql/item_subselect.cc:
        Manual merge
      a0d5ced4
    • unknown's avatar
      Fixed bug #24653. · 78c3a85d
      unknown authored
      The bug report has demonstrated the following two problems.
      1. If an ORDER/GROUP BY list includes a constant expression being 
      optimized away and, at the same time, containing single-row
      subselects that return more that one row, no error is reported.
      Strictly speaking the standard allows to ignore error in this case.
      Yet, now a corresponding fatal error is reported in this case.
      2. If a query requires sorting by expressions containing single-row
      subselects that, however, return more than one row, then the execution
      of the query may cause a server crash. 
      To fix this some code has been added that blocks execution of a subselect
      item in case of a fatal error in the method Item_subselect::exec.
      
      
      mysql-test/r/subselect.result:
        Added a test cases for bug #24653.
      mysql-test/t/subselect.test:
        Added a test cases for bug #24653.
      sql/filesort.cc:
        Fixed bug #24653.
        Added a check for fatal error after reading the next row from the table
        in the function find_all_keys.
      sql/item.cc:
        Fixed bug #24653.
        Down-ported calculation of the attribute with_subselect of for Item objects.
      sql/item.h:
        Fixed bug #24653.
        Down-ported calculation of the attribute with_subselect of for Item objects.
      sql/item_cmpfunc.cc:
        Fixed bug #24653.
        Down-ported calculation of the attribute with_subselect of for Item objects.
      sql/item_cmpfunc.h:
        Fixed bug #24653.
        Down-ported calculation of the attribute with_subselect of for Item objects.
      sql/item_func.cc:
        Fixed bug #24653.
        Down-ported calculation of the attribute with_subselect of for Item objects.
      sql/item_subselect.cc:
        Fixed bug #24653.
        Added a check for fatal error in the method Item_subselect::exec
        to block evaluation of subselects in erroneous situations.
        Down-ported calculation of the attribute with_subselect of for Item objects.
      sql/sql_select.cc:
        Fixed bug #24653.
        Added a check to verify that any constant expression used
        in ORDER BY and/or GROUP BY lists which is optimized away
        does not contain subselects returning more than one row.
        If it does a fatal error is reported.
      78c3a85d
  4. 25 Jan, 2007 1 commit
  5. 24 Jan, 2007 22 commits
  6. 23 Jan, 2007 9 commits
    • unknown's avatar
      Merge bk-internal.mysql.com:/home/bk/mysql-4.1-engines · f15a904b
      unknown authored
      into  chilla.local:/home/mydev/mysql-4.1-bug24607
      
      
      mysql-test/r/myisam.result:
        Auto merged
      mysql-test/t/myisam.test:
        Auto merged
      f15a904b
    • unknown's avatar
      Merge bk-internal.mysql.com:/home/bk/mysql-5.0-engines · 39fe8028
      unknown authored
      into  chilla.local:/home/mydev/mysql-5.0-bug24607
      
      
      mysql-test/r/myisam.result:
        Auto merged
      mysql-test/t/myisam.test:
        Auto merged
      39fe8028
    • unknown's avatar
      Post-merge fix. · e8d76cbf
      unknown authored
      e8d76cbf
    • unknown's avatar
      Merge olga.mysql.com:/home/igor/mysql-4.1-opt · cbffd378
      unknown authored
      into  olga.mysql.com:/home/igor/mysql-5.0-opt
      
      
      mysql-test/r/fulltext_left_join.result:
        Auto merged
      mysql-test/t/fulltext_left_join.test:
        Auto merged
      sql/item_func.cc:
        Auto merged
      cbffd378
    • unknown's avatar
      Merge pnousiainen@bk-internal.mysql.com:/home/bk/mysql-5.0-ndb · 4ac671d7
      unknown authored
      into  clam.ndb.mysql.com:/export/space/pekka/ndb/version/my50-ndb
      
      4ac671d7
    • unknown's avatar
      Merge willster.(none):/home/stewart/Documents/MySQL/5.0/ndb · 65bc609c
      unknown authored
      into  willster.(none):/home/stewart/Documents/MySQL/5.0/bug25487
      
      65bc609c
    • unknown's avatar
      Merge bk-internal.mysql.com:/home/bk/mysql-5.0-runtime · 41464df8
      unknown authored
      into  mockturtle.local:/home/dlenev/src/mysql-5.0-bg24491
      
      
      sql/item.h:
        Auto merged
      mysql-test/r/ps.result:
        Manual merge.
      mysql-test/t/ps.test:
        Manual merge.
      41464df8
    • unknown's avatar
      Merge mysql.com:/home/svoj/devel/mysql/BUG24401/mysql-4.1-engines · 18a678c0
      unknown authored
      into  mysql.com:/home/svoj/devel/mysql/BUG24401/mysql-5.0-engines
      
      
      myisam/mi_open.c:
        Auto merged
      18a678c0
    • unknown's avatar
      Proposed fix for bug#24491 "using alias from source table in insert ... · e81b9738
      unknown authored
      on duplicate key".
      
      INSERT ... SELECT ... ON DUPLICATE KEY UPDATE which was used in
      stored routine or as prepared statement and which in its ON DUPLICATE
      KEY clause erroneously tried to assign value to a column mentioned only
      in its SELECT part was properly emitting error on the first execution
      but succeeded on the second and following executions.
      
      Code which is responsible for name resolution of fields mentioned in
      UPDATE clause (e.g. see select_insert::prepare()) modifies table list
      and Name_resolution_context used in this process. It uses
      Name_resolution_context_state::save_state/restore_state() to revert
      these modifications. Unfortunately those two methods failed to revert
      properly modifications to TABLE_LIST::next_name_resolution_table
      and this broke name resolution process for successive executions.
      
      This patch fixes Name_resolution_context_state::save_state/restore_state()
      in such way that it properly handles TABLE_LIST::next_name_resolution_table.
      
      
      mysql-test/r/ps.result:
        Added test case for bug#24491 "using alias from source table in insert ...
        on duplicate key"
      mysql-test/r/sp-error.result:
        Added test case for bug#24491 "using alias from source table in insert ...
        on duplicate key"
      mysql-test/t/ps.test:
        Added test case for bug#24491 "using alias from source table in insert ...
        on duplicate key"
      mysql-test/t/sp-error.test:
        Added test case for bug#24491 "using alias from source table in insert ...
        on duplicate key"
      sql/item.h:
        Name_resolution_context::save_state/restore_state():
          At the moment these methods are used only by code implementing
          INSERT and INSERT ... SELECT statements. This code doesn't modify
         'next_name_resolution_table' member of table list element
          corresponding to the first table of SELECT clause (pointed by
          'first_name_resolution_table'). But it modifies table list element
          corresponding to the target table of INSERT (pointed by 'table_list')
          So these methods were changed to reflect this.
      e81b9738