1. 02 Oct, 2006 3 commits
    • unknown's avatar
      Fix after manual merge: add tests from 5.0. · d224f221
      unknown authored
      
      mysql-test/extra/rpl_tests/rpl_insert_id.test:
        Add test case for bug#21726: Incorrect result with multiple invocations
        of LAST_INSERT_ID, and 5.0 version of test case for bug#20339: stored
        procedure using LAST_INSERT_ID() does not replicate statement-based.
      mysql-test/r/rpl_insert_id.result:
        Update result.
      d224f221
    • unknown's avatar
      Merge moonlight.intranet:/home/tomash/src/mysql_ab/mysql-5.0-real-bug21726 · 43ed7433
      unknown authored
      into  moonlight.intranet:/home/tomash/src/mysql_ab/mysql-5.1-real-bug21726
      
      
      mysql-test/t/rpl_insert_id.test:
        Use local.
      sql/item_func.cc:
        Use local.
      sql/item_func.h:
        Use local.
      sql/log_event.cc:
        SCCS merged
      sql/set_var.cc:
        Use local.
      sql/sql_class.h:
        Use local.
      sql/sql_insert.cc:
        Use local.
      sql/sql_load.cc:
        Use local.
      sql/sql_parse.cc:
        Use local.
      sql/sql_select.cc:
        Use local.
      sql/sql_update.cc:
        Use local.
      mysql-test/r/rpl_insert_id.result:
        Use local.
      sql/sql_class.cc:
        Manual merge.  Add comment for THD::cleanup_after_query().
      tests/mysql_client_test.c:
        Manual merge.  Add test case for bug#21726: Incorrect result with
        multiple invocations of LAST_INSERT_ID.
      43ed7433
    • unknown's avatar
      BUG#21726: Incorrect result with multiple invocations of LAST_INSERT_ID · be929087
      unknown authored
      Non-upper-level INSERTs (the ones in the body of stored procedure,
      stored function, or trigger) into a table that have AUTO_INCREMENT
      column didn't affected the result of LAST_INSERT_ID() on this level.
      
      The problem was introduced with the fix of bug 6880, which in turn was
      introduced with the fix of bug 3117, where current insert_id value was
      remembered on the first call to LAST_INSERT_ID() (bug 3117) and was
      returned from that function until it was reset before the next
      _upper-level_ statement (bug 6880).
      
      The fix for bug#21726 brings back the behaviour of version 4.0, and
      implements the following: remember insert_id value at the beginning
      of the statement or expression (which at that point equals to
      the first insert_id value generated by the previous statement), and
      return that remembered value from LAST_INSERT_ID() or @@LAST_INSERT_ID.
      
      Thus, the value returned by LAST_INSERT_ID() is not affected by values
      generated by current statement, nor by LAST_INSERT_ID(expr) calls in
      this statement.
      
      Version 5.1 does not have this bug (it was fixed by WL 3146).
      
      
      mysql-test/r/rpl_insert_id.result:
        Add results for bug#21726: Incorrect result with multiple invocations
        of LAST_INSERT_ID, and bug#20339: stored procedure using LAST_INSERT_ID()
        does not replicate statement-based.
      mysql-test/t/rpl_insert_id.test:
        Add test cases for bug#21726: Incorrect result with multiple invocations
        of LAST_INSERT_ID, and bug#20339: stored procedure using LAST_INSERT_ID()
        does not replicate statement-based.
      sql/item_func.cc:
        Add implementation of Item_func_last_insert_id::fix_fields(), where we
        remember in THD::current_insert_id the first value generated during
        execution of the previous statement, which is returned then from
        Item_func_last_insert_id::val_int().
      sql/item_func.h:
        Add declaration of Item_func_last_insert_id::fix_fields().
      sql/log_event.cc:
        Do not set THD::last_insert_id_used on LAST_INSERT_ID_EVENT.  Though we
        know the statement will call LAST_INSERT_ID(), it wasn't called yet.
      sql/set_var.cc:
        In sys_var_last_insert_id::value_ptr() remember in
        THD::current_insert_id the first value generated during execution of the
        previous statement, and return this value for @@LAST_INSERT_ID.
      sql/sql_class.cc:
        Reset THD::last_insert_id_used after each statement execution.
      sql/sql_class.h:
        Rather then remember current insert_id value on first invocation of
        THD::insert_id(), remember it in Item_func_last_insert_id::fix_fields(),
        sys_var_last_insert_id::value_ptr(), or mysql_execute_command().
        Remove THD::insert_id(), as it lost its value now.
      sql/sql_insert.cc:
        THD::insert_id() is removed, use THD::last_insert_id directly.
      sql/sql_load.cc:
        THD::insert_id() is removed, using THD::last_insert_id directly is OK.
      sql/sql_parse.cc:
        Remember in THD::current_insert_id first generated insert id value of
        the previous statement in mysql_execute_command().
        No need to reset THD::last_insert_id_used in
        mysql_reset_thd_for_next_command(), it will be reset after each
        statement.
      sql/sql_select.cc:
        If "IS NULL" is replaced with "= <LAST_INSERT_ID>", use right value,
        which is THD::current_insert_id, and also set THD::last_insert_id_used
        to issue binary log LAST_INSERT_ID_EVENT.
      sql/sql_update.cc:
        THD::insert_id() is removed, use THD::last_insert_id directly.
      tests/mysql_client_test.c:
        Add test case for bug#21726: Incorrect result with multiple invocations
        of LAST_INSERT_ID.
      be929087
  2. 01 Oct, 2006 6 commits
    • unknown's avatar
      Merge bk-internal.mysql.com:/data0/bk/mysql-5.1 · 6a698c3b
      unknown authored
      into  bk-internal.mysql.com:/data0/bk/mysql-5.1-arch
      
      
      sql/mysql_priv.h:
        Auto merged
      sql/share/errmsg.txt:
        Auto merged
      6a698c3b
    • unknown's avatar
      This patch makes ndbcluster_hton not static. I have a second patch for... · 0f3c3e2e
      unknown authored
      This  patch makes ndbcluster_hton not static. I have a second patch for ndbcluster_hton to be static, but I want to talk to Jonas first. 
      
      
      sql/ha_ndbcluster.cc:
        Can't quite make  it static yet :)
      sql/ha_ndbcluster_binlog.h:
        Moving bad extern replacement
      0f3c3e2e
    • unknown's avatar
      Merge baker@bk-internal.mysql.com:/home/bk/mysql-5.1-arch · 9130462b
      unknown authored
      into  zim.(none):/home/brian/mysql/merge-5.1
      
      
      sql/mysql_priv.h:
        Auto merged
      9130462b
    • unknown's avatar
      Merge fix. · 15af0a73
      unknown authored
      
      sql/sql_cursor.cc:
        Merge bit...
      15af0a73
    • unknown's avatar
      Merge zim.(none):/home/brian/mysql/merge-5.1 · ab6830a0
      unknown authored
      into  zim.(none):/home/brian/mysql/arch-5.1
      
      
      sql/mysql_priv.h:
        Auto merged
      sql/share/errmsg.txt:
        Auto merged
      sql/sql_show.cc:
        Auto merged
      sql/handler.h:
        Merge from G's work
      sql/sql_cursor.cc:
        Merge from G's work
      storage/csv/ha_tina.cc:
        Merge of G's work
      storage/innobase/handler/ha_innodb.cc:
        Merge of G's work
      storage/innobase/handler/ha_innodb.h:
        Merge of G's work
      storage/myisam/ha_myisam.cc:
        Merge of G's work
      ab6830a0
    • unknown's avatar
      This patch updates to remove most global hton needs. Cleans up wrong message in partition. · 40bf7b0a
      unknown authored
      
      mysql-test/r/partition.result:
        Updated results
      sql/ha_ndbcluster.cc:
        Updated hton
      sql/ha_partition.cc:
        Removed need for global internal hton.
      sql/handler.cc:
        Removed need for global mrg
      sql/mysql_priv.h:
        Updated needs for global variables.
      sql/mysqld.cc:
        Removed needs around hton
      sql/partition_info.cc:
        Removed bug.... aka what happens if tables are neither?
      sql/share/errmsg.txt:
        Made error message more generic.
      sql/sql_cache.cc:
        Removed specific hton reference
      40bf7b0a
  3. 30 Sep, 2006 3 commits
    • unknown's avatar
      This patch adds handlerton passing to functions. NDB and Innodb still require... · 76b83865
      unknown authored
      This patch adds handlerton passing to functions. NDB and Innodb still require a global hanlderton in the main code due to the nature of the sql_cache call back function (should be solveable... another patch).
      Partitioning now has a flag to allow disabling of engines from being compatible with partitioning. Cleaned up heap naming convention on panic call. 
      
      
      include/heap.h:
        Added new function
      sql/ha_ndbcluster.cc:
        Updated hanlderton functions
      sql/ha_ndbcluster_binlog.cc:
        Updated handlerton functions.
      sql/handler.cc:
        Updated handlerton functions.
      sql/handler.h:
        Updated hanlderton functions
      sql/log.cc:
        Updated handlerton functions
      sql/mysql_priv.h:
        Updated handlerton functions
      sql/mysqld.cc:
        Added Legacy handlerton functions
      sql/partition_info.cc:
        Added flag support for marking engines not compatible with partitioning
      sql/sql_cursor.cc:
        Updated hanlderton functions
      sql/sql_show.cc:
        Updated hanlderton functions
      sql/sql_tablespace.cc:
        Update for handlerton functions
      storage/archive/ha_archive.cc:
        Update for hanlderton functions
      storage/archive/ha_archive.h:
        Update for handlerton functions
      storage/blackhole/ha_blackhole.cc:
        Update for handlerton functions
      storage/csv/ha_tina.cc:
        Update for handlerton functions
      storage/csv/ha_tina.h:
        Update for handlerton functions
      storage/federated/ha_federated.cc:
        Updated for handlerton functions
      storage/federated/ha_federated.h:
        Updated for handlerton functions
      storage/heap/ha_heap.cc:
        Update for handlerton functions
      storage/heap/hp_panic.c:
        Update of function name
      storage/heap/hp_test1.c:
        Update of function name
      storage/heap/hp_test2.c:
        Update of function name.
      storage/innobase/handler/ha_innodb.cc:
        Update of function name
      storage/innobase/handler/ha_innodb.h:
        Update of function name
      storage/myisam/ha_myisam.cc:
        Update of function name.
      storage/myisammrg/ha_myisammrg.cc:
        Update of function name
      76b83865
    • unknown's avatar
      Merge bk-internal:/home/bk/mysql-5.1 · d0ab146b
      unknown authored
      into  dl145s.mysql.com:/data/bk/team_tree_merge/MERGE/mysql-5.1-opt
      
      
      d0ab146b
    • unknown's avatar
      This removes the passing of global hton to engine instance. · 48d5b3bd
      unknown authored
      
      sql/ha_ndbcluster.cc:
        Removed global hton
      sql/ha_ndbcluster.h:
        Removed global hton need
      sql/ha_partition.cc:
        Removed global hton
      sql/ha_partition.h:
        Removed global hton
      sql/handler.cc:
        Removed global hton
      sql/handler.h:
        Removed global hton
      storage/archive/ha_archive.cc:
        Removed global hton
      storage/archive/ha_archive.h:
        Global hton removed
      storage/blackhole/ha_blackhole.cc:
        Global removed hton
      storage/blackhole/ha_blackhole.h:
        Global hton removal
      storage/csv/ha_tina.cc:
        Global hton removal
      storage/csv/ha_tina.h:
        Removed global removed
      storage/example/ha_example.cc:
        Global removed hton
      storage/example/ha_example.h:
        Global removed hton
      storage/federated/ha_federated.cc:
        Global removed hton
      storage/federated/ha_federated.h:
        Global removed hton
      storage/heap/ha_heap.cc:
        Global removed hton
      storage/heap/ha_heap.h:
        Global removed hton
      storage/innobase/handler/ha_innodb.cc:
        Global removed hton
      storage/innobase/handler/ha_innodb.h:
        Removed global hton
      storage/myisam/ha_myisam.cc:
        Globally removed hton
      storage/myisam/ha_myisam.h:
        Globally removed hton
      storage/myisammrg/ha_myisammrg.cc:
        Globally removed hton
      storage/myisammrg/ha_myisammrg.h:
        Globaly removed hton
      48d5b3bd
  4. 29 Sep, 2006 8 commits
    • unknown's avatar
      BUG#14940: Update test results · ff1e2ee8
      unknown authored
      ff1e2ee8
    • unknown's avatar
      Merge bk-internal.mysql.com:/data0/bk/mysql-5.1 · 16a06614
      unknown authored
      into  bk-internal.mysql.com:/data0/bk/mysql-5.1-arch
      
      
      16a06614
    • unknown's avatar
      Merge spetrunia@bk-internal.mysql.com:/home/bk/mysql-5.1-opt · 7ecc1ac2
      unknown authored
      into  mysql.com:/home/psergey/mysql-5.1-bug14940-r10a
      
      
      sql/sql_select.cc:
        Auto merged
      7ecc1ac2
    • unknown's avatar
      Remove empty line · 9481cd80
      unknown authored
      9481cd80
    • unknown's avatar
      merge fixes · b38d9982
      unknown authored
      
      mysql-test/t/view.test:
        moved the new error message last
      sql/share/errmsg.txt:
        moved the new error message last
      b38d9982
    • unknown's avatar
      BUG#14940: Slow join order is chosen: [2nd commit with post-review fixes] · 5df80677
      unknown authored
      - Re-worked the prev_record_reads() function to return the lower bound of
        number of different table access scans that will be performed.
      
      
      mysql-test/r/join.result:
        BUG#14940: testcase
      mysql-test/t/join.test:
        BUG#14940: testcase
      sql/sql_select.cc:
        BUG#14940: Slow join order is chosen: 
        - Re-worked the prev_record_reads() function to return the lower bound of
          number of different table access scans that will be performed.
      sql/sql_select.h:
        BUG#14940: Slow join order is chosen:
        - Added comments in struct POSITION
        - Added POSITION::ref_depend_map: bitmap of tables that the table access
          method depends on.
      5df80677
    • unknown's avatar
      Merge dl145s.mysql.com:/data/bk/team_tree_merge/MERGE/mysql-5.0-opt · 08f6fca4
      unknown authored
      into  dl145s.mysql.com:/data/bk/team_tree_merge/MERGE/mysql-5.1-opt
      
      
      mysql-test/r/view.result:
        Auto merged
      mysql-test/t/view.test:
        Auto merged
      sql/mysql_priv.h:
        Auto merged
      sql/sql_base.cc:
        Auto merged
      sql/sql_insert.cc:
        Auto merged
      sql/sql_select.cc:
        Auto merged
      sql/sql_view.cc:
        Auto merged
      sql/sql_yacc.yy:
        Auto merged
      08f6fca4
    • unknown's avatar
      Merge bk-internal:/home/bk/mysql-5.1 · f02715ff
      unknown authored
      into  dl145s.mysql.com:/data/bk/team_tree_merge/MERGE/mysql-5.1-opt
      
      
      mysql-test/r/view.result:
        Auto merged
      mysql-test/t/view.test:
        Auto merged
      sql/item_cmpfunc.cc:
        Auto merged
      sql/mysql_priv.h:
        Auto merged
      sql/sql_yacc.yy:
        Auto merged
      f02715ff
  5. 28 Sep, 2006 18 commits
    • unknown's avatar
      view.test: · 04bf9cc7
      unknown authored
        After merge fix
      
      
      mysql-test/t/view.test:
        After merge fix
      04bf9cc7
    • unknown's avatar
      Merge epotemkin@bk-internal.mysql.com:/home/bk/mysql-5.0-opt · 09542617
      unknown authored
      into  moonbone.local:/work/5505-bug-5.0-opt-mysql
      
      
      sql/share/errmsg.txt:
        Auto merged
      sql/sql_base.cc:
        Auto merged
      mysql-test/r/view.result:
        Manual merge
      mysql-test/t/view.test:
        Manual merge
      09542617
    • unknown's avatar
      Fixed bug#5505: Wrong error message on INSERT into a view · d332c37c
      unknown authored
      On an INSERT into an updatable but non-insertable view an error message was
      issued stating the view being not updatable. This can lead to a confusion of a
      user.
      
      A new error message is introduced. Is is showed when a user tries to insert
      into a non-insertable view.
      
      
      sql/sql_base.cc:
        Fixed bug#5505: Wrong error message on INSERT into a view
        The update_non_unique_table_error() function now issues proper
        error for an INSERT.
      sql/sql_insert.cc:
        Fixed bug#5505: Wrong error message on INSERT into a view
        Issue the ER_NON_INSERTABLE_TABLE error instead of the 
        ER_NON_UPDATABLE_TABLE on insert into a view.
      sql/sql_view.cc:
        Fixed bug#5505: Wrong error message on INSERT into a view
        Issue the ER_NON_INSERTABLE_TABLE error instead of the
        ER_NON_UPDATABLE_TABLE on insert into a view.
      mysql-test/r/view.result:
        Added the test case for bug#5505: Wrong error message on INSERT into a view
        Corrected a few test cases after fixing bug#5505
      mysql-test/t/view.test:
        Added the test case for bug#5505: Wrong error message on INSERT into a view
        Corrected a few test cases after fixing bug#5505
      sql/share/errmsg.txt:
        Fixed bug#5505: Wrong error message on INSERT into a view
        Added the ER_NON_INSERTABLE_TABLE error definition.
      d332c37c
    • unknown's avatar
      Merge baker@bk-internal.mysql.com:/home/bk/mysql-5.1-arch · a4ac09c1
      unknown authored
      into  zim.(none):/home/brian/mysql/merge-5.1
      
      
      sql/handler.h:
        Auto merged
      a4ac09c1
    • unknown's avatar
      Merge baker@bk-internal.mysql.com:/home/bk/mysql-5.1 · 4de03074
      unknown authored
      into  zim.(none):/home/brian/mysql/merge-5.1
      
      
      storage/csv/ha_tina.cc:
        Auto merged
      storage/myisam/ha_myisam.cc:
        Auto merged
      4de03074
    • unknown's avatar
      Merge sgluhov@bk-internal.mysql.com:/home/bk/mysql-5.1 · 1ec1fc44
      unknown authored
      into  mysql.com:/home/gluh/MySQL/Merge/5.1
      
      
      sql/mysql_priv.h:
        Auto merged
      sql/sp.cc:
        Auto merged
      sql/sql_acl.cc:
        Auto merged
      1ec1fc44
    • unknown's avatar
      after merge fix · 1e641502
      unknown authored
      1e641502
    • unknown's avatar
      Merge bk-internal:/home/bk/mysql-5.1 · ef5b6b19
      unknown authored
      into  dl145s.mysql.com:/data/bk/team_tree_merge/MERGE/mysql-5.1-opt
      
      
      sql/mysql_priv.h:
        Auto merged
      ef5b6b19
    • unknown's avatar
      Merge bk-internal:/home/bk/mysql-5.1-opt · f6493451
      unknown authored
      into  dl145s.mysql.com:/data/bk/team_tree_merge/MERGE/mysql-5.1-opt
      
      
      sql/item.cc:
        Auto merged
      sql/opt_range.cc:
        Auto merged
      f6493451
    • unknown's avatar
      Merge epotemkin@bk-internal.mysql.com:/home/bk/mysql-5.1-opt · 00f0f920
      unknown authored
      into  moonbone.local:/work/18360-bug-5.1-opt-mysql
      
      
      mysql-test/t/view.test:
        Auto merged
      sql/item.cc:
        Auto merged
      00f0f920
    • unknown's avatar
      Merge gbichot@bk-internal:/home/bk/mysql-5.1-arch · 35d44ab3
      unknown authored
      into  dl145h.mysql.com:/users/gbichot/mysql-5.1-arch
      
      
      storage/innobase/handler/ha_innodb.cc:
        Auto merged
      35d44ab3
    • unknown's avatar
      In the handlerton, cursor creation function don't have an argument · 5e2c06a1
      unknown authored
      and so the engine calls current_thd to derive transaction information;
      instead we now pass THD to those functions, it looks more logical
      (it makes the implicit current_thd parameter more visible).
      Approved by Brian and Monty.
      
      
      sql/handler.h:
        cursor's creation functions in the handlerton need a THD,
        it's better than have the engine call current_thd
      sql/sql_cursor.cc:
        pass the THD instead of letting the engine call current_thd
      storage/innobase/handler/ha_innodb.cc:
        use the passed THD instead of current_thd
      storage/innobase/handler/ha_innodb.h:
        use the passed THD instead of current_thd
      5e2c06a1
    • unknown's avatar
      Merge mysql.com:/home/gluh/MySQL/Merge/5.0 · 5f10ffd0
      unknown authored
      into  mysql.com:/home/gluh/MySQL/Merge/5.1
      
      
      include/mysql_com.h:
        Auto merged
      mysql-test/r/ctype_utf8.result:
        Auto merged
      mysql-test/r/func_time.result:
        Auto merged
      mysql-test/r/query_cache.result:
        Auto merged
      mysql-test/r/type_date.result:
        Auto merged
      mysql-test/r/view.result:
        Auto merged
      mysql-test/t/ctype_utf8.test:
        Auto merged
      mysql-test/t/func_time.test:
        Auto merged
      mysql-test/t/view.test:
        Auto merged
      sql/item_cmpfunc.cc:
        Auto merged
      sql/mysql_priv.h:
        Auto merged
      sql/slave.h:
        Auto merged
      sql/sql_acl.cc:
        Auto merged
      sql/sql_parse.cc:
        Auto merged
      sql-common/client.c:
        Auto merged
      sql/sql_repl.h:
        Auto merged
      sql/sql_yacc.yy:
        Auto merged
      sql/sp.cc:
        manual merge
      sql/sp_head.cc:
        manual merge
      sql/sql_class.h:
        manual merge
      sql/table.cc:
        manual merge
      5f10ffd0
    • unknown's avatar
      Merge dl145s.mysql.com:/data/bk/team_tree_merge/mysql-5.1 · 802800b6
      unknown authored
      into  dl145s.mysql.com:/data/bk/team_tree_merge/MERGE/mysql-5.1-opt
      
      
      sql/field.h:
        Auto merged
      sql/filesort.cc:
        Auto merged
      sql/item.cc:
        Auto merged
      sql/mysql_priv.h:
        Auto merged
      sql/sql_select.cc:
        Auto merged
      sql/sql_yacc.yy:
        Auto merged
      802800b6
    • unknown's avatar
      Merge dl145s.mysql.com:/data/bk/team_tree_merge/MERGE/mysql-4.1-opt · d30536dc
      unknown authored
      into  dl145s.mysql.com:/data/bk/team_tree_merge/MERGE/mysql-5.0-opt
      
      
      sql/sql_select.cc:
        Auto merged
      d30536dc
    • unknown's avatar
      Merge dl145s.mysql.com:/data/bk/team_tree_merge/mysql-5.0 · 70255e85
      unknown authored
      into  dl145s.mysql.com:/data/bk/team_tree_merge/MERGE/mysql-5.0-opt
      
      
      mysql-test/r/view.result:
        Auto merged
      mysql-test/t/view.test:
        Auto merged
      sql/mysql_priv.h:
        Auto merged
      sql/sql_select.cc:
        Auto merged
      sql/sql_yacc.yy:
        Auto merged
      70255e85
    • unknown's avatar
      Merge dl145s.mysql.com:/data/bk/team_tree_merge/mysql-4.1 · b8fe6206
      unknown authored
      into  dl145s.mysql.com:/data/bk/team_tree_merge/MERGE/mysql-4.1-opt
      
      
      sql/sql_select.cc:
        Auto merged
      b8fe6206
    • unknown's avatar
      Merge pchardin@bk-internal.mysql.com:/home/bk/mysql-5.1 · 2d48a1f2
      unknown authored
      into  mysql.com:/home/cps/mysql/trees/5.1-runtime-new
      
      
      sql/handler.h:
        Auto merged
      sql/mysql_priv.h:
        Auto merged
      sql/sp.cc:
        Auto merged
      sql/sql_acl.cc:
        Auto merged
      sql/sql_show.cc:
        Auto merged
      sql/share/errmsg.txt:
        Auto merged
      sql/sql_table.cc:
        Auto merged
      mysql-test/r/sp.result:
        manual merge
      mysql-test/t/sp.test:
        manual merge
      storage/csv/ha_tina.cc:
        manual merge
      storage/myisam/ha_myisam.cc:
        manual merge
      2d48a1f2
  6. 27 Sep, 2006 2 commits