1. 21 Aug, 2007 6 commits
  2. 18 Aug, 2007 5 commits
    • unknown's avatar
      Bug #29307: status.test fails with different Table_locks_immediate · 0f7bdb31
      unknown authored
      Finish premature patch which was accidentally pushed; remove debugging
      info and correct the test.
      
      
      mysql-test/r/status.result:
        Correct test results
      mysql-test/t/status.test:
        Disable query log for one statement, and correct some comments
      0f7bdb31
    • unknown's avatar
      Merge ramayana.hindu.god:/home/tsmith/m/bk/maint/50 · f7e693df
      unknown authored
      into  ramayana.hindu.god:/home/tsmith/m/bk/maint/51
      
      f7e693df
    • unknown's avatar
      Merge ramayana.hindu.god:/home/tsmith/m/bk/51 · 3c387b5b
      unknown authored
      into  ramayana.hindu.god:/home/tsmith/m/bk/maint/51
      
      3c387b5b
    • unknown's avatar
      Merge ramayana.hindu.god:/home/tsmith/m/bk/50 · 2bf1c45e
      unknown authored
      into  ramayana.hindu.god:/home/tsmith/m/bk/maint/50
      
      2bf1c45e
    • unknown's avatar
      Bug #29307: status.test fails with different Table_locks_immediate · 2b698fa7
      unknown authored
      When using --log --log-output=table, we increment Table_locks_immediate
      with every query.  The wait_condition.inc runs a query a variable number
      of times, depending on server load, etc.  This is a problem, when the
      test is checking the Table_locks_immediate value.
      
      Fix is to adjust the Table_locks_immediate value based on how many times
      the wait_condition query was executed.
      
      
      mysql-test/include/wait_condition.inc:
        Add a $wait_condition_reps variable, which lets the caller check how
        many times the wait_condition query was executed.
        
        This is used in the main.status test to adjust the value of
        Table_locks_immediate (it gets incremented with each query
        when --log --log-output=table).
      mysql-test/t/status.test:
        Adjust Table_locks_immediate value based on how many times the
        wait_condition query had to run.
      2b698fa7
  3. 17 Aug, 2007 6 commits
  4. 16 Aug, 2007 8 commits
    • unknown's avatar
      Empty changeset to restart pushbuild · aba43ffc
      unknown authored
      aba43ffc
    • unknown's avatar
      Merge ramayana.hindu.god:/home/tsmith/m/bk/maint/50 · 384f2375
      unknown authored
      into  ramayana.hindu.god:/home/tsmith/m/bk/maint/51
      
      
      sql/mysql_priv.h:
        Auto merged
      sql/sql_base.cc:
        SCCS merged
      sql/sql_handler.cc:
        SCCS merged
      384f2375
    • unknown's avatar
      Bug #29474: 21587 Regression Ever increasing open tables/fd when using HANDLER READ + DELETE · 92babc5c
      unknown authored
      Revert the fix for bug 21587.  That bug will be re-opened, and a new
      fix must be created.
      
      92babc5c
    • unknown's avatar
      Post-merge fix of error number · a24dcbdc
      unknown authored
      a24dcbdc
    • unknown's avatar
      Merge mhansson@bk-internal.mysql.com:/home/bk/mysql-5.0-opt · 4753e62c
      unknown authored
      into  dl145s.mysql.com:/data0/mhansson/my50-bug28570
      
      
      sql/opt_range.cc:
        Auto merged
      mysql-test/r/innodb_mysql.result:
        Bug#28570: Manual Merge
      mysql-test/t/innodb_mysql.test:
        Bug#28570: Manual Merge
      4753e62c
    • unknown's avatar
      Minor code fixes to help Doxygen generate good documentation. · 4cbabbac
      unknown authored
      
      sql/rpl_rli.h:
        Removing redundant "class" keyword.
      4cbabbac
    • unknown's avatar
      Renaming MASTER_INFO to Master_info in order to follow the coding · fa42a821
      unknown authored
      standards (and help Doxygen generating good documentation).
      
      
      sql/ha_ndbcluster.cc:
        Renaming MASTER_INFO to Master_info.
      sql/log_event.cc:
        Renaming MASTER_INFO to Master_info.
      sql/repl_failsafe.cc:
        Renaming MASTER_INFO to Master_info.
      sql/repl_failsafe.h:
        Renaming MASTER_INFO to Master_info.
      sql/rpl_mi.cc:
        Renaming MASTER_INFO to Master_info.
      sql/rpl_mi.h:
        Renaming MASTER_INFO to Master_info.
      sql/rpl_rli.h:
        Renaming MASTER_INFO to Master_info.
      sql/slave.cc:
        Renaming MASTER_INFO to Master_info.
      sql/slave.h:
        Renaming MASTER_INFO to Master_info.
      sql/sql_repl.cc:
        Renaming MASTER_INFO to Master_info.
      sql/sql_repl.h:
        Renaming MASTER_INFO to Master_info.
      fa42a821
    • unknown's avatar
      Renaming RELAY_LOG_INFO and st_relay_log_info to follow coding standards · 8dace2bf
      unknown authored
      (and be more friendly to Doxygen by removing unnecessary typedefs).
      
      
      sql/log.cc:
        Renaming struct st_relay_log_info to class Relay_log_info.
      sql/log.h:
        Renaming struct st_relay_log_info to class Relay_log_info.
      sql/log_event.cc:
        Renaming RELAY_LOG_INFO to Relay_log_info.
      sql/log_event.h:
        Renaming struct st_relay_log_info to class Relay_log_info.
        Renaming RELAY_LOG_INFO to Relay_log_info.
        Removing typedef RELAY_LOG_INFO.
      sql/log_event_old.cc:
        Renaming RELAY_LOG_INFO to Relay_log_info.
      sql/log_event_old.h:
        Renaming RELAY_LOG_INFO to Relay_log_info.
      sql/rpl_mi.h:
        Renaming RELAY_LOG_INFO to Relay_log_info.
      sql/rpl_record.cc:
        Renaming RELAY_LOG_INFO to Relay_log_info.
      sql/rpl_record.h:
        Renaming RELAY_LOG_INFO to Relay_log_info.
      sql/rpl_record_old.cc:
        Renaming RELAY_LOG_INFO to Relay_log_info.
      sql/rpl_record_old.h:
        Renaming RELAY_LOG_INFO to Relay_log_info.
      sql/rpl_rli.cc:
        Renaming struct st_relay_log_info to class Relay_log_info.
        Renaming RELAY_LOG_INFO to Relay_log_info.
      sql/rpl_rli.h:
        Renaming struct st_relay_log_info to class Relay_log_info.
        Renaming RELAY_LOG_INFO to Relay_log_info.
        Removing typedef RELAY_LOG_INFO.
      sql/rpl_utility.cc:
        Renaming RELAY_LOG_INFO to Relay_log_info.
      sql/rpl_utility.h:
        Renaming struct st_relay_log_info to class Relay_log_info.
        Renaming RELAY_LOG_INFO to Relay_log_info.
        Removing typedef RELAY_LOG_INFO.
      sql/slave.cc:
        Renaming RELAY_LOG_INFO to Relay_log_info.
      sql/slave.h:
        Renaming struct st_relay_log_info to class Relay_log_info.
        Renaming RELAY_LOG_INFO to Relay_log_info.
        Removing typedef RELAY_LOG_INFO.
      sql/sql_binlog.cc:
        Renaming RELAY_LOG_INFO to Relay_log_info.
      sql/sql_class.h:
        Renaming struct st_relay_log_info to class Relay_log_info.
        Renaming RELAY_LOG_INFO to Relay_log_info.
        Removing typedef RELAY_LOG_INFO.
      sql/sql_repl.cc:
        Renaming RELAY_LOG_INFO to Relay_log_info.
      8dace2bf
  5. 15 Aug, 2007 15 commits
    • unknown's avatar
      Merge ramayana.hindu.god:/home/tsmith/m/bk/inno/aug13/50 · b363e635
      unknown authored
      into  ramayana.hindu.god:/home/tsmith/m/bk/inno/aug13/51
      
      
      storage/innobase/fsp/fsp0fsp.c:
        Use local (null merge)
      storage/innobase/handler/ha_innodb.cc:
        Use local (null merge)
      storage/innobase/include/fsp0fsp.h:
        Use local (null merge)
      storage/innobase/include/univ.i:
        Use local (null merge)
      storage/innobase/log/log0recv.c:
        Use local (null merge)
      storage/innobase/os/os0file.c:
        Use local (null merge)
      storage/innobase/srv/srv0srv.c:
        Use local (null merge)
      storage/innobase/trx/trx0trx.c:
        Use local (null merge)
      b363e635
    • unknown's avatar
      NULL MERGE this ChangeSet to 5.1 · 6a75e40e
      unknown authored
      Apply innodb-5.0-ss1696 snapshot
      
      Fixes:
      - Bug#20090: InnoDB: Error: trying to declare trx to enter InnoDB
      - Bug#23710: crash_commit_before fails if innodb_file_per_table=1
        At InnoDB startup consider the case where log scan went beyond
        checkpoint_lsn as a crash and initiate crash recovery code path.
      - Bug#28781: InnoDB increments auto-increment value incorrectly with ON DUPLICATE KEY UPDATE
        We need to do some special AUTOINC handling for the following case:
        INSERT INTO t (c1,c2) VALUES(x,y) ON DUPLICATE KEY UPDATE ...
        We need to use the AUTOINC counter that was actually used by
        MySQL in the UPDATE statement, which can be different from the
        value used in the INSERT statement.
      - Bug#29097: fsp_get_available_space_in_free_extents() is capped at 4TB
        Fix by typecasting the variables before multiplying them, so that the
        result of the multiplication is of type "unsigned long long".
      - Bug#29155: Innodb "Parallel recovery" is not prevented
        Fix by enabling file locking on FreeBSD.  It has been disabled because
        InnoDB has refused to start on FreeBSD & LinuxThreads, but now it
        starts just fine.
      
      
      innobase/fsp/fsp0fsp.c:
        Apply innodb-5.0-ss1696 snapshot
        
        Revision r1614:
        branches/5.0:
        
        Merge r1605 from trunk:
        
        Fix Bug#29097 "fsp_get_available_space_in_free_extents() is capped at 4TB"
        by typecasting the variables before multiplying them, so that the result of
        the multiplication is of type "unsigned long long".
        
        I verified this fix by creating a sparse file of 6TB and forcing InnoDB to
        use it without overwriting it with zeroes (by commenting the code that
        overwrites :newraw files).
        
        New type ullint is introduced with the sole purpose of shortening
        "unsigned long long", please do not define it to something else than
        "unsigned long long".
        
        Approved by:	Heikki
      innobase/include/fsp0fsp.h:
        Apply innodb-5.0-ss1696 snapshot
        
        Revision r1614:
        branches/5.0:
        
        Merge r1605 from trunk:
        
        Fix Bug#29097 "fsp_get_available_space_in_free_extents() is capped at 4TB"
        by typecasting the variables before multiplying them, so that the result of
        the multiplication is of type "unsigned long long".
        
        I verified this fix by creating a sparse file of 6TB and forcing InnoDB to
        use it without overwriting it with zeroes (by commenting the code that
        overwrites :newraw files).
        
        New type ullint is introduced with the sole purpose of shortening
        "unsigned long long", please do not define it to something else than
        "unsigned long long".
        
        Approved by:	Heikki
      innobase/include/univ.i:
        Apply innodb-5.0-ss1696 snapshot
        
        Revision r1614:
        branches/5.0:
        
        Merge r1605 from trunk:
        
        Fix Bug#29097 "fsp_get_available_space_in_free_extents() is capped at 4TB"
        by typecasting the variables before multiplying them, so that the result of
        the multiplication is of type "unsigned long long".
        
        I verified this fix by creating a sparse file of 6TB and forcing InnoDB to
        use it without overwriting it with zeroes (by commenting the code that
        overwrites :newraw files).
        
        New type ullint is introduced with the sole purpose of shortening
        "unsigned long long", please do not define it to something else than
        "unsigned long long".
        
        Approved by:	Heikki
      innobase/log/log0recv.c:
        Apply innodb-5.0-ss1696 snapshot
        
        Revision r1608:
        branches/5.0: Bug#23710
        Back port of r1607 from trunk
        
        At InnoDB startup consider the case where log scan went beyond checkpoint_lsn as a crash and initiate crash recovery code path.
        
        reviewed by: Heikki
      innobase/os/os0file.c:
        Apply innodb-5.0-ss1696 snapshot
        
        Revision r1615:
        branches/5.0:
        
        Merge r1613 from trunk:
        
        Fix Bug#29155 by enabling file locking on FreeBSD.
        It has been disabled because InnoDB has refused to start on
        FreeBSD & LinuxThreads, but now it starts just fine.
        
        Approved by:	Heikki
      innobase/srv/srv0srv.c:
        Apply innodb-5.0-ss1696 snapshot
        
        Revision r1552:
        branches/5.0:
        Fix Bug#20090 as suggested in the bug followup by Heikki.
        
        Approved by:	Heikki
      innobase/trx/trx0trx.c:
        Apply innodb-5.0-ss1696 snapshot
        
        Revision r1596:
        branches/5.0: Merge r1595 from trunk:
        
        trx_commit_for_mysql(): Avoid acquiring and releasing kernel_mutex when
        trx->sess or trx_dummy_sess is non-NULL.
      sql/ha_innodb.cc:
        Apply innodb-5.0-ss1696 snapshot
        
        Revision r1614:
        branches/5.0:
        
        Merge r1605 from trunk:
        
        Fix Bug#29097 "fsp_get_available_space_in_free_extents() is capped at 4TB"
        by typecasting the variables before multiplying them, so that the result of
        the multiplication is of type "unsigned long long".
        
        I verified this fix by creating a sparse file of 6TB and forcing InnoDB to
        use it without overwriting it with zeroes (by commenting the code that
        overwrites :newraw files).
        
        New type ullint is introduced with the sole purpose of shortening
        "unsigned long long", please do not define it to something else than
        "unsigned long long".
        
        Approved by:	Heikki
        
        
        Revision r1695:
        branches/5.0: Merge a change from MySQL AB:
        
        ChangeSet@1.2463.166.1  2007-06-20 19:22:27+03:00  monty@mysql.fi
        
        Allow multiple calls to mysql_server_end()
        (Part of fix for Bug 25621 Error in my_thread_global_end(): 1 threads
        didn't exit)
        Give correct error message if InnoDB table is not found
        (This allows us to drop a an innodb table that is not in the InnoDB registery)
        
        ha_innodb.cc:
          Give correct error message if InnoDB table is not found.
          (This allows us to drop a an innodb table that is not in the InnoDB
          registery)
        
        
        Revision r1606:
        branches/5.0: Formatting corrections.
        
        spotted by: Vasil
        
        
        Revision r1691:
        branches/5.0: Merge a change from MySQL AB:
        
        ChangeSet@1.2463.261.1  2007-07-20 14:17:15+03:00  gkodinov@magare.gmz
          Bug 29644: alter table hangs if records locked in share mode 
          by long running transaction
          
          On Windows opened files can't be deleted. There was a special
          upgraded lock mode (TL_WRITE instead of TL_WRITE_ALLOW_READ) 
          in ALTER TABLE to make sure nobody has the table opened
          when deleting the old table in ALTER TABLE. This special mode
          was causing ALTER TABLE to hang waiting on a lock inside InnoDB.
          This special lock is no longer necessary as the server is 
          closing the tables it needs to delete in ALTER TABLE.
          Fixed by removing the special lock.
          Note that this also reverses the fix for bug 17264 that deals with
          another consequence of this special lock mode being used.
        
        sql/ha_innodb.cc: Bug 29644: reverse the (now excessive) fix
        for bug 17264 (but leave the test case).
        
        
        Revision r1601:
        branches/5.0: Fix for bug#28781
        We need to do some special AUTOINC handling for the following case:
        
        INSERT INTO t (c1,c2) VALUES(x,y) ON DUPLICATE KEY UPDATE ...
        
        We need to use the AUTOINC counter that was actually used by
        MySQL in the UPDATE statement, which can be different from the
        value used in the INSERT statement.
        
        approved by: Sunny
        
        
        Revision r1692:
        branches/5.0: Merge a change from MySQL AB:
        
        ChangeSet@1.2463.267.1  2007-07-30 17:14:34+04:00  evgen@local
          Bug 24989: The DEADLOCK error is improperly handled by InnoDB.
          
          When innodb detects a deadlock it calls ha_rollback_trans() to rollback the 
          main transaction. But such action isn't allowed from inside of triggers and
          functions. When it happen the 'Explicit or implicit commit' error is thrown
          even if there is no commit/rollback statements in the trigger/function. This
          leads to the user confusion.
          
          Now the convert_error_code_to_mysql() function doesn't call the 
          ha_rollback_trans() function directly but rather calls the
          mark_transaction_to_rollback function and returns an error.
          The sp_rcontext::find_handler() now doesn't allow errors to be caught by the
          trigger/function error handlers when the thd->is_fatal_sub_stmt_error flag
          is set. Procedures are still allowed to catch such errors.
          The sp_rcontext::find_handler function now accepts a THD handle as a parameter.
          The transaction_rollback_request and the is_fatal_sub_stmt_error flags are 
          added to the THD class. The are initialized by the THD class constructor.
          Now the ha_autocommit_or_rollback function rolls back main transaction
          when not in a sub statement and the thd->transaction_rollback_request
          is set.
          The THD::restore_sub_statement_state function now resets the 
          thd->is_fatal_sub_stmt_error flag on exit from a sub-statement.
        
        innodb-big.test, innodb-big.result:
          Added a test case for the bug 24989: The DEADLOCK error is improperly
          handled by InnoDB.
        
        sql/ha_innodb.cc:
          Bug 24989: The DEADLOCK error is improperly handled by InnoDB.
          Now the convert_error_code_to_mysql() function doesn't call the
          ha_rollback_trans() function directly but rather calls the
          mark_transaction_to_rollback function and returns an error.
        
        
        Revision r1693:
        branches/5.0: Merge a change from MySQL AB:
        
        ChangeSet@1.2489.5.1  2007-07-31 17:42:48+04:00  evgen@local
          ha_innodb.cc:
            Warning fixed.
      6a75e40e
    • unknown's avatar
      Merge ramayana.hindu.god:/home/tsmith/m/bk/maint/50 · 3ce988f6
      unknown authored
      into  ramayana.hindu.god:/home/tsmith/m/bk/maint/51
      
      3ce988f6
    • unknown's avatar
      Merge ramayana.hindu.god:/home/tsmith/m/bk/51 · 37b598d2
      unknown authored
      into  ramayana.hindu.god:/home/tsmith/m/bk/maint/51
      
      
      mysql-test/r/innodb.result:
        Auto merged
      sql/sql_table.cc:
        Auto merged
      37b598d2
    • unknown's avatar
      Merge ramayana.hindu.god:/home/tsmith/m/bk/50 · 096eb237
      unknown authored
      into  ramayana.hindu.god:/home/tsmith/m/bk/maint/50
      
      096eb237
    • unknown's avatar
      Merge mysql.com:/nfsdisk1/lars/MERGE/mysql-5.0-merge · 14c90b75
      unknown authored
      into  mysql.com:/nfsdisk1/lars/MERGE/mysql-5.1-merge
      
      14c90b75
    • unknown's avatar
      Merge mysql.com:/nfsdisk1/lars/MERGE/mysql-4.1-merge · b3fb975c
      unknown authored
      into  mysql.com:/nfsdisk1/lars/MERGE/mysql-5.0-merge
      
      b3fb975c
    • unknown's avatar
      Merge mysql.com:/nfsdisk1/lars/bkroot/mysql-5.1-new-rpl · 447489e4
      unknown authored
      into  mysql.com:/nfsdisk1/lars/MERGE/mysql-5.1-merge
      
      
      mysql-test/suite/rpl/r/rpl_extraCol_innodb.result:
        Auto merged
      mysql-test/suite/rpl/r/rpl_extraCol_myisam.result:
        Auto merged
      mysql-test/suite/rpl_ndb/r/rpl_ndb_extraCol.result:
        Auto merged
      sql/field.cc:
        Auto merged
      sql/log_event.cc:
        Auto merged
      sql/field.h:
        Manual merge
      447489e4
    • unknown's avatar
      Merge mysql.com:/nfsdisk1/lars/bkroot/mysql-5.0-rpl · 6c3c10c9
      unknown authored
      into  mysql.com:/nfsdisk1/lars/MERGE/mysql-5.0-merge
      
      6c3c10c9
    • unknown's avatar
      Merge mysql.com:/nfsdisk1/lars/bkroot/mysql-4.1-rpl · a40be346
      unknown authored
      into  mysql.com:/nfsdisk1/lars/MERGE/mysql-4.1-merge
      
      a40be346
    • unknown's avatar
      Fixed bug #30396. · 42a6a150
      unknown authored
      The bug caused memory corruption for some queries with top OR level
      in the WHERE condition if they contained equality predicates and 
      other sargable predicates in disjunctive parts of the condition.
      
      The corruption happened because the upper bound of the memory
      allocated for KEY_FIELD and SARGABLE_PARAM internal structures
      containing info about potential lookup keys was calculated incorrectly
      in some cases. In particular it was calculated incorrectly when the
      WHERE condition was an OR formula with disjuncts being AND formulas
      including equalities and other sargable predicates.
      
      
      mysql-test/r/select.result:
        Added a test case for bug #30396.
      mysql-test/t/select.test:
        Added a test case for bug #30396.
      sql/item_cmpfunc.h:
        Removed max_members from the COND_EQUAL class as not useful anymore.
      sql/sql_base.cc:
        Added the max_equal_elems field to the st_select_lex structure.
      sql/sql_lex.cc:
        Added the max_equal_elems field to the st_select_lex structure.
      sql/sql_lex.h:
        Added the max_equal_elems field to the st_select_lex structure.
        The field contains the maximal number of elements in multiple equalities
        built for the query conditions.
      sql/sql_select.cc:
        Fixed bug #30396.
        The bug caused memory corruption for some queries with top OR level
        in the WHERE condition if they contained equality predicates and 
        other sargable predicates in disjunctive parts of the condition.
        
        The corruption happened because the upper bound of the memory
        allocated for KEY_FIELD and SARGABLE_PARAM internal structures
        containing info about potential lookup keys was calculated incorrectly
        in some cases. In particular it was calculated incorrectly when the
        WHERE condition was an OR formula with disjuncts being AND formulas
        including equalities and other sargable predicates.
         
        The max_equal_elems field to the st_select_lex structure is used now
        to calculate the above mentioned upper bound. The field contains the
        maximal number of elements in multiple equalities built for the query
        conditions.
      42a6a150
    • unknown's avatar
      fixed diff · 49da78e4
      unknown authored
      49da78e4
    • unknown's avatar
      mysql_client_test.c: · de02dc9e
      unknown authored
        Post fix for the bug#29948.
      
      
      tests/mysql_client_test.c:
        Post fix for the bug#29948.
      de02dc9e
    • unknown's avatar
      disabled rpl_innodb_mixed_dml · 5c09c229
      unknown authored
      
      mysql-test/suite/rpl/include/rpl_mixed_dml.inc:
        fix for tmp directory
      5c09c229
    • unknown's avatar
      Fixed path to tmp directory for rpl_mixed_dml.inc · e6886f1c
      unknown authored
      
      mysql-test/suite/rpl/include/rpl_mixed_dml.inc:
        Fixed path to tmp directory
      e6886f1c