1. 01 Feb, 2010 1 commit
    • Mattias Jonsson's avatar
      Bug#42438: Crash ha_partition::change_table_ptr · 16c8298a
      Mattias Jonsson authored
      There was two problems:
      The first was the symptom, caused by bad error handling in
      ha_partition. It did not handle print_error etc. when
      having no partitions (when used by dummy handler).
      
      The second was the real problem that when dropping tables
      it reused the table type (storage engine) from when the lock
      was asked for, not the table type that it had when gaining
      the exclusive name lock. So that it tried to delete tables
      from wrong storage engines.
      
      Solutions for the first problem was to accept some handler
      calls to the partitioning handler even if it was not setup
      with any partitions, and also if possible fallback
      to use the base handler's default functions.
      
      Solution for the second problem was to remove the optimization
      to reuse the definition from the cache, instead always check
      the frm-file when holding the LOCK_open mutex
      
      (updated with a fix for a debug print crash and better
      comments as required by reviewer, and removed optimization
      to avoid reading the frm-file).
      
      mysql-test/r/partition_debug_sync.result:
        Bug#42438: Crash ha_partition::change_table_ptr
        
        New result file using DEBUG_SYNC for deterministic results.
      mysql-test/t/partition_debug_sync.test:
        Bug#42438: Crash ha_partition::change_table_ptr
        
        New test file using DEBUG_SYNC for deterministic results.
      sql/ha_partition.cc:
        Bug#42438: Crash ha_partition::change_table_ptr
        
        allow some handler calls, used by error handling, even when
        no partitions are setup. Fallback to default handling if possible.
      sql/sql_base.cc:
        Bug#42438: Crash ha_partition::change_table_ptr
        
        Added DEBUG_SYNC point for deterministic test cases.
      sql/sql_table.cc:
        Bug#42438: Crash ha_partition::change_table_ptr
        
        Always use the table type written in the .frm-file
        (i.e. the current table type) when deleting a table.
        
        Moved the check for log-table to not depend of the cache.
        
        Added DEBUG_SYNC points for deterministic test cases.
      16c8298a
  2. 02 Dec, 2009 1 commit
    • Alexander Barkov's avatar
      Bug#48766 SHOW CREATE FUNCTION returns extra data in return clause · d7abca9a
      Alexander Barkov authored
      Problem: SHOW CREATE FUNCTION and SELECT DTD_IDENTIFIER FROM I_S.ROUTINES
      returned wrong values in case of ENUM return data type and UCS2
      character set.
      
      Fix: the string to collect returned data type was incorrectly set to
      "binary" character set, therefore UCS2 values where returned with
      extra '\0' characters.
      Setting string character set to creation_ctx->get_client_cs()
      in sp_find_routine(), and to system_charset_info in sp_create_routine
      fixes the problem.
      
      Adding tests:
      - the original test with Latin letters
      - an extra test with non-Latin letters
      d7abca9a
  3. 01 Dec, 2009 8 commits
  4. 30 Nov, 2009 22 commits
    • Satya B's avatar
      merge to mysql-5.1-bugteam · 43f7cd01
      Satya B authored
      43f7cd01
    • Satya B's avatar
      Applying InnoDB Plugin 1.0.6 snapshot, Fixes BUG#48469 · 3606e59c
      Satya B authored
      applied revisions: r6201, r6202, r6207, r6208, r6210
      
      r6202 - port fix for BUG#48469 to plugin
      
      Detailed revision comments:
      
      r6201 | marko | 2009-11-19 14:09:11 +0200 (Thu, 19 Nov 2009) | 2 lines
      branches/zip: ha_innobase::add_index(): Clarify the comment
      on orphaned tables when creating a primary key.
      r6202 | jyang | 2009-11-19 15:01:00 +0200 (Thu, 19 Nov 2009) | 8 lines
      branches/zip: Function fseg_free() is no longer defined
      in branches/zip. To port fix for bug #48469 to zip,
      we can use btr_free_root() which frees the page,
      and also does not require mini-transaction.
      
      Approved by Marko.
      
      
      r6207 | vasil | 2009-11-20 10:19:14 +0200 (Fri, 20 Nov 2009) | 54 lines
      branches/zip: Merge r6198:6206 from branches/5.1:
      
      (r6203 was skipped as it is already in branches/zip)
      
        ------------------------------------------------------------------------
        r6200 | vasil | 2009-11-19 12:14:23 +0200 (Thu, 19 Nov 2009) | 4 lines
        Changed paths:
           M /branches/5.1/btr/btr0btr.c
        
        branches/5.1:
        
        White space fixup - indent under the opening (
        
        ------------------------------------------------------------------------
        r6203 | jyang | 2009-11-19 15:12:22 +0200 (Thu, 19 Nov 2009) | 8 lines
        Changed paths:
           M /branches/5.1/btr/btr0btr.c
        
        branches/5.1: Use btr_free_root() instead of fseg_free() for
        the fix of bug #48469, because fseg_free() is not defined
        in the zip branch. And we could save one mini-trasaction started
        by fseg_free().
        
        Approved by Marko.
        
        
        ------------------------------------------------------------------------
        r6205 | jyang | 2009-11-20 07:55:48 +0200 (Fri, 20 Nov 2009) | 11 lines
        Changed paths:
           M /branches/5.1/handler/ha_innodb.cc
        
        branches/5.1: Add a special case to handle the Duplicated Key error
        and return DB_ERROR instead. This is to avoid a possible SIGSEGV
        by mysql error handling re-entering the storage layer for dup key
        info without proper table handle.
        This is to prevent a server crash when error situation in bug
        #45961 "DDL on partitioned innodb tables leaves data dictionary
        in an inconsistent state" happens.
        
        rb://157 approved by Sunny Bains.
        
        
        ------------------------------------------------------------------------
        r6206 | jyang | 2009-11-20 09:38:43 +0200 (Fri, 20 Nov 2009) | 5 lines
        Changed paths:
           M /branches/5.1/handler/ha_innodb.cc
        
        branches/5.1: Fix a minor code formating issue for 
        the parenthesis iplacement of the if condition in
        rename_table().
        
        
        ------------------------------------------------------------------------
      
      r6208 | vasil | 2009-11-20 10:49:24 +0200 (Fri, 20 Nov 2009) | 4 lines
      branches/zip:
      
      Add ChangeLog entry for c6207.
      
      r6210 | vasil | 2009-11-20 23:39:48 +0200 (Fri, 20 Nov 2009) | 3 lines
      branches/zip:
      
      Whitespace fixup.
      3606e59c
    • Satya B's avatar
      Applying InnoDB Plugin 1.0.6 snapshot, part 9. Fixes BUG#48526, BUG#48317 · 699af6da
      Satya B authored
      applied revisions: r6197, r6198, r6199
      r6197 - BUG#48317
      r6199 - BUG#48526
      
      Detailed revision comments:
      
      r6197 | calvin | 2009-11-19 09:32:55 +0200 (Thu, 19 Nov 2009) | 6 lines
      branches/zip: merge the fix of bug#48317 (CMake file)
      
      Due to MySQL changes to the CMake, it is no longer able
      to build InnoDB plugin as a static library on Windows.
      The fix is proposed by Vlad of MySQL.
      
      r6198 | vasil | 2009-11-19 09:44:31 +0200 (Thu, 19 Nov 2009) | 4 lines
      branches/zip:
      
      Add ChangeLog entry for r6197.
      
      r6199 | vasil | 2009-11-19 12:10:12 +0200 (Thu, 19 Nov 2009) | 31 lines
      branches/zip: Merge r6159:6198 from branches/5.1:
      
        ------------------------------------------------------------------------
        r6187 | jyang | 2009-11-18 05:27:30 +0200 (Wed, 18 Nov 2009) | 9 lines
        Changed paths:
           M /branches/5.1/btr/btr0btr.c
        
        branches/5.1: Fix bug #48469 "when innodb tablespace is
        configured too small, crash and corruption!". Function
        btr_create() did not check the return status of fseg_create(),
        and continue the index creation even there is no sufficient
        space.
        
        rb://205 Approved by Marko
        
        
        ------------------------------------------------------------------------
        r6188 | jyang | 2009-11-18 07:14:23 +0200 (Wed, 18 Nov 2009) | 8 lines
        Changed paths:
           M /branches/5.1/data/data0type.c
        
        branches/5.1: Fix bug #48526 "Data type for float and
        double is incorrectly reported in InnoDB table monitor".
        Certain datatypes are not printed correctly in
        dtype_print().
        
        rb://204 Approved by Marko.
        
        
        ------------------------------------------------------------------------
      
      699af6da
    • Satya B's avatar
      Applying InnoDB Plugin 1.0.6 snapshot, part 8. Fixes BUG#48782 · 1e26b2c2
      Satya B authored
      applied revisions: r6185, r6186, r6189, r6194
      
      r6185 - only code changes incorporated, changesets which change
              innodb tests in the main mysql suite are discarded
      
      r61889 - Fixes BUG#48782
      
      Detailed revision comments:
      
      r6185 | marko | 2009-11-17 16:44:20 +0200 (Tue, 17 Nov 2009) | 16 lines
      branches/zip: Report duplicate table names
      to the client connection, not to the error log.  This change will allow
      innodb-index.test to be re-enabled.  It was previously disabled, because
      mysql-test-run does not like output in the error log.
      
      row_create_table_for_mysql(): Do not output anything to the error log
      when reporting DB_DUPLICATE_KEY.  Let the caller report the error.
      Add a TODO comment that the dict_table_t object is apparently not freed
      when an error occurs.
      
      create_table_def(): Convert InnoDB table names to the character set
      of the client connection for reporting.  Use my_error(ER_WRONG_COLUMN_NAME)
      for reporting reserved column names.  Report my_error(ER_TABLE_EXISTS_ERROR)
      when row_create_table_for_mysql() returns DB_DUPLICATE_KEY.
      
      rb://206
      r6186 | vasil | 2009-11-17 16:48:14 +0200 (Tue, 17 Nov 2009) | 4 lines
      branches/zip:
      
      Add ChangeLog entry for r6185.
      
      r6189 | marko | 2009-11-18 11:36:18 +0200 (Wed, 18 Nov 2009) | 5 lines
      branches/zip: ha_innobase::add_index(): When creating the primary key
      and the table is being locked by another transaction,
      do not attempt to drop the table. (Bug #48782)
      
      Approved by Sunny Bains over IM
      r6194 | vasil | 2009-11-19 09:24:45 +0200 (Thu, 19 Nov 2009) | 5 lines
      branches/zip:
      
      Increment version number from 1.0.5 to 1.0.6 since 1.0.5 was just released
      by MySQL and we will soon release 1.0.6.
      
      1e26b2c2
    • Satya B's avatar
      Applying InnoDB Plugin 1.0.6 snapshot, part 7 · d813b430
      Satya B authored
      Fixes several test cases.
      
      applied revisions: r6181, r6182, r6183, r6184
      
      r6183 - changes are made only to tests in innodb suite which is only 
              innodb-consistent-master.opt
      
      Detailed revision comments:
      
      r6181 | vasil | 2009-11-17 12:21:41 +0200 (Tue, 17 Nov 2009) | 33 lines
      branches/zip:
      
      At the end of innodb-index.test: restore the environment as it was before
      the test was started to silence this warning:
      
        MTR's internal check of the test case 'main.innodb-index' 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-20091117_033000-zip.btyZwu/mysql-5.1/mysql-test/var/tmp/check-mysqld_1.log'.
        mysqltest: Results saved in '/tmp/autotest.sh-20091117_033000-zip.btyZwu/mysql-5.1/mysql-test/var/tmp/check-mysqld_1.result'.
        mysqltest: Connecting to server localhost:13000 (socket /tmp/autotest.sh-20091117_033000-zip.btyZwu/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-20091117_033000-zip.btyZwu/mysql-5.1/mysql-test/var/tmp/check-mysqld_1.result	2009-11-17 13:10:40.000000000 +0300
        +++ /tmp/autotest.sh-20091117_033000-zip.btyZwu/mysql-5.1/mysql-test/var/tmp/check-mysqld_1.reject	2009-11-17 13:10:54.000000000 +0300
        @@ -84,7 +84,7 @@
         INNODB_DOUBLEWRITE	ON
         INNODB_FAST_SHUTDOWN	1
         INNODB_FILE_FORMAT	Antelope
        -INNODB_FILE_FORMAT_CHECK	Antelope
        +INNODB_FILE_FORMAT_CHECK	Barracuda
         INNODB_FILE_PER_TABLE	OFF
         INNODB_FLUSH_LOG_AT_TRX_COMMIT	1
         INNODB_FLUSH_METHOD	
        
        mysqltest: Result content mismatch
        
        not ok
      
      r6182 | marko | 2009-11-17 13:49:15 +0200 (Tue, 17 Nov 2009) | 1 line
      branches/zip: Set svn:eol-style on mysql-test files.
      r6183 | marko | 2009-11-17 13:51:16 +0200 (Tue, 17 Nov 2009) | 1 line
      branches/zip: Prepend loose_ to plugin-only mysql-test options.
      r6184 | marko | 2009-11-17 13:52:01 +0200 (Tue, 17 Nov 2009) | 1 line
      branches/zip: innodb-index.test: Restore innodb_file_format_check.
      d813b430
    • Satya B's avatar
      Applying InnoDB Plugin 1.0.6 snapshot, part 6. Add Testcase for BUG#46676 · 444c6d0d
      Satya B authored
      1. add testcase for BUG#46676
      2. Allow CREATE INDEX to be interrupted
      3. ha_innobase::change_active_index(): When the history is
         missing, report it to the client, not to the error log
      4. ChangeLog entries
      
      appplied revisions:r6169, r6170, r6175, r6177, r6179
      
      Detailed revision comments:
      
      r6169 | calvin | 2009-11-12 14:40:43 +0200 (Thu, 12 Nov 2009) | 6 lines
      branches/zip: add test case for bug#46676
      
      This crash is reproducible with InnoDB plugin 1.0.4 + MySQL 5.1.37.
      But no longer reproducible after MySQL 5.1.38 (with plugin 1.0.5).
      Add test case to catch future regression.
      
      r6170 | marko | 2009-11-12 15:49:08 +0200 (Thu, 12 Nov 2009) | 4 lines
      branches/zip: Allow CREATE INDEX to be interrupted.  (Issue #354)
      
      rb://183 approved by Heikki Tuuri
      
      r6175 | vasil | 2009-11-16 20:07:39 +0200 (Mon, 16 Nov 2009) | 4 lines
      branches/zip:
      
      Wrap line at 78th char in the ChangeLog
      
      r6177 | calvin | 2009-11-16 20:20:38 +0200 (Mon, 16 Nov 2009) | 2 lines
      branches/zip: add an entry to ChangeLog for r6065
      
      r6179 | marko | 2009-11-17 10:19:34 +0200 (Tue, 17 Nov 2009) | 2 lines
      branches/zip: ha_innobase::change_active_index(): When the history is
      missing, report it to the client, not to the error log.
      444c6d0d
    • Satya B's avatar
      Applying InnoDB Plugin 1.0.6 snapshot, part 5. · f77d7aae
      Satya B authored
      applied revisions: r6161, r6162, r6163
      
      Detailed revision comments:
      
      r6161 | vasil | 2009-11-11 15:36:16 +0200 (Wed, 11 Nov 2009) | 4 lines
      branches/zip:
      
      Add changelog entry for r6160.
      
      r6162 | vasil | 2009-11-11 16:00:12 +0200 (Wed, 11 Nov 2009) | 4 lines
      branches/zip:
      
      Add ChangeLog for r6157.
      
      r6163 | calvin | 2009-11-11 17:53:20 +0200 (Wed, 11 Nov 2009) | 8 lines
      branches/zip: Exclude thd_binlog_filter_ok() when building
      with older version of MySQL.
      
      thd_binlog_filter_ok() is introduced in MySQL 5.1.41. But the
      plugin can be built with MySQL prior to 5.1.41.
      
      Approved by Heikki (on IM).
      
      f77d7aae
    • Satya B's avatar
      Applying InnoDB Plugin 1.0.6 snapshot, part 4. Fixes BUG#3139 · 0278748e
      Satya B authored
      applied revisions: r6160
      
      Detailed revision comments:
      
      r6160 | vasil | 2009-11-11 15:33:49 +0200 (Wed, 11 Nov 2009) | 72 lines
      branches/zip: Merge r6152:6159 from branches/5.1:
      
      (r6158 was skipped as an equivallent change has already been merged from MySQL)
      
        ------------------------------------------------------------------------
        r6154 | calvin | 2009-11-11 02:51:17 +0200 (Wed, 11 Nov 2009) | 17 lines
        Changed paths:
           M /branches/5.1/include/os0file.h
           M /branches/5.1/os/os0file.c
        
        branches/5.1: fix bug#3139: Mysql crashes: 'windows error 995'
        after several selects on a large DB
        
        During stress environment, Windows AIO may fail with error code
        ERROR_OPERATION_ABORTED. InnoDB does not handle the error, rather
        crashes. The cause of the error is unknown, but likely due to
        faulty hardware or driver.
        
        This patch introduces a new error code OS_FILE_OPERATION_ABORTED,
        which maps to Windows ERROR_OPERATION_ABORTED (995). When the error
        is detected during AIO, the InnoDB will issue a synchronous retry
        (read/write).
        
        This patch has been extensively tested by MySQL support.
        
        Approved by: Marko
        rb://196
        ------------------------------------------------------------------------
        r6158 | vasil | 2009-11-11 14:52:14 +0200 (Wed, 11 Nov 2009) | 37 lines
        Changed paths:
           M /branches/5.1/handler/ha_innodb.cc
           M /branches/5.1/handler/ha_innodb.h
        
        branches/5.1:
        
        Merge a change from MySQL:
        (this has been reviewed by Calvin and Marko, and Calvin says Luis has
        incorporated Marko's suggestions)
        
          ------------------------------------------------------------
          revno: 3092.5.1
          committer: Luis Soares <luis.soares@sun.com>
          branch nick: mysql-5.1-bugteam
          timestamp: Thu 2009-09-24 15:52:52 +0100
          message:
            BUG#42829: binlogging enabled for all schemas regardless of
            binlog-db-db / binlog-ignore-db
                  
            InnoDB will return an error if statement based replication is used
            along with transaction isolation level READ-COMMITTED (or weaker),
            even if the statement in question is filtered out according to the
            binlog-do-db rules set. In this case, an error should not be printed.
                  
            This patch addresses this issue by extending the existing check in
            external_lock to take into account the filter rules before deciding to
            print an error. Furthermore, it also changes decide_logging_format to
            take into consideration whether the statement is filtered out from 
            binlog before decision is made.
          added:
            mysql-test/suite/binlog/r/binlog_stm_do_db.result
            mysql-test/suite/binlog/t/binlog_stm_do_db-master.opt
            mysql-test/suite/binlog/t/binlog_stm_do_db.test
          modified:
            sql/sql_base.cc
            sql/sql_class.cc
            storage/innobase/handler/ha_innodb.cc
            storage/innobase/handler/ha_innodb.h
            storage/innodb_plugin/handler/ha_innodb.cc
            storage/innodb_plugin/handler/ha_innodb.h
        
        ------------------------------------------------------------------------
      
      0278748e
    • Satya B's avatar
      Applying InnoDB Plugin 1.0.6 snapshot, part 3. Fixes BUG#47167 · e50e6940
      Satya B authored
      applied revisions: r6157
      
      Detailed revision comments:
      
      r6157 | jyang | 2009-11-11 14:27:09 +0200 (Wed, 11 Nov 2009) | 10 lines
      branches/zip: Fix an issue that a local variable defined
      in innodb_file_format_check_validate() is being referenced
      across function in innodb_file_format_check_update().
      In addition, fix "set global innodb_file_format_check =
      DEFAULT" call.
      Bug #47167: "set global innodb_file_format_check" cannot
      set value by User-Defined Variable."
      rb://169 approved by Sunny Bains and Marko.
      
      
      e50e6940
    • Satya B's avatar
      Applying InnoDB Plugin 1.0.6 snapshot, part 2. Fixes BUG#32430 · 54e01f3c
      Satya B authored
      Enable partition_innodb_plugin.test for BUG#32430
      applied revisions: r6134, r6137, r6153
      
      Detailed revision comments:
      
      r6134 | marko | 2009-11-04 09:57:29 +0200 (Wed, 04 Nov 2009) | 5 lines
      branches/zip: innobase_convert_identifier(): Convert table names with
      explain_filename() to address Bug #32430: 'show innodb status'
      causes errors Invalid (old?) table or database name in logs.
      
      rb://134 approved by Sunny Bains
      r6137 | marko | 2009-11-04 15:24:28 +0200 (Wed, 04 Nov 2009) | 1 line
      branches/zip: dict_index_too_big_for_undo(): Correct a typo.
      r6153 | vasil | 2009-11-10 15:33:22 +0200 (Tue, 10 Nov 2009) | 145 lines
      branches/zip: Merge r6125:6152 from branches/5.1:
      
      (everything except the last white-space change was skipped as it is already
      in branches/zip)
      
        ------------------------------------------------------------------------
        r6127 | vasil | 2009-10-30 11:18:25 +0200 (Fri, 30 Oct 2009) | 18 lines
        Changed paths:
           M /branches/5.1/Makefile.am
           M /branches/5.1/mysql-test/innodb-autoinc.result
           M /branches/5.1/mysql-test/innodb-autoinc.test
        
        branches/5.1:
        
        Backport c6121 from branches/zip:
        
          ------------------------------------------------------------------------
          r6121 | sunny | 2009-10-30 01:42:11 +0200 (Fri, 30 Oct 2009) | 7 lines
          Changed paths:
             M /branches/zip/mysql-test/innodb-autoinc.result
          
          branches/zip: This test has been problematic for sometime now. The underlying
          bug is that the data dictionaries get out of sync. In the AUTOINC code we
          try and apply salve to the symptoms. In the past MySQL made some unrelated
          change and the dictionaries stopped getting out of sync and this test started
          to fail. Now, it seems they have reverted that changed and the test is
          passing again. I suspect this is not he last time that this test will change.
          
          ------------------------------------------------------------------------
        
        ------------------------------------------------------------------------
        r6129 | vasil | 2009-10-30 17:14:22 +0200 (Fri, 30 Oct 2009) | 4 lines
        Changed paths:
           M /branches/5.1/Makefile.am
        
        branches/5.1:
        
        Revert a change to Makefile.am that sneaked unnoticed in c6127.
        
        ------------------------------------------------------------------------
        r6136 | marko | 2009-11-04 12:28:10 +0200 (Wed, 04 Nov 2009) | 15 lines
        Changed paths:
           M /branches/5.1/handler/ha_innodb.cc
           M /branches/5.1/include/ha_prototypes.h
           M /branches/5.1/ut/ut0ut.c
        
        branches/5.1: Port r6134 from branches/zip:
        
          ------------------------------------------------------------------------
          r6134 | marko | 2009-11-04 07:57:29 +0000 (Wed, 04 Nov 2009) | 5 lines
        
          branches/zip: innobase_convert_identifier(): Convert table names with
          explain_filename() to address Bug #32430: 'show innodb status'
          causes errors Invalid (old?) table or database name in logs.
        
          rb://134 approved by Sunny Bains
          ------------------------------------------------------------------------
        
        innobase_print_identifier(): Replace with innobase_convert_name().
        
        innobase_convert_identifier(): New function, called by innobase_convert_name().
        ------------------------------------------------------------------------
        r6149 | vasil | 2009-11-09 11:15:01 +0200 (Mon, 09 Nov 2009) | 5 lines
        Changed paths:
           M /branches/5.1/CMakeLists.txt
        
        branches/5.1:
        
        Followup to r5700: Adjust the changes so they are the same as in the BZR
        repository.
        
        ------------------------------------------------------------------------
        r6150 | vasil | 2009-11-09 11:43:31 +0200 (Mon, 09 Nov 2009) | 58 lines
        Changed paths:
           M /branches/5.1/handler/ha_innodb.cc
        
        branches/5.1:
        
        Merge a part of r2911.5.5 from MySQL:
        (the other part of this was merged in c5700)
        
          ------------------------------------------------------------
          revno: 2911.5.5
          committer: Vladislav Vaintroub <vvaintroub@mysql.com>
          branch nick: 5.1-innodb_plugin
          timestamp: Wed 2009-06-10 10:59:49 +0200
          message:
            Backport WL#3653 to 5.1 to enable bundled innodb plugin.
            Remove custom DLL loader code from innodb plugin code, use 
            symbols exported from mysqld.
          removed:
            storage/innodb_plugin/handler/handler0vars.h
            storage/innodb_plugin/handler/win_delay_loader.cc
          added:
            storage/mysql_storage_engine.cmake
            win/create_def_file.js
          modified:
            CMakeLists.txt
            include/m_ctype.h
            include/my_global.h
            include/my_sys.h
            include/mysql/plugin.h
            libmysqld/CMakeLists.txt
            mysql-test/mysql-test-run.pl
            mysql-test/t/plugin.test
            mysql-test/t/plugin_load-master.opt
            mysys/charset.c
            sql/CMakeLists.txt
            sql/handler.h
            sql/mysql_priv.h
            sql/mysqld.cc
            sql/sql_class.cc
            sql/sql_class.h
            sql/sql_list.h
            sql/sql_profile.h
            storage/Makefile.am
            storage/archive/CMakeLists.txt
            storage/blackhole/CMakeLists.txt
            storage/csv/CMakeLists.txt
            storage/example/CMakeLists.txt
            storage/federated/CMakeLists.txt
            storage/heap/CMakeLists.txt
            storage/innobase/CMakeLists.txt
            storage/innobase/handler/ha_innodb.cc
            storage/innodb_plugin/CMakeLists.txt
            storage/innodb_plugin/handler/ha_innodb.cc
            storage/innodb_plugin/handler/handler0alter.cc
            storage/innodb_plugin/handler/i_s.cc
            storage/innodb_plugin/plug.in
            storage/myisam/CMakeLists.txt
            storage/myisammrg/CMakeLists.txt
            win/Makefile.am
            win/configure.js
        
        ------------------------------------------------------------------------
        r6152 | vasil | 2009-11-10 15:30:20 +0200 (Tue, 10 Nov 2009) | 4 lines
        Changed paths:
           M /branches/5.1/handler/ha_innodb.cc
        
        branches/5.1:
        
        White space fixup.
        
        ------------------------------------------------------------------------
      
      54e01f3c
    • Satya B's avatar
      Applying InnoDB Plugin 1.0.6 snapshot,part 1. Fixes BUG#45992 and BUG#46656 · a1092e9b
      Satya B authored
      Detailed revision comments:
      
      r6130 | marko | 2009-11-02 11:42:56 +0200 (Mon, 02 Nov 2009) | 9 lines
      branches/zip: Free all resources at shutdown. Set pointers to NULL, so
      that Valgrind will not complain about freed data structures that are
      reachable via pointers.  This addresses Bug #45992 and Bug #46656.
      
      This patch is mostly based on changes copied from branches/embedded-1.0,
      mainly c5432, c3439, c3134, c2994, c2978, but also some other code was
      copied.  Some added cleanup code is specific to MySQL/InnoDB.
      
      rb://199 approved by Sunny Bains
      a1092e9b
    • Magne Mahre's avatar
      Bug #20837 Apparent change of isolation level during transaction · 732e5a26
      Magne Mahre authored
            
      SET TRANSACTION ISOLATION LEVEL is used to temporarily set
      the trans.iso.level for the next transaction.  After the
      transaction, the iso.level is (re-)set to value of the 
      session variable 'tx_isolation'.
      
      The bug is caused by setting the thd->variables.tx_isolation 
      field to the value of the session variable upon each
      statement commit.  It should only be set at the end of the
      full transaction.
      
      The fix has been to remove the setting of the variable in
      ha_autocommit_or_rollback if we're in a transaction, as it 
      will be correctly set in  either ha_rollback or 
      ha_commit_one_phase.  
      
      If, on the other hand, we're in  autocommit mode, tx_isolation 
      will be explicitly set here.
      
      
      
      mysql-test/t/innodb_mysql.test:
        "SET TRANSACTION ISOLATION LEVEL READ UNCOMMITTED" sets
        the trans.isolation for the next transaction.  We test
        that @@tx_isolation keeps this value during the transaction,
        and is only reset back to the session value at the end
        of the transaction.
      732e5a26
    • Satya B's avatar
      Applying Innodb Snapshot 5.1-ss6242, part 9. · cefd968d
      Satya B authored
      1. Enabling the disabled test for BUG#32430 for builtin innodb
      2. Disabling the innodb-autoinc.test for innodb plugin.
      cefd968d
    • Satya B's avatar
      Applying InnoDB snapshot 5.1-ss6242, part 8. Fixes BUG#47720 · cde05f06
      Satya B authored
      1. BUG#47720 - REPLACE INTO Autoincrement column with negative values.
      
      Detailed revision comments:
      
      r6235 | sunny | 2009-11-26 01:14:42 +0200 (Thu, 26 Nov 2009) | 9 lines
      branches/5.1: Fix Bug#47720 - REPLACE INTO Autoincrement column with negative values.
      
      This bug is similiar to the negative autoinc filter patch from earlier,
      with the additional handling of filtering out the negative column values
      set explicitly by the user.
      
      rb://184
      Approved by Heikki.
      
      cde05f06
    • Satya B's avatar
      Applying InnoDB snapshot 5.1-ss6242, part 7. Fixes BUG#49032 · 4b3114b6
      Satya B authored
      1. BUG#49032 - auto_increment field does not initialize to last value 
                     in InnoDB Storage Engine
      
      2. Fix whitespace issues and fix tests and make read float/double arg const
      
      Detailed revision comments:
      
      r6231 | sunny | 2009-11-25 10:26:27 +0200 (Wed, 25 Nov 2009) | 7 lines
      branches/5.1: Fix BUG#49032 - auto_increment field does not initialize to last value in InnoDB Storage Engine.
      
      We use the appropriate function to read the column value for non-integer
      autoinc column types, namely float and double.
      
      rb://208. Approved by Marko.
      
      r6232 | sunny | 2009-11-25 10:27:39 +0200 (Wed, 25 Nov 2009) | 2 lines
      branches/5.1: This is an interim fix, fix white space errors.
      
      r6233 | sunny | 2009-11-25 10:28:35 +0200 (Wed, 25 Nov 2009) | 2 lines
      branches/5.1: This is an interim fix, fix tests and make read float/double arg const.
      
      
      r6234 | sunny | 2009-11-25 10:29:03 +0200 (Wed, 25 Nov 2009) | 2 lines
      branches/5.1: This is an interim fix, fix whitepsace issues.
      
      4b3114b6
    • Satya B's avatar
      Applying InnoDB snapshot 5.1-ss6242, part 6. Fixes BUG#48482 · 2faa75ed
      Satya B authored
      1. BUG#48482 - innodb-autoinc.test fails with results difference
      
      2. enable the disabled test
      
      Detailed revision comments:
      
      r6230 | sunny | 2009-11-24 23:52:43 +0200 (Tue, 24 Nov 2009) | 3 lines
      branches/5.1: Fix autoinc failing test results.
      (this should be skipped when merging 5.1 into zip)
      
      2faa75ed
    • Satya B's avatar
      Applying InnoDB snapshot 5.1-ss6242, part 5. Fixes BUG#45961 · 96a121d3
      Satya B authored
      1. BUG#45961 - DDL on partitioned innodb tables leaves data dictionary 
                     in an inconsistent state
      
      2. Fix formatting
      
      Detailed revision comments:
      
      r6205 | jyang | 2009-11-20 07:55:48 +0200 (Fri, 20 Nov 2009) | 11 lines
      branches/5.1: Add a special case to handle the Duplicated Key error
      and return DB_ERROR instead. This is to avoid a possible SIGSEGV
      by mysql error handling re-entering the storage layer for dup key
      info without proper table handle.
      This is to prevent a server crash when error situation in bug
      #45961 "DDL on partitioned innodb tables leaves data dictionary
      in an inconsistent state" happens.
      
      rb://157 approved by Sunny Bains.
      
      
      r6206 | jyang | 2009-11-20 09:38:43 +0200 (Fri, 20 Nov 2009) | 3 lines
      branches/5.1: Non-functional change, fix formatting.
      
      
      96a121d3
    • Satya B's avatar
      Applying InnoDB snapshot 5.1-ss6242, part 4. Fixes BUG#48526 · 2df31d44
      Satya B authored
      1. BUG#48526 - Data type for float and double is incorrectly 
                     reported in InnoDB table monitor
      
      Detailed revision comments:
      
      r6188 | jyang | 2009-11-18 07:14:23 +0200 (Wed, 18 Nov 2009) | 8 lines
      branches/5.1: Fix bug #48526 "Data type for float and
      double is incorrectly reported in InnoDB table monitor".
      Certain datatypes are not printed correctly in
      dtype_print().
      
      rb://204 Approved by Marko.
      
      
      2df31d44
    • Satya B's avatar
      Applying InnoDB snapshot 5.1-ss6242, part 3. Fixes BUG#48469 · 3431bede
      Satya B authored
      1. BUG#4869 - when innodb tablespace is configured too small,
                    crash and corruption!
      
      Detailed revision comments:
      
      r6187 | jyang | 2009-11-18 05:27:30 +0200 (Wed, 18 Nov 2009) | 9 lines
      branches/5.1: Fix bug #48469 "when innodb tablespace is
      configured too small, crash and corruption!". Function
      btr_create() did not check the return status of fseg_create(),
      and continue the index creation even there is no sufficient
      space.
      
      rb://205 Approved by Marko
      
      r6200 | vasil | 2009-11-19 12:14:23 +0200 (Thu, 19 Nov 2009) | 4 lines
      branches/5.1:
      
      White space fixup - indent under the opening (
      
      r6203 | jyang | 2009-11-19 15:12:22 +0200 (Thu, 19 Nov 2009) | 8 lines
      branches/5.1: Use btr_free_root() instead of fseg_free() for
      the fix of bug #48469, because fseg_free() is not defined
      in the zip branch. And we could save one mini-trasaction started
      by fseg_free().
      
      Approved by Marko.
      
      
      3431bede
    • Satya B's avatar
      Applying InnoDB snapshot 5.1-ss6242, part 2. Fixes BUG#3139 · 18887506
      Satya B authored
      1. BUG#3139 - Mysql crashes: "windows error 995" after several 
                    selects on a large DB
      
      Detailed revision comments:
      
      r6154 | calvin | 2009-11-11 02:51:17 +0200 (Wed, 11 Nov 2009) | 17 lines
      branches/5.1: fix bug#3139: Mysql crashes: 'windows error 995'
      after several selects on a large DB
      
      During stress environment, Windows AIO may fail with error code
      ERROR_OPERATION_ABORTED. InnoDB does not handle the error, rather
      crashes. The cause of the error is unknown, but likely due to
      faulty hardware or driver.
      
      This patch introduces a new error code OS_FILE_OPERATION_ABORTED,
      which maps to Windows ERROR_OPERATION_ABORTED (995). When the error
      is detected during AIO, the InnoDB will issue a synchronous retry
      (read/write).
      
      This patch has been extensively tested by MySQL support.
      
      Approved by: Marko
      rb://196
      18887506
    • Satya B's avatar
      Applying InnoDB snapshot 5.1-ss6242, part 1. Fixes BUG#32430 · ca79b2bc
      Satya B authored
      1. BUG#32430 - 'show innodb status' causes errors Invalid (old?) table
                     or database name in logs
      
      2. White space fixup
      
      Detailed revision comments:
      
      r6136 | marko | 2009-11-04 12:28:10 +0200 (Wed, 04 Nov 2009) | 15 lines
      branches/5.1: Port r6134 from branches/zip:
      
        ------------------------------------------------------------------------
        r6134 | marko | 2009-11-04 07:57:29 +0000 (Wed, 04 Nov 2009) | 5 lines
      
        branches/zip: innobase_convert_identifier(): Convert table names with
        explain_filename() to address Bug #32430: 'show innodb status'
        causes errors Invalid (old?) table or database name in logs.
      
        rb://134 approved by Sunny Bains
        ------------------------------------------------------------------------
      
      innobase_print_identifier(): Replace with innobase_convert_name().
      
      innobase_convert_identifier(): New function, called by innobase_convert_name().
      r6152 | vasil | 2009-11-10 15:30:20 +0200 (Tue, 10 Nov 2009) | 4 lines
      branches/5.1:
      
      White space fixup.
      
      ca79b2bc
    • Satya B's avatar
      Additional Fix for BUG#47671 - wrong character-set after upgrade from 5.1.34 to 5.1.39 · 181a29f2
      Satya B authored
      Fix for failure on windows PB2 because of the result content mismatch.
      In windows additional information about TCP port was causing failures.
      Added to regex.
      181a29f2
  5. 28 Nov, 2009 1 commit
    • unknown's avatar
      Bug #43913 rpl_cross_version can't pass on conflicts complainig clash with --slave-load-tm · b9f9fe2e
      unknown authored
            
      The 'slave_patternload_file' is assigned to the real path of the load data file 
      when initializing the object of Relay_log_info. But the path of the load data
      file is not formatted to real path when executing event from relay log. So the 
      error will be encountered if the path of the load data file is a symbolic link.
      
      Actually the global 'opt_secure_file_priv' is not formatted to real path when 
      loading data from file. So the same thing will happen too.
      
            
      To fix these errors, the path of the load data file should be formatted to 
      real path when executing event from relay log. And the 'opt_secure_file_priv' 
      should be formatted to real path when loading data infile.
      
      
      mysql-test/suite/rpl/r/rpl_loaddata_symlink.result:
        Test result for bug#43913.
      mysql-test/suite/rpl/t/rpl_loaddata_symlink-master.sh:
        Added the test file to create a link from $MYSQLTEST_VARDIR/std_data 
        to $MYSQLTEST_VARDIR/std_data_master_link
      mysql-test/suite/rpl/t/rpl_loaddata_symlink-slave.sh:
        Added the test file to create a link from $MYSQLTEST_VARDIR/std_data 
        to $MYSQLTEST_VARDIR/std_data_slave_link
      mysql-test/suite/rpl/t/rpl_loaddata_symlink.test:
        Added the test file to verify if loading data infile will work fine 
        if the path of the load data file is a symbolic link.
      sql/rpl_rli.cc:
        Added call 'my_realpath' function for avoiding sometimes the 'fn_format' 
        function can't format real path rightly.
      b9f9fe2e
  6. 27 Nov, 2009 7 commits