1. 02 Oct, 2006 7 commits
    • unknown's avatar
      Raise version number · 32ba7d73
      unknown authored
      32ba7d73
    • unknown's avatar
      Merge bk-internal.mysql.com:/home/bk/mysql-5.0 · 54ac7dbe
      unknown authored
      into  moonlight.intranet:/home/tomash/src/mysql_ab/mysql-5.0-real-bug21726
      
      
      sql/sql_insert.cc:
        Auto merged
      sql/sql_select.cc:
        Auto merged
      54ac7dbe
    • unknown's avatar
      BUG#21726: Incorrect result with multiple invocations of LAST_INSERT_ID · 09c5c3e7
      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.
      09c5c3e7
    • unknown's avatar
      Merge mysql.com:/home/svoj/devel/mysql/merge/mysql-4.1-engines · 17c4b4f6
      unknown authored
      into  mysql.com:/home/svoj/devel/mysql/merge/mysql-5.0-engines
      
      
      mysql-test/r/myisam.result:
        Auto merged
      mysql-test/t/myisam.test:
        Auto merged
      sql/table.cc:
        Auto merged
      17c4b4f6
    • unknown's avatar
      Merge svojtovich@bk-internal.mysql.com:/home/bk/mysql-5.0 · 722c0f5e
      unknown authored
      into  mysql.com:/home/svoj/devel/mysql/merge/mysql-5.0-engines
      
      
      BitKeeper/etc/ignore:
        auto-union
      mysql-test/r/myisam.result:
        Auto merged
      mysql-test/t/myisam.test:
        Auto merged
      sql/sql_insert.cc:
        Auto merged
      sql/sql_select.cc:
        Auto merged
      sql/share/errmsg.txt:
        Auto merged
      sql/table.cc:
        Auto merged
      722c0f5e
    • unknown's avatar
      Merge svojtovich@bk-internal.mysql.com:/home/bk/mysql-4.0 · 32d02489
      unknown authored
      into  mysql.com:/home/svoj/devel/mysql/merge/mysql-4.1-engines
      
      32d02489
    • unknown's avatar
      Merge svojtovich@bk-internal.mysql.com:/home/bk/mysql-4.1 · e518f03c
      unknown authored
      into  mysql.com:/home/svoj/devel/mysql/merge/mysql-4.1-engines
      
      
      mysql-test/r/myisam.result:
        Auto merged
      mysql-test/t/myisam.test:
        Auto merged
      sql/table.cc:
        Auto merged
      e518f03c
  2. 29 Sep, 2006 9 commits
  3. 28 Sep, 2006 17 commits
    • unknown's avatar
      view.test: · 669d8a6f
      unknown authored
        After merge fix
      
      
      mysql-test/t/view.test:
        After merge fix
      669d8a6f
    • unknown's avatar
      Merge epotemkin@bk-internal.mysql.com:/home/bk/mysql-5.0-opt · 024f93c5
      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
      024f93c5
    • unknown's avatar
      Fixed bug#5505: Wrong error message on INSERT into a view · 9cf17a35
      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.
      9cf17a35
    • unknown's avatar
      Merge chilla.local:/home/mydev/mysql-4.1-bug22384 · 8daabf3b
      unknown authored
      into  chilla.local:/home/mydev/mysql-5.0-bug22384
      
      
      myisam/mi_delete.c:
        Auto merged
      8daabf3b
    • unknown's avatar
      Merge chilla.local:/home/mydev/mysql-4.0-bug22384 · d198c072
      unknown authored
      into  chilla.local:/home/mydev/mysql-4.1-bug22384
      
      
      myisam/mi_delete.c:
        Auto merged
      d198c072
    • unknown's avatar
      Merge mysql.com:/home/svoj/devel/mysql/BUG21617/mysql-4.1-engines · 1eb1bf1f
      unknown authored
      into  mysql.com:/home/svoj/devel/mysql/BUG21617/mysql-5.0-engines
      
      
      myisammrg/myrg_open.c:
        Auto merged
      myisammrg/myrg_queue.c:
        Auto merged
      mysql-test/t/merge.test:
        Auto merged
      mysql-test/r/merge.result:
        Manual merge.
      1eb1bf1f
    • unknown's avatar
      Merge mysql.com:/home/svoj/devel/bk/mysql-4.1-engines · a93e2871
      unknown authored
      into  mysql.com:/home/svoj/devel/mysql/BUG21617/mysql-4.1-engines
      
      
      myisammrg/myrg_open.c:
        Auto merged
      mysql-test/r/merge.result:
        Manual merge.
      mysql-test/t/merge.test:
        Manual merge.
      a93e2871
    • unknown's avatar
      BUG#21617 - crash when selecting from merge table with inconsistent indexes · 1c6bca02
      unknown authored
      Crash may happen when selecting from a merge table that has underlying
      tables with less indexes than in a merge table itself.
      
      If number of keys in merge table is not bigger than requested key number,
      return error.
      
      
      myisammrg/myrg_open.c:
        Store min(number of keys) in m_info instead of number of keys in last
        underlying table.
      myisammrg/myrg_queue.c:
        Return error if inx passed to _myrg_init_queue function is not less
        than number of keys.
      mysql-test/r/merge.result:
        A test case for bug#21617.
      mysql-test/t/merge.test:
        A test case for bug#21617.
      mysys/queues.c:
        Replaced annoying ifndef DBUG_OFF with DBUG_ASSERT, fixed coding style.
        The problem was that having queue overrun in debug build was hidden
        with this ifdef.
      1c6bca02
    • unknown's avatar
      Merge svojtovich@bk-internal.mysql.com:/home/bk/mysql-5.0-engines · 251b488f
      unknown authored
      into  mysql.com:/home/svoj/devel/mysql/BUG21675/mysql-5.0-engines
      
      251b488f
    • unknown's avatar
      Merge mysql.com:/home/svoj/devel/bk/mysql-5.0-engines · e3525c54
      unknown authored
      into  mysql.com:/home/svoj/devel/mysql/BUG21675/mysql-5.0-engines
      
      
      sql/ha_archive.cc:
        Auto merged
      e3525c54
    • unknown's avatar
      BUG#21675 - engine=archive 2GB file limit, when reached mysqld restarts on any query · eb5a8828
      unknown authored
      If mysqld is linked against system installed zlib (which is likely compiled w/o
      LFS) and archive table exceedes 2G, mysqld will likely be terminated with SIGXFSZ.
      
      Prior to actual write perform a check if there is space in data file. This fixes
      abnormal process termination with SIGXFSZ.
      
      No test case for this bugfix.
      
      
      sql/ha_archive.cc:
        Prior to actual write perform a check if there is space in data file. This fixes
        abnormal process termination with SIGXFSZ.
      sql/ha_archive.h:
        Added approximate archive data file size to archive share.
      eb5a8828
    • unknown's avatar
      Merge bk-internal.mysql.com:/home/bk/mysql-4.1-engines · 7ddf1f5f
      unknown authored
      into  chilla.local:/home/mydev/mysql-4.1-bug20719-m
      
      7ddf1f5f
    • unknown's avatar
      Bug#22384 - DELETE FROM table causes "Incorrect key file for table" · e9dfa4ab
      unknown authored
      Deletes on a big index could crash the index when it needs to
      shrink.
      
      Put a forgotten negation operator in.
      
      No test case. It is too big for the test suite. And it does not
      work with 4.0, only with higher versions. It is attached to the
      bug report.
      
      
      myisam/mi_delete.c:
        Bug#22384 - DELETE FROM table causes "Incorrect key file for table"
        Put a negation operator ('!') before _mi_get_last_key() in del().
        It returns NULL on error, non-NULL on success.
      e9dfa4ab
    • unknown's avatar
      Merge dl145s.mysql.com:/data/bk/team_tree_merge/MERGE/mysql-4.1-opt · 1b744c77
      unknown authored
      into  dl145s.mysql.com:/data/bk/team_tree_merge/MERGE/mysql-5.0-opt
      
      
      sql/sql_select.cc:
        Auto merged
      1b744c77
    • unknown's avatar
      Merge dl145s.mysql.com:/data/bk/team_tree_merge/mysql-5.0 · 757c5dcf
      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
      757c5dcf
    • unknown's avatar
      Merge dl145s.mysql.com:/data/bk/team_tree_merge/mysql-4.1 · e2452943
      unknown authored
      into  dl145s.mysql.com:/data/bk/team_tree_merge/MERGE/mysql-4.1-opt
      
      
      sql/sql_select.cc:
        Auto merged
      e2452943
    • unknown's avatar
      Merge bk-internal.mysql.com:/home/bk/mysql-5.0-engines · 25076e81
      unknown authored
      into  chilla.local:/home/mydev/mysql-5.0-bug20719-m
      
      25076e81
  4. 27 Sep, 2006 7 commits