1. 17 Nov, 2006 2 commits
    • unknown's avatar
      Merge moonlight.intranet:/home/tomash/src/mysql_ab/mysql-4.1-bug23383 · 4d9d524f
      unknown authored
      into  moonlight.intranet:/home/tomash/src/mysql_ab/mysql-5.0-bug23383
      
      
      libmysql/libmysql.c:
        Manual merge.
      libmysqld/lib_sql.cc:
        Manual merge.
      tests/mysql_client_test.c:
        Manual merge.
      4d9d524f
    • unknown's avatar
      BUG#23383: mysql_affected_rows() returns different values than · eb3a54e6
      unknown authored
      mysql_stmt_affected_rows()
      
      The problem was that affected_rows for prepared statement wasn't updated
      in the client library on the error.  The solution is to always update
      affected_rows, which will be equal to -1 on the error.
      
      
      libmysql/libmysql.c:
        Update status variables even in the case of an error.  Some variables
        have a defined value on the error (like affected_rows is -1), others are
        undefined, so updating them won't harm.
      libmysqld/lib_sql.cc:
        Update status variables even in the case of an error.  Some variables
        have a defined value on the error (like affected_rows is -1), others are
        undefined, so updating them won't harm.
      tests/mysql_client_test.c:
        Add test for bug#23383: mysql_affected_rows() returns different values
        than mysql_stmt_affected_rows().
      eb3a54e6
  2. 13 Nov, 2006 2 commits
    • unknown's avatar
      Merge bk-internal.mysql.com:/home/bk/mysql-5.0-runtime · b50aac19
      unknown authored
      into  mockturtle.local:/home/dlenev/src/mysql-5.0-bg23651
      
      
      sql/item_func.cc:
        Auto merged
      b50aac19
    • unknown's avatar
      Fix for bug bug#23651 "Server crashes when trigger which uses · 95390bef
      unknown authored
      stored function invoked from different connections".
      
      Invocation of trigger which was using stored function from different
      connections caused server crashes (for non-debug server this happened
      in highly concurrent environment, but debug server failed on assertion
      in relatively simple scenario).
      
      Item_func_sp was not safe to use in triggers (in other words for
      re-execution from different threads) as artificial TABLE object
      pointed by Item_func_sp::dummy_table referenced incorrect THD
      object. To fix the problem we force re-initialization of this
      object for each re-execution of statement.
      
      
      mysql-test/r/trigger.result:
        Added test for bug#23651 "Server crashes when trigger which uses
        stored function invoked from different connections".
      mysql-test/t/trigger.test:
        Added test for bug#23651 "Server crashes when trigger which uses
        stored function invoked from different connections".
      sql/item_func.cc:
        To make Item_func_sp safe for usage in triggers (in other words safe
        for re-execution in different threads) we need to ensure that artificial
        TABLE object pointed by Item_func_sp::dummy_table references correct
        THD object. To achieve this we simply force its re-initialization for
        each re-execution of statement.
      95390bef
  3. 12 Nov, 2006 1 commit
  4. 11 Nov, 2006 3 commits
    • unknown's avatar
      Merge mysql.com:/Users/kent/mysql/bk/mysql-4.1 · 31481f02
      unknown authored
      into  mysql.com:/Users/kent/mysql/bk/mysql-5.0
      
      31481f02
    • unknown's avatar
      mysql-test-run.pl: · c60d8fb1
      unknown authored
        Test for base directory when a RPM install corrected
      
      
      mysql-test/mysql-test-run.pl:
        Test for base directory when a RPM install corrected
      c60d8fb1
    • unknown's avatar
      Merge bk-internal.mysql.com:/home/bk/mysql-5.0 · 5ae4c26e
      unknown authored
      into  bodhi.local:/opt/local/work/mysql-5.0-runtime
      
      
      configure.in:
        Auto merged
      include/my_time.h:
        Auto merged
      mysql-test/r/func_time.result:
        Auto merged
      mysql-test/r/rename.result:
        Auto merged
      mysql-test/t/func_time.test:
        Auto merged
      mysql-test/t/im_daemon_life_cycle.imtest:
        Auto merged
      sql-common/my_time.c:
        Auto merged
      sql/item_timefunc.cc:
        Auto merged
      sql/time.cc:
        Auto merged
      mysql-test/t/rename.test:
        Use local (resolve a conflict)
      5ae4c26e
  5. 10 Nov, 2006 15 commits
  6. 09 Nov, 2006 4 commits
    • unknown's avatar
      mysql-test/install_test_db.sh · df092d70
      unknown authored
          Adapt to the different path of the server program, if installation was by RPM.
          Missing in the first changeset for bug#17194.
      
      
      mysql-test/install_test_db.sh:
        Adapt to the different path of the server program, if installation was by RPM.
        Missing in the first changeset for bug#17194.
      df092d70
    • unknown's avatar
      Merge quadxeon.mysql.com:/benchmarks/ext3/TOSAVE/tsmith/bk/inno/41 · 8b7282e2
      unknown authored
      into  quadxeon.mysql.com:/benchmarks/ext3/TOSAVE/tsmith/bk/inno/50
      
      
      innobase/fil/fil0fil.c:
        use local
      8b7282e2
    • unknown's avatar
      This ChangeSet must be null-merged to 5.0. Applied innodb-4.1-ss33 · bfccf21d
      unknown authored
      Fixes:
      - Bug #24089: Race condition in fil_flush_file_spaces()
      
      
      innobase/fil/fil0fil.c:
        Applied innodb-4.1-ss33
        
        Revision r33:
        innodb-4.1: Merge r1002 from innodb/trunk:
        
        fil_flush_file_spaces(): Copy the system->unflushed_spaces list to an
        array while holding the mutex.  This removes the crash-triggering
        race condition that was introduced when fixing Bug 15653.  (Bug #24089)
      bfccf21d
    • unknown's avatar
      This ChangeSet must be null-merged to 5.1. Applied innodb-5.0-ss982, -ss998, -ss1003 · e5acf58b
      unknown authored
      Fixes:
      - Bug #15815: Very poor performance with multiple queries running concurrently
      - Bug #22868: 'Thread thrashing' with > 50 concurrent conns under an upd-intensive workloadw
      - Bug #23769: Debug assertion failure with innodb_locks_unsafe_for_binlog
      - Bug #24089: Race condition in fil_flush_file_spaces()
      
      
      innobase/buf/buf0buf.c:
        Applied innodb-5.0-ss982, -ss998, -ss1003
        
        Revision r1000:
        branches/5.0: Merge r999 from trunk:
        
        Reduce buffer pool mutex contention under >= 4 big concurrent
        CPU-bound SELECT queries.  (Bug #22868)
        
        Fix: replace the mutex by one mutex protecting the 'flush list'
        (and the free list) and several mutexes protecting portions of the
        buffer pool, where we keep several indivudual LRU lists of pages.
        
        This patch is from Sunny Bains and Heikki Tuuri.
      innobase/buf/buf0flu.c:
        Applied innodb-5.0-ss982, -ss998, -ss1003
        
        Revision r1000:
        branches/5.0: Merge r999 from trunk:
        
        Reduce buffer pool mutex contention under >= 4 big concurrent
        CPU-bound SELECT queries.  (Bug #22868)
        
        Fix: replace the mutex by one mutex protecting the 'flush list'
        (and the free list) and several mutexes protecting portions of the
        buffer pool, where we keep several indivudual LRU lists of pages.
        
        This patch is from Sunny Bains and Heikki Tuuri.
      innobase/buf/buf0lru.c:
        Applied innodb-5.0-ss982, -ss998, -ss1003
        
        Revision r1000:
        branches/5.0: Merge r999 from trunk:
        
        Reduce buffer pool mutex contention under >= 4 big concurrent
        CPU-bound SELECT queries.  (Bug #22868)
        
        Fix: replace the mutex by one mutex protecting the 'flush list'
        (and the free list) and several mutexes protecting portions of the
        buffer pool, where we keep several indivudual LRU lists of pages.
        
        This patch is from Sunny Bains and Heikki Tuuri.
      innobase/dict/dict0crea.c:
        Applied innodb-5.0-ss982, -ss998, -ss1003
        
        Revision r974:
        branches/5.0: Port r973 from trunk.
        
        Do not break the latching order in TRUNCATE TABLE.
        
        dict_truncate_index_tree(): Replace parameter rec_t* rec with
        btr_pcur_t* pcur.  Reposition pcur before calling btr_create().
        
        sync_thread_add_level(): Remove the relaxation of the assertion added in r968.
      innobase/fil/fil0fil.c:
        Applied innodb-5.0-ss982, -ss998, -ss1003
        
        Revision r1003:
        branches/5.0: Merge r1002 from trunk:
        
        fil_flush_file_spaces(): Copy the system->unflushed_spaces list to an
        array while holding the mutex.  This removes the crash-triggering
        race condition that was introduced when fixing Bug 15653.  (Bug #24089)
      innobase/include/buf0buf.h:
        Applied innodb-5.0-ss982, -ss998, -ss1003
        
        Revision r1000:
        branches/5.0: Merge r999 from trunk:
        
        Reduce buffer pool mutex contention under >= 4 big concurrent
        CPU-bound SELECT queries.  (Bug #22868)
        
        Fix: replace the mutex by one mutex protecting the 'flush list'
        (and the free list) and several mutexes protecting portions of the
        buffer pool, where we keep several indivudual LRU lists of pages.
        
        This patch is from Sunny Bains and Heikki Tuuri.
      innobase/include/buf0buf.ic:
        Applied innodb-5.0-ss982, -ss998, -ss1003
        
        Revision r1000:
        branches/5.0: Merge r999 from trunk:
        
        Reduce buffer pool mutex contention under >= 4 big concurrent
        CPU-bound SELECT queries.  (Bug #22868)
        
        Fix: replace the mutex by one mutex protecting the 'flush list'
        (and the free list) and several mutexes protecting portions of the
        buffer pool, where we keep several indivudual LRU lists of pages.
        
        This patch is from Sunny Bains and Heikki Tuuri.
      innobase/include/dict0crea.h:
        Applied innodb-5.0-ss982, -ss998, -ss1003
        
        Revision r974:
        branches/5.0: Port r973 from trunk.
        
        Do not break the latching order in TRUNCATE TABLE.
        
        dict_truncate_index_tree(): Replace parameter rec_t* rec with
        btr_pcur_t* pcur.  Reposition pcur before calling btr_create().
        
        sync_thread_add_level(): Remove the relaxation of the assertion added in r968.
      innobase/include/sync0arr.h:
        Applied innodb-5.0-ss982, -ss998, -ss1003
        
        Revision r1001:
        branches/5.0: Reduce locking contention:
        
        Bug #15815: 'Thread thrashing' with > 50 concurrent connections under
        an update-intensive workload.
        Fix: Introduce one event per InnoDB semaphore.
        
        This patch is from Sunny Bains and Heikki Tuuri.
        This patch will not be merged to trunk (MySQL/InnoDB 5.1) yet,
        because it tries to address the problem in a different way.
      innobase/include/sync0rw.h:
        Applied innodb-5.0-ss982, -ss998, -ss1003
        
        Revision r1001:
        branches/5.0: Reduce locking contention:
        
        Bug #15815: 'Thread thrashing' with > 50 concurrent connections under
        an update-intensive workload.
        Fix: Introduce one event per InnoDB semaphore.
        
        This patch is from Sunny Bains and Heikki Tuuri.
        This patch will not be merged to trunk (MySQL/InnoDB 5.1) yet,
        because it tries to address the problem in a different way.
      innobase/include/sync0rw.ic:
        Applied innodb-5.0-ss982, -ss998, -ss1003
        
        Revision r1001:
        branches/5.0: Reduce locking contention:
        
        Bug #15815: 'Thread thrashing' with > 50 concurrent connections under
        an update-intensive workload.
        Fix: Introduce one event per InnoDB semaphore.
        
        This patch is from Sunny Bains and Heikki Tuuri.
        This patch will not be merged to trunk (MySQL/InnoDB 5.1) yet,
        because it tries to address the problem in a different way.
      innobase/include/sync0sync.h:
        Applied innodb-5.0-ss982, -ss998, -ss1003
        
        Revision r1001:
        branches/5.0: Reduce locking contention:
        
        Bug #15815: 'Thread thrashing' with > 50 concurrent connections under
        an update-intensive workload.
        Fix: Introduce one event per InnoDB semaphore.
        
        This patch is from Sunny Bains and Heikki Tuuri.
        This patch will not be merged to trunk (MySQL/InnoDB 5.1) yet,
        because it tries to address the problem in a different way.
      innobase/os/os0sync.c:
        Applied innodb-5.0-ss982, -ss998, -ss1003
        
        Revision r1001:
        branches/5.0: Reduce locking contention:
        
        Bug #15815: 'Thread thrashing' with > 50 concurrent connections under
        an update-intensive workload.
        Fix: Introduce one event per InnoDB semaphore.
        
        This patch is from Sunny Bains and Heikki Tuuri.
        This patch will not be merged to trunk (MySQL/InnoDB 5.1) yet,
        because it tries to address the problem in a different way.
      innobase/row/row0mysql.c:
        Applied innodb-5.0-ss982, -ss998, -ss1003
        
        Revision r974:
        branches/5.0: Port r973 from trunk.
        
        Do not break the latching order in TRUNCATE TABLE.
        
        dict_truncate_index_tree(): Replace parameter rec_t* rec with
        btr_pcur_t* pcur.  Reposition pcur before calling btr_create().
        
        sync_thread_add_level(): Remove the relaxation of the assertion added in r968.
      innobase/row/row0sel.c:
        Applied innodb-5.0-ss982, -ss998, -ss1003
        
        Revision r982:
        branches/5.0: row_sel(): Do not try to acquire a LOCK_REC_NOT_GAP lock
        on the supremum record.  Instead, skip to the next record.  (Bug #23769)
        This fix was backported from r623 in the 5.1 tree.
      innobase/srv/srv0start.c:
        Applied innodb-5.0-ss982, -ss998, -ss1003
        
        Revision r926:
        Refer to bug: 22268. Since no one tries to run 5.0 on Windows 95/ME it was
        decided to raise the limit of srv_max_n_threads to 10000 on Windows.
      innobase/sync/sync0arr.c:
        Applied innodb-5.0-ss982, -ss998, -ss1003
        
        Revision r1001:
        branches/5.0: Reduce locking contention:
        
        Bug #15815: 'Thread thrashing' with > 50 concurrent connections under
        an update-intensive workload.
        Fix: Introduce one event per InnoDB semaphore.
        
        This patch is from Sunny Bains and Heikki Tuuri.
        This patch will not be merged to trunk (MySQL/InnoDB 5.1) yet,
        because it tries to address the problem in a different way.
      innobase/sync/sync0rw.c:
        Applied innodb-5.0-ss982, -ss998, -ss1003
        
        Revision r1001:
        branches/5.0: Reduce locking contention:
        
        Bug #15815: 'Thread thrashing' with > 50 concurrent connections under
        an update-intensive workload.
        Fix: Introduce one event per InnoDB semaphore.
        
        This patch is from Sunny Bains and Heikki Tuuri.
        This patch will not be merged to trunk (MySQL/InnoDB 5.1) yet,
        because it tries to address the problem in a different way.
      innobase/sync/sync0sync.c:
        Applied innodb-5.0-ss982, -ss998, -ss1003
        
        Revision r969:
        branches/5.0: Port r968 from trunk:
        
        sync_thread_add_level(): When level == SYNC_TREE_NODE, allow the latching
        order to be violated if the thread holds dict_operation_lock, whose level is
        SYNC_DICT_OPERATION.  This removes the assertion failure of TRUNCATE TABLE
        #ifdef UNIV_SYNC_DEBUG.
        
        
        Revision r974:
        branches/5.0: Port r973 from trunk.
        
        Do not break the latching order in TRUNCATE TABLE.
        
        dict_truncate_index_tree(): Replace parameter rec_t* rec with
        btr_pcur_t* pcur.  Reposition pcur before calling btr_create().
        
        sync_thread_add_level(): Remove the relaxation of the assertion added in r968.
        
        
        Revision r1001:
        branches/5.0: Reduce locking contention:
        
        Bug #15815: 'Thread thrashing' with > 50 concurrent connections under
        an update-intensive workload.
        Fix: Introduce one event per InnoDB semaphore.
        
        This patch is from Sunny Bains and Heikki Tuuri.
        This patch will not be merged to trunk (MySQL/InnoDB 5.1) yet,
        because it tries to address the problem in a different way.
      e5acf58b
  7. 08 Nov, 2006 13 commits