1. 14 Jul, 2005 8 commits
    • unknown's avatar
      Get rid of checking for ETIME return value of pthread_cond_timedwait. · 201746fb
      unknown authored
      ETIME was returned by cond_timedwait (sic, the pre-POSIX1001b function) on 
      Solaris 2.6 and 2.7. pthread_cond_timedwait on Solaris returns ETIMEDOUT.
      The standard requirement is that the only additional return value
      of pthred_cond_timedwait compared to pthread_cond_wait is ETIMEDOUT.
      Let us not bloat the application code with redundant checks,
      and if we're ever to work on a platform that returns a non-standard 
      value, we should write a wrapper for that platform (like we do, e.g., for
      Windows).
      
      
      mysys/my_os2cond.c:
        - fix our implementation of pthread_cond_timedwait on OS2 to return
          ETIMEDOUT instead of ETIME.
      sql/item_func.cc:
        - don't check for ETIME
      sql/slave.cc:
        - don't check for ETIME
      sql/sql_insert.cc:
        - don't check for ETIME
      201746fb
    • unknown's avatar
      Merge abarkov@bk-internal.mysql.com:/home/bk/mysql-5.0 · 39cf36d6
      unknown authored
      into  mysql.com:/usr/home/bar/mysql-5.0
      
      39cf36d6
    • unknown's avatar
      item.cc: · 566dfcbe
      unknown authored
        After merge fix.
      
      
      sql/item.cc:
        After merge fix.
      566dfcbe
    • unknown's avatar
      Merge bk-internal.mysql.com:/home/bk/mysql-5.0 · 0b7936e0
      unknown authored
      into  mysql.com:/media/sda1/mysql/mysql-5.0-10760-new
      
      0b7936e0
    • unknown's avatar
      Implement MarkM optimization request to avoid redundnat packet exchange · de290880
      unknown authored
      in cursors.
      
      
      libmysql/libmysql.c:
        - reset_stmt_handle(): don't reset the server side just because we have 
          an open cursor: the server will close the cursor automatically if 
          needed
      sql/sql_prepare.cc:
        - implement Prepared_statement::close_cursor,
        - implicitly close an open cursor in mysql_stmt_execute instead of 
          issuing an error (to reduce the need to explicitly close cursors
          and save network bandwidth).
        - cleanup
      sql/sql_select.cc:
        Remove a destructor: cursor destruction can not be done by simply
        calling a destructor, because of cross-references between cursor
        and statement memory.
      sql/sql_select.h:
        - add an empty Cursor destructor
      tests/mysql_client_test.c:
        - remove a test for dropped functionality
      de290880
    • unknown's avatar
      Merge mysql.com:/usr/home/bar/mysql-4.1.num-conv · d5fc7db5
      unknown authored
      into  mysql.com:/usr/home/bar/mysql-5.0
      
      
      mysql-test/r/ctype_utf8.result:
        Auto merged
      mysql-test/t/ctype_utf8.test:
        Auto merged
      sql/item.h:
        Auto merged
      sql/sql_table.cc:
        Auto merged
      sql/item.cc:
        After merge fix.
      d5fc7db5
    • unknown's avatar
      valgrind error fix(uninitialiased variable) · d44eb09a
      unknown authored
      removed unnecessary operation
      
      
      sql/sql_lex.cc:
        valgrind error fix(uninitialiased variable)
      sql/sql_parse.cc:
        removed unnecessary operation
      d44eb09a
    • unknown's avatar
      Merge abarkov@bk-internal.mysql.com:/home/bk/mysql-4.1 · c2192cd1
      unknown authored
      into  mysql.com:/usr/home/bar/mysql-4.1.num-conv
      
      
      mysql-test/r/ctype_utf8.result:
        Auto merged
      mysql-test/t/ctype_utf8.test:
        Auto merged
      sql/item.cc:
        Auto merged
      sql/item.h:
        Auto merged
      sql/sql_table.cc:
        Auto merged
      c2192cd1
  2. 13 Jul, 2005 32 commits
    • unknown's avatar
      Merge bk-internal.mysql.com:/home/bk/mysql-5.0 · 783c7737
      unknown authored
      into  mysql.com:/opt/local/work/mysql-5.0-root
      
      783c7737
    • unknown's avatar
      Post-merge fixes. · 7f640e55
      unknown authored
      7f640e55
    • unknown's avatar
      Merge bk-internal.mysql.com:/home/bk/mysql-5.0 · b6320000
      unknown authored
      into  mysql.com:/home/dlenev/src/mysql-5.0-mysqlproc
      
      b6320000
    • unknown's avatar
      Merge mysql.com:/opt/local/work/mysql-4.1-9379 · 5526fd9f
      unknown authored
      into  mysql.com:/opt/local/work/mysql-5.0-root
      
      
      mysql-test/r/ps.result:
        Manual merge.
      mysql-test/t/ps.test:
        Manual merge.
      5526fd9f
    • unknown's avatar
      Merge jbruehe@bk-internal.mysql.com:/home/bk/mysql-5.0 · e8c165bb
      unknown authored
      into mysql.com:/M50/mysql-5.0
      
      
      VC++Files/tests/mysql_client_test.dsp:
        Auto merged
      mysql-test/r/view.result:
        Auto merged
      mysql-test/t/view.test:
        Auto merged
      sql/sql_insert.cc:
        Auto merged
      e8c165bb
    • unknown's avatar
      A test case for Bug#9442 "Set parameter make query fail if column · c5775210
      unknown authored
      character set is UCS2".
      The bug is no longer repeatable.
      
      
      mysql-test/r/ps.result:
        Test results fixed (a test case for Bug#9442)
      mysql-test/t/ps.test:
        A test case for Bug#9442 "Set parameter make query fail if column 
        character set is UCS2
      c5775210
    • unknown's avatar
      Merging separate commits into 5.0.9-beta build clone and general BK tree. · f7bfb97e
      unknown authored
      Tagging the 5.0.9-beta release.
      
      
      mysql-test/r/view.result:
        Auto merged
      mysql-test/t/view.test:
        Auto merged
      VC++Files/tests/mysql_client_test.dsp:
        Merging separate commits into 5.0.9-beta build clone and general BK tree.
      sql/sql_insert.cc:
        Merging separate commits into 5.0.9-beta build clone and general BK tree.
      f7bfb97e
    • unknown's avatar
      Merge bk-internal.mysql.com:/home/bk/mysql-5.0 · c4339546
      unknown authored
      into  mysql.com:/home/dlenev/src/mysql-5.0-mysqlproc
      
      c4339546
    • unknown's avatar
      Now when we create or drop trigger we will open only subject table and not · a6ad1c5e
      unknown authored
      all tables suggested by prelocking algorithm.
      Added test for bug #11889 "Server crashes when dropping trigger using stored
      routine" (which was fixed by previous patch).
      
      
      mysql-test/r/trigger.result:
        Since we are using open_ltable() now to open table for trigger creation, code
        for error when we try to create trigger on view has changed to equivalent one.
        Added test for bug #11889 "Server crashes when dropping trigger using stored
        routine".
      mysql-test/t/trigger.test:
        Since we are using open_ltable() now to open table for trigger creation, code
        for error when we try to create trigger on view has changed to equivalent one.
        Added test for bug #11889 "Server crashes when dropping trigger using stored
        routine".
      sql/sql_trigger.cc:
        mysql_create_or_drop_trigger():
          It is better to open only table for which we are going to create or drop
          trigger with open_ltable() since we don't really need working prelocking
          in this case.
      a6ad1c5e
    • unknown's avatar
      Merge mysql.com:/opt/local/work/mysql-4.1-9379 · 33be7223
      unknown authored
      into  mysql.com:/opt/local/work/mysql-5.0-root
      
      
      sql/item.cc:
        Auto merged
      mysql-test/r/ps.result:
        Manual merge.
      mysql-test/t/ps.test:
        Manual merge.
      sql/item_func.cc:
        Manual merge.
      33be7223
    • unknown's avatar
      A fix and a test case for Bug#9379 (collation of a parameter marker is · 346dfa00
      unknown authored
      binary).
      
      
      mysql-test/r/ps.result:
        Test results fixed (Bug#9379)
      mysql-test/t/ps.test:
        A test case for Bug#9379 (collation of a parameter marker is binary)
      sql/item.cc:
        - set Item_param::collation to str_value collation, if Item_param
        is assigned a string. Reset it to default in Item_param::reset() (on 
        the next execution it can be assigned a number).
      sql/item_func.cc:
        - now that item collation can change between executions
        (if this item is Item_param), we need to register the change
        of the execution tree in the rollback list.
      346dfa00
    • unknown's avatar
      Merge mysql.com:/opt/local/work/mysql-4.1-11458 · a8f13702
      unknown authored
      into  mysql.com:/opt/local/work/mysql-5.0-root
      
      
      configure.in:
        Manual merge
      mysql-test/r/ps.result:
        Manual merge
      mysql-test/t/ps.test:
        Manual merge
      a8f13702
    • unknown's avatar
      Merge bk-internal.mysql.com:/home/bk/mysql-5.0 · 621a12d8
      unknown authored
      into  mysql.com:/opt/local/work/mysql-5.0-root
      
      621a12d8
    • unknown's avatar
      Merge bk-internal.mysql.com:/home/bk/mysql-4.1 · 207284e8
      unknown authored
      into  mysql.com:/opt/local/work/mysql-4.1-11458
      
      207284e8
    • unknown's avatar
      Merge mysql.com:/opt/local/work/mysql-4.1-11458 · e199a025
      unknown authored
      into  mysql.com:/opt/local/work/mysql-5.0-root
      
      
      sql/mysql_priv.h:
        Auto merged
      sql/sql_lex.h:
        Auto merged
      mysql-test/r/ps.result:
        Manual merge.
      mysql-test/t/ps.test:
        Manual merge.
      sql/item.cc:
        Manual merge.
      sql/item.h:
        Manual merge.
      sql/item_subselect.h:
        Manual merge.
      sql/sql_parse.cc:
        Manual merge.
      sql/sql_prepare.cc:
        Manual merge.
      e199a025
    • unknown's avatar
      Cleanup after test for Bug#11458 · 5f68aec7
      unknown authored
      5f68aec7
    • unknown's avatar
      4.1.13 has been cloned off · 6b7a2021
      unknown authored
      
      configure.in:
        Increase version number to 4.1.14, as the clone for 4.1.13 has been created.
      6b7a2021
    • unknown's avatar
      Merge bk-internal.mysql.com:/home/bk/mysql-4.1 · eff6e36a
      unknown authored
      into  mysql.com:/opt/local/work/mysql-4.1-11458
      
      
      sql/mysql_priv.h:
        Auto merged
      eff6e36a
    • unknown's avatar
      - a fix for Bug#11458 "Prepared statement with subselects return random · 27303b09
      unknown authored
      data": remove the fix for another bug (8807) that
      added OUTER_REF_TABLE_BIT to all subqueries that used a placeholder
      to prevent their evaluation at prepare. As this bit hanged in 
      Item_subselect::used_tables_cache for ever, a constant subquery with
      a placeholder was never evaluated as such, which caused wrong 
      choice of the execution plan for the statement.
      - to fix Bug#8807 backport a better fix from 5.0
      - post-review fixes.
      
      
      mysql-test/r/ps.result:
        Bug#11458: test results fixed
      mysql-test/t/ps.test:
        - add a test case for Bug#11458 "Prepared statement with subselects return 
        random data"
      sql/item.cc:
        - remove unnecessary Item_param::fix_fields
        - fix Item_param::set_null to set item_type accordingly (safety:
          Item_param should behave like a basic constant).
      sql/item.h:
        Remove Item_param::fix_fields
      sql/item_subselect.h:
        Remove no more existing friend.
      sql/mysql_priv.h:
        Add UNCACHEABLE_PREPARE to mark all subqueries as uncacheable if
        in statement prepare (backport from 5.0).
      sql/sql_lex.h:
        Comment fixed.
      sql/sql_parse.cc:
        If in statement prepare, mark all subqueries as uncacheable (backport
        from 5.0)
      sql/sql_prepare.cc:
        Switch off the uncacheable flag from all subqueries after statement
        prepare is done (backport from 5.0)
      27303b09
    • unknown's avatar
      sql_update.cc: · f5813720
      unknown authored
        mysql_update(): Call handler::unlock_row()
        also in the first while loop.
        This patch is from Heikki,
        and it was approved by Sergei Golubchik.
      
      
      sql/sql_update.cc:
        mysql_update(): Call handler::unlock_row()
        also in the first while loop.
        This patch is from Heikki,
        and it was approved by Sergei Golubchik.
      f5813720
    • unknown's avatar
      Merge bk-internal.mysql.com:/home/bk/mysql-5.0 · 5afdbbda
      unknown authored
      into  mysql.com:/home/dlenev/src/mysql-5.0-mysqlproc
      
      5afdbbda
    • unknown's avatar
      Fixed trigger.test after fixing bug #11554 "Server crashes on statement · cea87db2
      unknown authored
      indirectly using non-cached function".
      
      
      mysql-test/r/trigger.result:
        Fixed test case after fixing bug #11554 "Server crashes on statement
        indirectly using non-cached function".
      mysql-test/t/trigger.test:
        Fixed test case after fixing bug #11554 "Server crashes on statement
        indirectly using non-cached function".
      cea87db2
    • unknown's avatar
      Merge mysql.com:/home/bkroot/mysql-4.1 · 257ba6ae
      unknown authored
      into mysql.com:/home/bk/bXXX-mysql-5.0
      
      
      mysql-test/r/rpl_deadlock.result:
        Auto merged
      mysql-test/t/rpl_deadlock.test:
        Auto merged
      257ba6ae
    • unknown's avatar
      Bug#11905: Tables used in rpl_deadlock are not dropped at the · f4b8a13e
      unknown authored
      end of the test, causing subsequent tests to fail.
      
      
      mysql-test/r/rpl_deadlock.result:
        Result change.
      mysql-test/t/rpl_deadlock.test:
        Tables used in the test but not dropped.
      f4b8a13e
    • unknown's avatar
      Post-merge fix · 6328556c
      unknown authored
      6328556c
    • unknown's avatar
      Merge bk-internal.mysql.com:/home/bk/mysql-5.0 · 119bf9f8
      unknown authored
      into  mysql.com:/home/dlenev/src/mysql-5.0-mysqlproc
      
      
      mysql-test/r/sp-error.result:
        Auto merged
      mysql-test/t/sp-error.test:
        Auto merged
      sql/mysql_priv.h:
        Auto merged
      sql/sp.h:
        Auto merged
      sql/sql_base.cc:
        Auto merged
      sql/sql_lex.cc:
        Auto merged
      sql/sql_lex.h:
        Auto merged
      sql/share/errmsg.txt:
        Manual merge.
      sql/sp.cc:
        Manual merge.
      119bf9f8
    • unknown's avatar
      Merge mysql.com:/home/gluh/MySQL/Merge/4.1 · d64fe415
      unknown authored
      into mysql.com:/home/gluh/MySQL/Merge/5.0
      
      
      mysql-test/r/func_str.result:
        Auto merged
      mysql-test/t/func_str.test:
        Auto merged
      sql/item_strfunc.cc:
        Auto merged
      d64fe415
    • unknown's avatar
      Merge tulin@bk-internal.mysql.com:/home/bk/mysql-5.0 · bcaf84b0
      unknown authored
      into poseidon.ndb.mysql.com:/home/tomas/mysql-5.0
      
      bcaf84b0
    • unknown's avatar
    • unknown's avatar
      Implementation of Monty's idea: Now we can open mysql.proc table for lookup · ad1a4b3f
      unknown authored
      of stored routines definitions even if we already have some tables open and
      locked. To avoid deadlocks in this case we have to put certain restrictions
      on locking of mysql.proc table.
      
      This allows to use stored routines safely under LOCK TABLES without explicitly
      mentioning mysql.proc in the list of locked tables. It also fixes bug #11554
      "Server crashes on statement indirectly using non-cached function".
      
      
      mysql-test/r/sp-error.result:
        Added test which checks that now we can read stored routines definitions
        under LOCK TABLES even if we have not locked mysql.proc explicitly. Also
        added check for restrictions which this ability puts on mysql.proc locking.
        Updated test for bug #9566 to correspond this new situation.
      mysql-test/r/sp-threads.result:
        Added test for bug #11554 "Server crashes on statement indirectly using
        non-cached function".
      mysql-test/t/sp-error.test:
        Added test which checks that now we can read stored routines definitions
        under LOCK TABLES even if we have not locked mysql.proc explicitly. Also
        added check for restrictions which this ability puts on mysql.proc locking.
        Updated test for bug #9566 to correspond this new situation.
      mysql-test/t/sp-threads.test:
        Added test for bug #11554 "Server crashes on statement indirectly using
        non-cached function".
      sql/lock.cc:
        get_lock_data():
         To be able to open and lock for reading system tables like 'mysql.proc',
         when we already have some tables opened and locked, and avoid deadlocks
         we have to disallow write-locking of these tables with any other tables.
      sql/mysql_priv.h:
        open_table() has new parameter which allows to open table even if some-one
        has done a flush or holding namelock on it.
      sql/share/errmsg.txt:
        Added error message saying that one cannot write-lock some of system tables
        with any other tables.
      sql/sp.cc:
        open_proc_table_for_read()/close_proc_table():
          Added functions to be able open and close mysql.proc table when we already
          have some tables open and locked.
        open_proc_table_for_update():
          Added function to simplify opening of mysql.proc for updates.
        db_find_routine_aux()/db_find_routine()/db_update_routine()/...
          Moved responsibility for opening mysql.proc table from db_find_routine_aux()
          one level up, since this level knows better which type of table access for
          reading of for update it needs.
        sp_function_exists():
          Removed unused function.
      sql/sp.h:
        sp_function_exists():
          Removed unused function.
      sql/sql_base.cc:
        open_table():
          Added new parameter which allows to open table even if some-one has done a
          flush or holding namelock on it.
        open_unireg_entry():
          Mark 'mysql.proc' as a system table which has special restrictions on its
          locking, but thanks to them can be open and locked even if we already have
          some open and locked.
      sql/sql_class.cc:
        Moved THD members holding information about open and locked tables to separate
        Open_tables_state class to be able to save/restore this state easier.
        Added THD::push_open_tables_state()/pop_open_tables_state() methods for
        saving/restoring this state.
      sql/sql_class.h:
        Moved THD members holding information about open and locked tables to separate
        Open_tables_state class to be able to save/restore this state easier.
        Added THD::push_open_tables_state()/pop_open_tables_state() methods for
        saving/restoring this state.
      sql/sql_lex.cc:
        Removed LEX::proc_table member which was not really used.
      sql/sql_lex.h:
        Removed LEX::proc_table member which was not really used.
      sql/sql_table.cc:
        open_table() has new parameter which allows to open table even if some-one
        has done a flush or holding namelock on it.
      sql/table.h:
        Added TABLE_SHARE::system_table indicating that this table is system table
        like 'mysql.proc' and we want to be able to open and read-lock it even when
        we already have some tables open and locked (and because of this we have
        to put some restrictions on write locking it).
      ad1a4b3f
    • unknown's avatar
      Bug #9854 hex() and out of range handling · f4a2da92
      unknown authored
        added out of range handling
      
      f4a2da92
    • unknown's avatar
      ec033e5b