1. 03 Oct, 2006 3 commits
  2. 02 Oct, 2006 9 commits
    • unknown's avatar
      Merge bk-internal.mysql.com:/home/bk/mysql-5.0 · 2e219863
      unknown authored
      into  mockturtle.local:/home/dlenev/src/mysql-5.0-rt-merge
      
      
      mysql-test/r/ps.result:
        Auto merged
      mysql-test/t/ps.test:
        Auto merged
      sql/item.cc:
        Auto merged
      sql/mysql_priv.h:
        Auto merged
      sql/sql_select.cc:
        Auto merged
      sql/sql_update.cc:
        Auto merged
      2e219863
    • unknown's avatar
      Merge moonlight.intranet:/home/tomash/src/mysql_ab/mysql-5.0 · 72bff0c9
      unknown authored
      into  moonlight.intranet:/home/tomash/src/mysql_ab/mysql-5.0-bug21081
      
      
      72bff0c9
    • unknown's avatar
      Raise version number · 84000c37
      unknown authored
      84000c37
    • unknown's avatar
      Merge bk-internal.mysql.com:/home/bk/mysql-5.0 · 990763fe
      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
      990763fe
    • 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
    • unknown's avatar
      Merge mysql.com:/home/svoj/devel/mysql/merge/mysql-4.1-engines · 3ab74528
      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
      3ab74528
    • unknown's avatar
      Merge svojtovich@bk-internal.mysql.com:/home/bk/mysql-5.0 · ef5fe1f2
      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
      ef5fe1f2
    • unknown's avatar
      Merge svojtovich@bk-internal.mysql.com:/home/bk/mysql-4.0 · 9076d70e
      unknown authored
      into  mysql.com:/home/svoj/devel/mysql/merge/mysql-4.1-engines
      
      
      9076d70e
    • unknown's avatar
      Merge svojtovich@bk-internal.mysql.com:/home/bk/mysql-4.1 · 350ec8b1
      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
      350ec8b1
  3. 30 Sep, 2006 1 commit
    • unknown's avatar
      Merge bk-internal.mysql.com:/home/bk/mysql-5.0-runtime · 8f67eac4
      unknown authored
      into  mockturtle.local:/home/dlenev/src/mysql-5.0-bg20670-2
      
      
      mysql-test/r/trigger.result:
        Auto merged
      mysql-test/t/trigger.test:
        Auto merged
      sql/mysql_priv.h:
        Auto merged
      sql/opt_range.cc:
        Auto merged
      sql/opt_range.h:
        Auto merged
      sql/sql_update.cc:
        Auto merged
      8f67eac4
  4. 29 Sep, 2006 13 commits
  5. 28 Sep, 2006 14 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 chilla.local:/home/mydev/mysql-4.1-bug22384 · 43f00a09
      unknown authored
      into  chilla.local:/home/mydev/mysql-5.0-bug22384
      
      
      myisam/mi_delete.c:
        Auto merged
      43f00a09
    • unknown's avatar
      Fix for bug#22338 "Valgrind warning: uninitialized variable in · 5d46e299
      unknown authored
      create_tmp_table()".
      
      The fix for bug 21787 "COUNT(*) + ORDER BY + LIMIT returns wrong
      result" introduced valgrind warnings which occured during execution
      of information_schema.test and sp-prelocking.test in version 5.0.
      There were no user visible effects.
      
      The latter fix made create_tmp_table() dependant on
      THD::lex::current_select value. Valgrind warnings occured when this
      function was executed and THD::lex::current_select member pointed
      to uninitialized SELECT_LEX instance.
      
      This fix tries to remove this dependancy by moving some logic
      outside of create_tmp_table() function.
      
      
      sql/sql_select.cc:
        create_tmp_table():
          Moved code which is responsible for determining if optimization
          which pushes down LIMIT clause to temporary table creation is
          applicable out of this function.
          Such move made this function independant of THD::lex::current_select
          value and removed valgrind warnings which occured in cases when this
          member pointed to uninitialized SELECT_LEX object (particularly these
          warnings occured in sp-prelocking.test and information_schema.test
          in 5.0). This seems like a better solution than trying to force this
          pointer always to point to relevant select because:
          - In some cases when we use create_tmp_table() there are no relevant
            SELECT_LEX object (we use it just to create temporary table/object).
          - There is only one place in code where we call this funciton and
            where this optimization can be enabled. And in this place we
            already have some logic which tries to determine if it is applicable.
      5d46e299
    • unknown's avatar
      Merge chilla.local:/home/mydev/mysql-4.0-bug22384 · 03b88a48
      unknown authored
      into  chilla.local:/home/mydev/mysql-4.1-bug22384
      
      
      myisam/mi_delete.c:
        Auto merged
      03b88a48
    • unknown's avatar
      Merge mysql.com:/home/svoj/devel/mysql/BUG21617/mysql-4.1-engines · 59a7f1ab
      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.
      59a7f1ab
    • unknown's avatar
      Merge mysql.com:/home/svoj/devel/bk/mysql-4.1-engines · d96989ca
      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.
      d96989ca
    • unknown's avatar
      BUG#21617 - crash when selecting from merge table with inconsistent indexes · 7d915f01
      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.
      7d915f01
    • unknown's avatar
      Merge svojtovich@bk-internal.mysql.com:/home/bk/mysql-5.0-engines · 9902c35a
      unknown authored
      into  mysql.com:/home/svoj/devel/mysql/BUG21675/mysql-5.0-engines
      
      
      9902c35a
    • unknown's avatar
      Merge mysql.com:/home/svoj/devel/bk/mysql-5.0-engines · 33163d15
      unknown authored
      into  mysql.com:/home/svoj/devel/mysql/BUG21675/mysql-5.0-engines
      
      
      sql/ha_archive.cc:
        Auto merged
      33163d15
    • unknown's avatar
      BUG#21675 - engine=archive 2GB file limit, when reached mysqld restarts on any query · 9e6eaaf0
      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.
      9e6eaaf0
    • unknown's avatar
      Merge bk-internal.mysql.com:/home/bk/mysql-4.1-engines · 1f9b9591
      unknown authored
      into  chilla.local:/home/mydev/mysql-4.1-bug20719-m
      
      
      1f9b9591
    • unknown's avatar
      Bug#22384 - DELETE FROM table causes "Incorrect key file for table" · 24a1e6f6
      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.
      24a1e6f6