1. 26 May, 2009 2 commits
    • vasil's avatar
      branches/5.1: · 7017e3ba
      vasil authored
      Preparation for the fix of
      Bug#45097 Hang during recovery, redo logs for doublewrite buffer pages
      
      Do not include unnecessary headers mtr0log.h and fut0lst.h in trx0sys.h
      and include fsp0fsp.h just before it is needed. This is needed in order
      to be able to use TRX_SYS_SPACE in mtr0log.ic.
      7017e3ba
    • vasil's avatar
      branches/5.1: · f8210cf6
      vasil authored
      Preparation for the fix of
      Bug#45097 Hang during recovery, redo logs for doublewrite buffer pages 
      
      Non-functional change: move FSP_* macros from fsp0fsp.h to a new file
      fsp0types.h. This is needed in order to be able to use FSP_EXTENT_SIZE 
      in mtr0log.ic.
      f8210cf6
  2. 14 May, 2009 1 commit
    • marko's avatar
      branches/5.1: Prevent a race condition in innobase_commit() by ensuring · 4047915e
      marko authored
      that innodb_commit_concurrency>0 remains constant at run time. (Bug #42101)
      
      srv_commit_concurrency: Make this a static variable in ha_innodb.cc.
      
      innobase_commit_concurrency_validate(): Check that innodb_commit_concurrency
      is not changed from or to 0 at run time.  This is needed, because
      innobase_commit() assumes that innodb_commit_concurrency>0 remains constant.
      Without this limitation, the checks for innodb_commit_concurrency>0
      in innobase_commit() should be removed and that function would have to
      acquire and release commit_cond_m at least twice per invocation.
      Normally, innodb_commit_concurrency=0, and introducing the mutex operations
      would mean significant overhead.
      
      innodb_bug42101.test, innodb_bug42101-nonzero.test: Test cases.
      
      rb://123 approved by Heikki Tuuri
      4047915e
  3. 13 May, 2009 1 commit
  4. 17 Apr, 2009 1 commit
    • vasil's avatar
      branches/5.1: · 4a1eac6d
      vasil authored
      Merge a change from MySQL:
      
        ------------------------------------------------------------
        revno: 2728.10.2
        committer: Ignacio Galarza <iggy@mysql.com>
        branch nick: mysql-5.1-bugteam-bug29125
        timestamp: Fri 2009-02-13 11:41:47 -0500
        message:
          Bug#29125 Windows Server X64: so many compiler warnings
          - Remove bothersome warning messages.  This change focuses on the warnings 
          that are covered by the ignore file: support-files/compiler_warnings.supp.
          - Strings are guaranteed to be max uint in length
        modified:
          client/mysql_upgrade.c
          client/mysqladmin.cc
          client/mysqlbinlog.cc
          client/mysqlcheck.c
          client/mysqldump.c
          client/mysqlslap.c
          client/mysqltest.cc
          client/sql_string.cc
          extra/comp_err.c
          extra/yassl/src/buffer.cpp
          extra/yassl/taocrypt/include/block.hpp
          extra/yassl/taocrypt/src/algebra.cpp
          extra/yassl/taocrypt/src/asn.cpp
          include/config-win.h
          libmysql/libmysql.c
          mysys/array.c
          mysys/base64.c
          mysys/charset.c
          mysys/checksum.c
          mysys/default.c
          mysys/default_modify.c
          mysys/hash.c
          mysys/mf_keycache.c
          mysys/mf_tempdir.c
          mysys/my_append.c
          mysys/my_compress.c
          mysys/my_conio.c
          mysys/my_copy.c
          mysys/my_getwd.c
          mysys/my_pread.c
          mysys/my_quick.c
          mysys/my_read.c
          mysys/safemalloc.c
          mysys/string.c
          server-tools/instance-manager/buffer.cc
          server-tools/instance-manager/instance.cc
          server-tools/instance-manager/options.cc
          server-tools/instance-manager/parse.h
          sql-common/client.c
          sql-common/my_user.c
          sql/event_data_objects.cc
          sql/event_parse_data.cc
          sql/events.cc
          sql/gen_lex_hash.cc
          sql/item.h
          sql/item_func.cc
          sql/item_strfunc.cc
          sql/item_timefunc.cc
          sql/lock.cc
          sql/log_event.cc
          sql/log_event.h
          sql/log_event_old.cc
          sql/net_serv.cc
          sql/sp_head.h
          sql/spatial.h
          sql/sql_class.h
          sql/sql_connect.cc
          sql/sql_crypt.cc
          sql/sql_error.cc
          sql/sql_insert.cc
          sql/sql_lex.cc
          sql/sql_lex.h
          sql/sql_load.cc
          sql/sql_prepare.cc
          sql/sql_profile.cc
          sql/sql_repl.cc
          sql/sql_servers.cc
          sql/sql_string.cc
          sql/sql_table.cc
          sql/sql_trigger.cc
          sql/sql_udf.cc
          sql/sql_view.cc
          sql/udf_example.c
          sql/uniques.cc
          storage/archive/azio.c
          storage/archive/azlib.h
          storage/csv/ha_tina.cc
          storage/csv/ha_tina.h
          storage/csv/transparent_file.h
          storage/federated/ha_federated.cc
          storage/federated/ha_federated.h
          storage/heap/hp_write.c
          storage/innobase/handler/ha_innodb.cc
          storage/innobase/include/pars0pars.h
          storage/myisam/ha_myisam.cc
          storage/myisam/mi_check.c
          storage/myisam/mi_packrec.c
          storage/myisam/mi_search.c
          storage/myisam/rt_index.c
          storage/myisammrg/ha_myisammrg.cc
          strings/ctype.c
          strings/my_vsnprintf.c
          tests/bug25714.c
          tests/mysql_client_test.c
      4a1eac6d
  5. 15 Apr, 2009 1 commit
    • vasil's avatar
      branches/5.1: · 7cf2e8ff
      vasil authored
      Merge a change from MySQL (looks like this is against 5.0 but they later
      merged it to 5.1):
      
        ------------------------------------------------------------
        revno: 1810.3846.1
        committer: Alexey Botchkov <holyfoot@mysql.com>
        branch nick: 31435
        timestamp: Tue 2008-11-11 14:42:32 +0400
        message:
          Bug#31435 ha_innodb.cc:3983: ulint convert_search_mode_to_innobase(ha_rkey_function): Asse 
              I think we don't need to issue an error statement in the convert_search_mode_to_innobase().
              Returning the PAGE_CUR_UNSUPP value is enough as allows to handle this
              case depending on the requirements.
          
          per-file comments:
            sql/ha_innodb.cc 
          Bug#31435 ha_innodb.cc:3983: ulint convert_search_mode_to_innobase(ha_rkey_function): Asse 
               no error issued in convert_search_mode_to_innobase.
               ha_innobase::records_in_range() returns HA_POS_ERROR if search mode isn't supported.
        modified:
          sql/ha_innodb.cc
      
      7cf2e8ff
  6. 14 Apr, 2009 1 commit
    • vasil's avatar
      branches/5.1: · 3a4a53e7
      vasil authored
      When using the random function, first take the modulus by the number of pages
      and then typecast to ulint.
      
      This is a followup to r4699 - the fix of Bug#43660.
      3a4a53e7
  7. 09 Apr, 2009 1 commit
    • vasil's avatar
      branches/5.1: · af9b64a9
      vasil authored
      Fix Bug#43660 SHOW INDEXES/ANALYZE does NOT update cardinality for indexes
      of InnoDB table
      
      by replacing the PRNG that is used to pick random pages with a better
      one.
      
      This is based on r4670 but also adds a new configuration option and
      enables the fix only if this option is changed. Please skip the present
      revision when merging.
      
      Approved by:	Heikki (via email)
      
      af9b64a9
  8. 06 Apr, 2009 1 commit
    • vasil's avatar
      branches/5.1: · a049637a
      vasil authored
      Followup to r4575 and the fix of Bug#43309 Test main.innodb can't be run twice:
      
      Add an explanatory comment, as suggested by Patrick Crews in the bug report.
      a049637a
  9. 30 Mar, 2009 4 commits
    • vasil's avatar
      branches/5.1: · f4f265e8
      vasil authored
      Revert a change to Makefile.am that I committed accidentally in c4574.
      f4f265e8
    • vasil's avatar
      branches/5.1: · 6e783d9f
      vasil authored
      Fix Bug#43309 Test main.innodb can't be run twice
      
      Make the innodb mysql-test more flexible by inspecting how much a
      variable of interest has changed since the start of the test. Do not
      assume the variables have zero values at the start of the test.
      6e783d9f
    • vasil's avatar
      branches/5.1: · 0a788fe6
      vasil authored
      Restore the state of INNODB_THREAD_CONCURRENCY to silence this warning:
      
        TEST                                      RESULT   TIME (ms)
        ------------------------------------------------------------
        
        worker[1] Using MTR_BUILD_THREAD 250, with reserved ports 12500..12509
        main.innodb                              [ pass ]   8803
        
        MTR's internal check of the test case 'main.innodb' failed.
        This means that the test case does not preserve the state that existed
        before the test case was executed.  Most likely the test case did not
        do a proper clean-up.
        This is the diff of the states of the servers before and after the
        test case was executed:
        mysqltest: Logging to '/tmp/autotest.sh-20090330_033000-5.1.5Hg8CY/mysql-5.1/mysql-test/var/tmp/check-mysqld_1.log'.
        mysqltest: Results saved in '/tmp/autotest.sh-20090330_033000-5.1.5Hg8CY/mysql-5.1/mysql-test/var/tmp/check-mysqld_1.result'.
        mysqltest: Connecting to server localhost:12500 (socket /tmp/autotest.sh-20090330_033000-5.1.5Hg8CY/mysql-5.1/mysql-test/var/tmp/mysqld.1.sock) as 'root', connection 'default', attempt 0 ...
        mysqltest: ... Connected.
        mysqltest: Start processing test commands from './include/check-testcase.test' ...
        mysqltest: ... Done processing test commands.
        --- /tmp/autotest.sh-20090330_033000-5.1.5Hg8CY/mysql-5.1/mysql-test/var/tmp/check-mysqld_1.result	2009-03-30 14:12:31.000000000 +0300
        +++ /tmp/autotest.sh-20090330_033000-5.1.5Hg8CY/mysql-5.1/mysql-test/var/tmp/check-mysqld_1.reject	2009-03-30 14:12:41.000000000 +0300
        @@ -99,7 +99,7 @@
         INNODB_SUPPORT_XA	ON
         INNODB_SYNC_SPIN_LOOPS	20
         INNODB_TABLE_LOCKS	ON
        -INNODB_THREAD_CONCURRENCY	8
        +INNODB_THREAD_CONCURRENCY	16
         INNODB_THREAD_SLEEP_DELAY	10000
         INSERT_ID	0
         INTERACTIVE_TIMEOUT	28800
        
        mysqltest: Result content mismatch
        
        not ok
      0a788fe6
    • vasil's avatar
      branches/5.1: · 8622f8a3
      vasil authored
      Fix email address from dev@innodb.com to innodb_dev_ww@oracle.com
      8622f8a3
  10. 19 Mar, 2009 1 commit
  11. 12 Mar, 2009 2 commits
  12. 05 Mar, 2009 2 commits
    • vasil's avatar
      branches/5.1: · a12be355
      vasil authored
      Merge a change from MySQL:
      
        ------------------------------------------------------------
        revno: 2747
        committer: Timothy Smith <timothy.smith@sun.com>
        branch nick: 51
        timestamp: Fri 2009-01-16 17:49:07 +0100
        message:
          Add another cast to ignore int/ulong difference in error types, silence warning on Win64
        modified:
          storage/innobase/handler/ha_innodb.cc
      a12be355
    • vasil's avatar
      branches/5.1: · 181b8ce9
      vasil authored
      Merge a change from MySQL:
      
        ------------------------------------------------------------
        revno: 2728.19.1
        committer: Alfranio Correia <alfranio.correia@sun.com>
        branch nick: mysql-5.1-bugteam
        timestamp: Tue 2009-02-03 11:36:46 +0000
        message:
          BUG#42445 Warning messages in innobase/handler/ha_innodb.cc
                
          There was a type casting problem in the storage/innobase/handler/ha_innodb.cc,
          (int ha_innobase::write_row(...)). Innobase uses has an internal error variable
          of type 'ulint' while mysql uses an 'int'. 
                
          To fix the problem the function manipulates an error variable of
          type 'ulint' and only casts it into 'int' when needs to return the value.
        modified:
          storage/innobase/handler/ha_innodb.cc
      181b8ce9
  13. 02 Mar, 2009 1 commit
    • sunny's avatar
      branches/5.1: Bug#43203: Overflow from auto incrementing causes server segv · 6059793a
      sunny authored
      It was not a SIGSEGV but an assertion failure. The assertion was checking
      the invariant that *first_value passed in by MySQL doesn't contain a value
      that is greater than the max value for that type. The assertion has been
      changed to a check and if the value is greater than the max we report a
      generic AUTOINC failure.
      
      rb://93
      Approved by Heikki
      6059793a
  14. 25 Feb, 2009 1 commit
    • sunny's avatar
      branches/5.1: Fix Bug#42714 AUTO_INCREMENT errors in 5.1.31. There are two · 5ead65d2
      sunny authored
      changes to the autoinc handling.
      
      1. To fix the immediate problem from the bug report, we must ensure that the
         value written to the table is always less than the max value stored in
         dict_table_t.
      
      2. The second related change is that according to MySQL documentation when
         the offset is greater than the increment, we should ignore the offset.
      5ead65d2
  15. 11 Feb, 2009 1 commit
  16. 08 Feb, 2009 2 commits
    • vasil's avatar
      branches/5.1: · 284aeacd
      vasil authored
      Merge a change from MySQL:
      
      [looks like the changes to innodb-autoinc.test were made as part of
      the following huge merge, but we are merging only changes to that file]
      
        ------------------------------------------------------------
        revno: 2546.47.1
        committer: Luis Soares <luis.soares@sun.com>
        branch nick: 5.1-rpl
        timestamp: Fri 2009-01-23 13:22:05 +0100
        message:
          merge: 5.1 -> 5.1-rpl
          conflicts:
            Text conflict in client/mysqltest.cc
            Text conflict in mysql-test/include/wait_until_connected_again.inc
            Text conflict in mysql-test/lib/mtr_report.pm
            Text conflict in mysql-test/mysql-test-run.pl
            Text conflict in mysql-test/r/events_bugs.result
            Text conflict in mysql-test/r/log_state.result
            Text conflict in mysql-test/r/myisam_data_pointer_size_func.result
            Text conflict in mysql-test/r/mysqlcheck.result
            Text conflict in mysql-test/r/query_cache.result
            Text conflict in mysql-test/r/status.result
            Text conflict in mysql-test/suite/binlog/r/binlog_index.result
            Text conflict in mysql-test/suite/binlog/r/binlog_innodb.result
            Text conflict in mysql-test/suite/rpl/r/rpl_packet.result
            Text conflict in mysql-test/suite/rpl/t/rpl_packet.test
            Text conflict in mysql-test/t/disabled.def
            Text conflict in mysql-test/t/events_bugs.test
            Text conflict in mysql-test/t/log_state.test
            Text conflict in mysql-test/t/myisam_data_pointer_size_func.test
            Text conflict in mysql-test/t/mysqlcheck.test
            Text conflict in mysql-test/t/query_cache.test
            Text conflict in mysql-test/t/rpl_init_slave_func.test
            Text conflict in mysql-test/t/status.test
        removed:
          mysql-test/suite/parts/r/partition_bit_ndb.result
          mysql-test/suite/parts/t/partition_bit_ndb.test
          mysql-test/suite/parts/t/partition_sessions.test
          mysql-test/suite/sys_vars/inc/tmp_table_size_basic.inc
          mysql-test/suite/sys_vars/r/tmp_table_size_basic_32.result
          mysql-test/suite/sys_vars/r/tmp_table_size_basic_64.result
          mysql-test/suite/sys_vars/t/tmp_table_size_basic_32.test
          mysql-test/suite/sys_vars/t/tmp_table_size_basic_64.test
          mysql-test/t/log_bin_trust_function_creators_func-master.opt
          mysql-test/t/rpl_init_slave_func-slave.opt
        added:
          mysql-test/include/check_events_off.inc
          mysql-test/include/cleanup_fake_relay_log.inc
          mysql-test/include/have_simple_parser.inc
          mysql-test/include/no_running_event_scheduler.inc
          mysql-test/include/no_running_events.inc
          mysql-test/include/running_event_scheduler.inc
          mysql-test/include/setup_fake_relay_log.inc
          mysql-test/include/wait_condition_sp.inc
          mysql-test/r/fulltext_plugin.result
          mysql-test/r/have_simple_parser.require
          mysql-test/r/innodb_bug38231.result
          mysql-test/r/innodb_bug39438.result
          mysql-test/r/innodb_mysql_rbk.result
          mysql-test/r/partition_innodb_semi_consistent.result
          mysql-test/r/query_cache_28249.result
          mysql-test/r/status2.result
          mysql-test/std_data/bug40482-bin.000001
          mysql-test/suite/binlog/r/binlog_innodb_row.result
          mysql-test/suite/binlog/t/binlog_innodb_row.test
          mysql-test/suite/rpl/r/rpl_binlog_corruption.result
          mysql-test/suite/rpl/t/rpl_binlog_corruption-master.opt
          mysql-test/suite/rpl/t/rpl_binlog_corruption.test
          mysql-test/suite/sys_vars/r/tmp_table_size_basic.result
          mysql-test/suite/sys_vars/t/tmp_table_size_basic.test
          mysql-test/t/fulltext_plugin-master.opt
          mysql-test/t/fulltext_plugin.test
          mysql-test/t/innodb_bug38231.test
          mysql-test/t/innodb_bug39438-master.opt
          mysql-test/t/innodb_bug39438.test
          mysql-test/t/innodb_mysql_rbk-master.opt
          mysql-test/t/innodb_mysql_rbk.test
          mysql-test/t/partition_innodb_semi_consistent-master.opt
          mysql-test/t/partition_innodb_semi_consistent.test
          mysql-test/t/query_cache_28249.test
          mysql-test/t/status2.test
        renamed:
          mysql-test/suite/funcs_1/r/is_collation_character_set_applicability.result => mysql-test/suite/funcs_1/r/is_coll_char_set_appl.result
          mysql-test/suite/funcs_1/t/is_collation_character_set_applicability.test => mysql-test/suite/funcs_1/t/is_coll_char_set_appl.test
        modified:
          .bzr-mysql/default.conf
          CMakeLists.txt
          client/mysql.cc
          client/mysql_upgrade.c
          client/mysqlcheck.c
          client/mysqltest.cc
          configure.in
          extra/resolve_stack_dump.c
          extra/yassl/include/openssl/ssl.h
          include/config-win.h
          include/m_ctype.h
          include/my_global.h
          mysql-test/extra/binlog_tests/database.test
          mysql-test/extra/rpl_tests/rpl_auto_increment.test
          mysql-test/include/commit.inc
          mysql-test/include/have_32bit.inc
          mysql-test/include/have_64bit.inc
          mysql-test/include/index_merge1.inc
          mysql-test/include/linux_sys_vars.inc
          mysql-test/include/windows_sys_vars.inc
          mysql-test/lib/mtr_report.pm
          mysql-test/mysql-test-run.pl
          mysql-test/r/alter_table.result
          mysql-test/r/commit_1innodb.result
          mysql-test/r/create.result
          mysql-test/r/csv.result
          mysql-test/r/ctype_ucs.result
          mysql-test/r/date_formats.result
          mysql-test/r/events_bugs.result
          mysql-test/r/events_scheduling.result
          mysql-test/r/fulltext.result
          mysql-test/r/func_if.result
          mysql-test/r/func_in.result
          mysql-test/r/func_str.result
          mysql-test/r/func_time.result
          mysql-test/r/grant.result
          mysql-test/r/index_merge_myisam.result
          mysql-test/r/information_schema.result
          mysql-test/r/innodb-autoinc.result
          mysql-test/r/innodb.result
          mysql-test/r/innodb_mysql.result
          mysql-test/r/log_bin_trust_function_creators_func.result
          mysql-test/r/log_state.result
          mysql-test/r/myisampack.result
          mysql-test/r/mysql.result
          mysql-test/r/mysqlcheck.result
          mysql-test/r/partition_datatype.result
          mysql-test/r/partition_mgm.result
          mysql-test/r/partition_pruning.result
          mysql-test/r/query_cache.result
          mysql-test/r/read_buffer_size_basic.result
          mysql-test/r/read_rnd_buffer_size_basic.result
          mysql-test/r/rpl_init_slave_func.result
          mysql-test/r/select.result
          mysql-test/r/status.result
          mysql-test/r/strict.result
          mysql-test/r/temp_table.result
          mysql-test/r/type_bit.result
          mysql-test/r/type_date.result
          mysql-test/r/type_float.result
          mysql-test/r/warnings_engine_disabled.result
          mysql-test/r/xml.result
          mysql-test/suite/binlog/r/binlog_database.result
          mysql-test/suite/binlog/r/binlog_index.result
          mysql-test/suite/binlog/r/binlog_innodb.result
          mysql-test/suite/binlog/r/binlog_row_mix_innodb_myisam.result
          mysql-test/suite/binlog/t/binlog_innodb.test
          mysql-test/suite/funcs_1/r/is_columns_is.result
          mysql-test/suite/funcs_1/r/is_engines.result
          mysql-test/suite/funcs_1/r/storedproc.result
          mysql-test/suite/funcs_1/storedproc/param_check.inc
          mysql-test/suite/funcs_2/t/disabled.def
          mysql-test/suite/ndb/t/disabled.def
          mysql-test/suite/parts/r/partition_bit_innodb.result
          mysql-test/suite/parts/r/partition_bit_myisam.result
          mysql-test/suite/parts/r/partition_special_innodb.result
          mysql-test/suite/parts/t/disabled.def
          mysql-test/suite/parts/t/partition_special_innodb.test
          mysql-test/suite/parts/t/partition_value_innodb.test
          mysql-test/suite/parts/t/partition_value_myisam.test
          mysql-test/suite/parts/t/partition_value_ndb.test
          mysql-test/suite/rpl/r/rpl_auto_increment.result
          mysql-test/suite/rpl/r/rpl_packet.result
          mysql-test/suite/rpl/r/rpl_row_create_table.result
          mysql-test/suite/rpl/r/rpl_slave_skip.result
          mysql-test/suite/rpl/r/rpl_trigger.result
          mysql-test/suite/rpl/t/disabled.def
          mysql-test/suite/rpl/t/rpl_packet.test
          mysql-test/suite/rpl/t/rpl_row_create_table.test
          mysql-test/suite/rpl/t/rpl_slave_skip.test
          mysql-test/suite/rpl/t/rpl_trigger.test
          mysql-test/suite/rpl_ndb/t/disabled.def
          mysql-test/suite/sys_vars/inc/key_buffer_size_basic.inc
          mysql-test/suite/sys_vars/inc/sort_buffer_size_basic.inc
          mysql-test/suite/sys_vars/r/key_buffer_size_basic_32.result
          mysql-test/suite/sys_vars/r/key_buffer_size_basic_64.result
          mysql-test/suite/sys_vars/r/sort_buffer_size_basic_32.result
          mysql-test/suite/sys_vars/r/sort_buffer_size_basic_64.result
          mysql-test/t/alter_table.test
          mysql-test/t/create.test
          mysql-test/t/csv.test
          mysql-test/t/ctype_ucs.test
          mysql-test/t/date_formats.test
          mysql-test/t/disabled.def
          mysql-test/t/events_bugs.test
          mysql-test/t/events_scheduling.test
          mysql-test/t/fulltext.test
          mysql-test/t/func_if.test
          mysql-test/t/func_in.test
          mysql-test/t/func_str.test
          mysql-test/t/func_time.test
          mysql-test/t/grant.test
          mysql-test/t/information_schema.test
          mysql-test/t/innodb-autoinc.test
          mysql-test/t/innodb.test
          mysql-test/t/innodb_mysql.test
          mysql-test/t/log_bin_trust_function_creators_func.test
          mysql-test/t/log_state.test
          mysql-test/t/myisam_data_pointer_size_func.test
          mysql-test/t/myisampack.test
          mysql-test/t/mysql.test
          mysql-test/t/mysqlcheck.test
          mysql-test/t/partition_innodb_stmt.test
          mysql-test/t/partition_mgm.test
          mysql-test/t/partition_pruning.test
          mysql-test/t/query_cache.test
          mysql-test/t/rpl_init_slave_func.test
          mysql-test/t/select.test
          mysql-test/t/status.test
          mysql-test/t/strict.test
          mysql-test/t/temp_table.test
          mysql-test/t/type_bit.test
          mysql-test/t/type_date.test
          mysql-test/t/type_float.test
          mysql-test/t/warnings_engine_disabled.test
          mysql-test/t/xml.test
          mysys/my_getopt.c
          mysys/my_init.c
          scripts/mysql_install_db.sh
          sql-common/my_time.c
          sql/field.cc
          sql/field.h
          sql/filesort.cc
          sql/ha_partition.cc
          sql/ha_partition.h
          sql/item.cc
          sql/item_cmpfunc.cc
          sql/item_func.h
          sql/item_strfunc.cc
          sql/item_sum.cc
          sql/item_timefunc.cc
          sql/item_timefunc.h
          sql/log.cc
          sql/log.h
          sql/log_event.cc
          sql/log_event.h
          sql/mysql_priv.h
          sql/mysqld.cc
          sql/opt_range.cc
          sql/partition_info.cc
          sql/repl_failsafe.cc
          sql/rpl_constants.h
          sql/set_var.cc
          sql/slave.cc
          sql/spatial.h
          sql/sql_acl.cc
          sql/sql_base.cc
          sql/sql_binlog.cc
          sql/sql_class.h
          sql/sql_cursor.cc
          sql/sql_delete.cc
          sql/sql_lex.cc
          sql/sql_lex.h
          sql/sql_locale.cc
          sql/sql_parse.cc
          sql/sql_partition.cc
          sql/sql_plugin.cc
          sql/sql_plugin.h
          sql/sql_profile.cc
          sql/sql_repl.cc
          sql/sql_select.cc
          sql/sql_select.h
          sql/sql_show.cc
          sql/sql_table.cc
          sql/sql_trigger.cc
          sql/sql_trigger.h
          sql/table.cc
          sql/table.h
          sql/unireg.cc
          storage/csv/ha_tina.cc
          storage/federated/ha_federated.cc
          storage/heap/ha_heap.cc
          storage/innobase/Makefile.am
          storage/innobase/btr/btr0sea.c
          storage/innobase/buf/buf0lru.c
          storage/innobase/dict/dict0dict.c
          storage/innobase/dict/dict0mem.c
          storage/innobase/handler/ha_innodb.cc
          storage/innobase/handler/ha_innodb.h
          storage/innobase/include/btr0sea.h
          storage/innobase/include/dict0dict.h
          storage/innobase/include/dict0mem.h
          storage/innobase/include/ha_prototypes.h
          storage/innobase/include/lock0lock.h
          storage/innobase/include/row0mysql.h
          storage/innobase/include/sync0sync.ic
          storage/innobase/include/ut0ut.h
          storage/innobase/lock/lock0lock.c
          storage/innobase/os/os0file.c
          storage/innobase/plug.in
          storage/innobase/row/row0mysql.c
          storage/innobase/row/row0sel.c
          storage/innobase/srv/srv0srv.c
          storage/innobase/srv/srv0start.c
          storage/innobase/ut/ut0ut.c
          storage/myisam/ft_boolean_search.c
          strings/ctype.c
          strings/xml.c
          tests/mysql_client_test.c
          win/configure.js
          mysql-test/suite/funcs_1/t/is_coll_char_set_appl.test
      284aeacd
    • vasil's avatar
      branches/5.1: · a95d6ed7
      vasil authored
      Merge a change from MySQL:
      
        ------------------------------------------------------------
        revno: 2709.20.31
        committer: Timothy Smith <timothy.smith@sun.com>
        branch nick: 51
        timestamp: Fri 2008-12-19 01:28:51 +0100
        message:
          Disable part of innodb-autoinc.test, because the MySQL server asserts when
          compiled --with-debug, due to bug 39828, "autoinc wraps around when offset and
          increment > 1".  This change should be reverted when that bug is fixed (and a
          a few other minor changes to the test as described in comments).
        modified:
          mysql-test/r/innodb-autoinc.result
          mysql-test/t/innodb-autoinc.test
      a95d6ed7
  17. 03 Feb, 2009 1 commit
  18. 29 Jan, 2009 1 commit
  19. 26 Jan, 2009 1 commit
    • vasil's avatar
      branches/5.1: · de14b0d1
      vasil authored
      Merge a change from MySQL:
      
        ------------------------------------------------------------
        revno: 2646.161.4
        committer: Tatiana A. Nurnberg <azundris@mysql.com>
        branch nick: 51-31177v2
        timestamp: Mon 2009-01-12 06:32:49 +0100
        message:
          Bug#31177: Server variables can't be set to their current values
          
          Bounds-checks and blocksize corrections were applied to user-input,
          but constants in the server were trusted implicitly. If these values
          did not actually meet the requirements, the user could not set change
          a variable, then set it back to the (wonky) factory default or maximum
          by explicitly specifying it (SET <var>=<value> vs SET <var>=DEFAULT).
          
          Now checks also apply to the server's presets. Wonky values and maxima
          get corrected at startup. Consequently all non-offsetted values the user
          sees are valid, and users can set the variable to that exact value if
          they so desire.
      de14b0d1
  20. 23 Jan, 2009 1 commit
    • marko's avatar
      branches/5.1: Merge r4031 from branches/5.0: · 89d343e2
      marko authored
      btr_search_drop_page_hash_when_freed(): Check if buf_page_get_gen()
      returns NULL.  The page may have been evicted from the buffer pool
      between buf_page_peek_if_search_hashed() and buf_page_get_gen(),
      because the buffer pool mutex will be released between these two calls.
      (Bug #42279)
      
      rb://82 approved by Heikki Tuuri
      89d343e2
  21. 20 Jan, 2009 2 commits
    • marko's avatar
      branches/5.1: lock_is_table_exclusive(): Acquire kernel_mutex before · 9d7ed6ee
      marko authored
      accessing table->locks and release kernel_mutex before returning from
      the function.  This fixes a portential race condition in the
      "commit every 10,000 rows" in ALTER TABLE, CREATE INDEX, DROP INDEX,
      and OPTIMIZE TABLE. (Bug #42152)
      
      rb://80 approved by Heikki Tuuri
      9d7ed6ee
    • marko's avatar
      branches/5.1: Merge r4003 from branches/5.0: · 877b996f
      marko authored
      rec_set_nth_field(): When the field already is SQL null,
      do nothing when it is being changed to SQL null. (Bug #41571)
      
      Normally, MySQL does not pass "do-nothing" updates to the storage engine.
      When it does and a column of an InnoDB table that is in ROW_FORMAT=COMPACT
      is being updated from NULL to NULL, the InnoDB buffer pool will be corrupted
      without this fix.
      
      rb://81 approved by Heikki Tuuri
      877b996f
  22. 14 Jan, 2009 1 commit
  23. 13 Jan, 2009 1 commit
    • sunny's avatar
      branches/5.1: Fix Bug#38187 Error 153 when creating savepoints · 5c4c09a2
      sunny authored
      InnoDB previously treated savepoints as a stack e.g.,
        SAVEPOINT a;
        SAVEPOINT b;
        SAVEPOINT c;
        SAVEPOINT b; <- This would delete b and c.
      
      This fix changes the behavior to:
        SAVEPOINT a;
        SAVEPOINT b;
        SAVEPOINT c;
        SAVEPOINT b; <- Does not delete savepoint c
      5c4c09a2
  24. 22 Dec, 2008 2 commits
    • marko's avatar
      branches/5.1: Make · 85d7d160
      marko authored
      SET SESSION TRANSACTION ISOLATION LEVEL READ COMMITTED
      a true replacement of SET GLOBAL INNODB_LOCKS_UNSAFE_FOR_BINLOG=1.
      This fixes an error that was introduced in r370, causing
      semi-consistent read not to not unlock rows in READ COMMITTED mode.
      (Bug #41671, Issue #146)
      
      rb://67 approved by Heikki Tuuri
      85d7d160
    • marko's avatar
      branches/5.1: ibuf_delete_rec(): When the record cannot be found and · 9a4e1560
      marko authored
      the tablespace has been dropped, commit the mini-transaction, so that
      InnoDB will not hold the insert buffer tree latch in exclusive mode,
      causing a potential deadlock.  This bug was introduced in the fix of
      Bug #27276 in r2924.
      9a4e1560
  25. 18 Dec, 2008 2 commits
    • marko's avatar
      branches/5.1: When converting a record to MySQL format, copy the default · 7399eef2
      marko authored
      column values for columns that are SQL NULL.  This addresses failures in
      row-based replication (Bug #39648).
      
      row_prebuilt_t: Add default_rec, for the default values of the columns in
      MySQL format.
      
      row_sel_store_mysql_rec(): Use prebuilt->default_rec instead of
      padding columns.
      
      rb://64 approved by Heikki Tuuri
      7399eef2
    • inaam's avatar
      branches/5.1 · 2f851885
      inaam authored
      It is a bug in unused code. If we don't calculate the hash value when
      calculating the mutex number then two pages which map to same hash
      value can get two different mutex numbers.
      
      Approved by: Marko
      2f851885
  26. 10 Dec, 2008 1 commit
  27. 09 Dec, 2008 1 commit
    • vasil's avatar
      branches/5.1: · 6f1077a9
      vasil authored
      Merge a change from MySQL to fix the failing innodb_bug34300 mysql-test:
      
        main.innodb_bug34300           [ fail ]
        
        mysqltest: At line 11: query 'SET @@max_allowed_packet=16777216' failed: 1621: SESSION variable 'max_allowed_packet' is read-only. Use SET GLOBAL to assign the value
        
        Aborting: main.innodb_bug34300 failed in default mode. 
      
      The changeset is this:
      
        ------------------------------------------------------------
        revno: 2709.1.10
        committer: Staale Smedseng <staale.smedseng@sun.com>
        branch nick: b22891-51-bugteam
        timestamp: Thu 2008-11-20 08:51:48 +0100
        message:
          A fix for Bug#22891 "session level max_allowed_packet can be
          set but is ignored".
        
          This patch makes @@session.max_allowed_packed and
          @@session.net_buffer_length read-only as suggested in the bug
          report. The user will have to use SET GLOBAL (and reconnect)
          to alter the session values of these variables.
        
          The error string ER_VARIABLE_IS_READONLY is introduced.
        
          Tests are modified accordingly.
        modified:
          mysql-test/r/func_compress.result
          mysql-test/r/max_allowed_packet_basic.result
          mysql-test/r/max_allowed_packet_func.result
          mysql-test/r/net_buffer_length_basic.result
          mysql-test/r/packet.result
          mysql-test/r/union.result
          mysql-test/r/variables.result
          mysql-test/t/func_compress.test
          mysql-test/t/innodb_bug34300.test
          mysql-test/t/max_allowed_packet_basic.test
          mysql-test/t/max_allowed_packet_func.test
          mysql-test/t/net_buffer_length_basic.test
          mysql-test/t/packet.test
          mysql-test/t/union.test
          mysql-test/t/variables.test
          sql/set_var.cc
          sql/set_var.h
          sql/share/errmsg.txt
        ------------------------------------------------------------
      
      6f1077a9
  28. 05 Dec, 2008 1 commit
    • vasil's avatar
      branches/5.1: · 28cee22d
      vasil authored
      Add the traditional 2 spaces after the timestamp so the message does
      not look like:
      
      070223 13:26:01InnoDB: Warning: canno....
      28cee22d
  29. 04 Dec, 2008 1 commit
    • calvin's avatar
      branches/5.1: revert the changes in r2933 · f74e1bd0
      calvin authored
      The changes in r2933 causes test failure on Linux.
      More investigation is needed for Windows.
      
      Change the followings in innodb-autoinc.result:
        auto-increment-increment
        auto-increment-offset
      
      back to:
        auto_increment_increment
        auto_increment_offset
      f74e1bd0
  30. 24 Nov, 2008 1 commit
    • inaam's avatar
      branches/5.1: · ac4d073d
      inaam authored
      Fix Bug#40760 "set global innodb_thread_concurrency = 0;" is not safe
      
      The config param innodb_thread_concurrency is dynamically set and is
      read when a thread enters/exits innodb. If the value is changed between
      the enter and exit time the behaviour becomes erratic.
      The fix is not to use srv_thread_concurrency when exiting, instead use
      the flag trx->declared_to_be_inside_innodb.
      
      rb://57
      
      Approved by: Marko
      
      ac4d073d