1. 28 Dec, 2009 1 commit
  2. 26 Dec, 2009 1 commit
    • marko's avatar
      branches/zip: ibuf_bitmap_get_map_page(): · 87c59db2
      marko authored
      Define a wrapper macro that passes __FILE__, __LINE__ of the caller
      to buf_page_get_gen().
      This will ease the diagnosis of the likes of Issue #135.
      87c59db2
  3. 22 Dec, 2009 3 commits
    • marko's avatar
      branches/zip: Merge revisions 6206:6350 from branches/5.1, · 08cf3b39
      marko authored
      except r6347, r6349, r6350 which were committed separately
      to both branches, and r6310, which was backported from zip to 5.1.
      
        ------------------------------------------------------------------------
        r6206 | jyang | 2009-11-20 09:38:43 +0200 (Fri, 20 Nov 2009) | 3 lines
        Changed paths:
           M /branches/5.1/handler/ha_innodb.cc
      
        branches/5.1: Non-functional change, fix formatting.
        ------------------------------------------------------------------------
        r6230 | sunny | 2009-11-24 23:52:43 +0200 (Tue, 24 Nov 2009) | 3 lines
        Changed paths:
           M /branches/5.1/mysql-test/innodb-autoinc.result
      
        branches/5.1: Fix autoinc failing test results.
        (this should be skipped when merging 5.1 into zip)
        ------------------------------------------------------------------------
        r6231 | sunny | 2009-11-25 10:26:27 +0200 (Wed, 25 Nov 2009) | 7 lines
        Changed paths:
           M /branches/5.1/mysql-test/innodb-autoinc.result
           M /branches/5.1/mysql-test/innodb-autoinc.test
           M /branches/5.1/row/row0sel.c
      
        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
        Changed paths:
           M /branches/5.1/row/row0sel.c
      
        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
        Changed paths:
           M /branches/5.1/include/mach0data.h
           M /branches/5.1/include/mach0data.ic
           M /branches/5.1/mysql-test/innodb-autoinc.result
           M /branches/5.1/mysql-test/innodb-autoinc.test
           M /branches/5.1/row/row0sel.c
      
        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
        Changed paths:
           M /branches/5.1/row/row0sel.c
      
        branches/5.1: This is an interim fix, fix whitepsace issues.
        ------------------------------------------------------------------------
        r6235 | sunny | 2009-11-26 01:14:42 +0200 (Thu, 26 Nov 2009) | 9 lines
        Changed paths:
           M /branches/5.1/handler/ha_innodb.cc
           M /branches/5.1/mysql-test/innodb-autoinc.result
           M /branches/5.1/mysql-test/innodb-autoinc.test
      
        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.
        ------------------------------------------------------------------------
        r6242 | vasil | 2009-11-27 22:07:12 +0200 (Fri, 27 Nov 2009) | 4 lines
        Changed paths:
           M /branches/5.1/export.sh
      
        branches/5.1:
      
        Minor changes to support plugin snapshots.
        ------------------------------------------------------------------------
        r6306 | calvin | 2009-12-14 15:12:46 +0200 (Mon, 14 Dec 2009) | 5 lines
        Changed paths:
           M /branches/5.1/mysql-test/innodb-autoinc.result
           M /branches/5.1/mysql-test/innodb-autoinc.test
      
        branches/5.1: fix bug#49267: innodb-autoinc.test fails on windows
        because of different case mode
      
        There is no change to the InnoDB code, only to fix test case by
        changing "T1" to "t1".
        ------------------------------------------------------------------------
        r6324 | jyang | 2009-12-17 06:54:24 +0200 (Thu, 17 Dec 2009) | 8 lines
        Changed paths:
           M /branches/5.1/handler/ha_innodb.cc
           M /branches/5.1/include/lock0lock.h
           M /branches/5.1/include/srv0srv.h
           M /branches/5.1/lock/lock0lock.c
           M /branches/5.1/log/log0log.c
           M /branches/5.1/srv/srv0srv.c
           M /branches/5.1/srv/srv0start.c
      
        branches/5.1: Fix bug #47814 - Diagnostics are frequently not
        printed after a long lock wait in InnoDB. Separate out the
        lock wait timeout check thread from monitor information
        printing thread.
      
        rb://200 Approved by Marko.
        ------------------------------------------------------------------------
      08cf3b39
    • marko's avatar
    • marko's avatar
      branches/zip: Merge a change from MySQL: · a3bf31d8
      marko authored
      ------------------------------------------------------------
      revno: 3236
      committer: Satya B <satya.bn@sun.com>
      branch nick: mysql-5.1-bugteam
      timestamp: Tue 2009-12-01 17:48:57 +0530
      message:
        merge to mysql-5.1-bugteam
          ------------------------------------------------------------
          revno: 3234.1.1
          committer: Gleb Shchepa <gshchepa@mysql.com>
          branch nick: mysql-5.1-bugteam
          timestamp: Tue 2009-12-01 14:38:40 +0400
          message:
            Bug #38883 (reopened): thd_security_context is not thread safe, crashes?
      
            manual merge 5.0-->5.1, updating InnoDB plugin.
          ------------------------------------------------------------
          revno: 1810.3968.13
          committer: Gleb Shchepa <gshchepa@mysql.com>
          branch nick: mysql-5.0-bugteam
          timestamp: Tue 2009-12-01 14:24:44 +0400
          message:
            Bug #38883 (reopened): thd_security_context is not thread safe, crashes?
      
            The bug 38816 changed the lock that protects THD::query from
            LOCK_thread_count to LOCK_thd_data, but didn't update the associated
            InnoDB functions.
      
            1. The innobase_mysql_prepare_print_arbitrary_thd and the
            innobase_mysql_end_print_arbitrary_thd InnoDB functions have been
            removed, since now we have a per-thread mutex: now we don't need to wrap
            several inter-thread access tries to THD::query with a single global
            LOCK_thread_count lock, so we can simplify the code.
      
            2. The innobase_mysql_print_thd function has been modified to lock
            LOCK_thd_data in direct way.
      a3bf31d8
  4. 21 Dec, 2009 2 commits
  5. 16 Dec, 2009 2 commits
  6. 15 Dec, 2009 1 commit
  7. 14 Dec, 2009 1 commit
  8. 09 Dec, 2009 2 commits
    • marko's avatar
      branches/zip: row_upd_copy_columns(): Remove redundant code that was · 40e51174
      marko authored
      accidentally added in r1591, which introduced dfield_t::ext in order
      to make the merge sort of fast index creation support externally
      stored columns.
      
      Initially, I tried to allocate the bit for dfield_t::ext from
      dfield_t::len by making the length 31 bits and mapping UNIV_SQL_NULL
      to something that would fit in it.  Then I decided that it would be
      too risky.  The redundant check was part of the mapping.  The
      condition may have been dfield_is_null() initially.
      
      This is similar to the redundant code in row_sel_fetch_columns() that
      was noticed by Sergey Petrunya on the MySQL internals list and removed
      in r6285.  As far as I can tell, there are no redundant UNIV_SQL_NULL
      assignments remaining after this change.
      40e51174
    • marko's avatar
      branches/zip: row_sel_fetch_columns(): Remove redundant code that was · 91729dad
      marko authored
      accidentally added in r1591, which introduced dfield_t::ext in order
      to make the merge sort of fast index creation support externally
      stored columns,
      
      Initially, I tried to allocate the bit for dfield_t::ext from
      dfield_t::len by making the length 31 bits and mapping UNIV_SQL_NULL
      to something that would fit in it.  Then I decided that it would be
      too risky.  The redundant check was part of the mapping.  The
      condition may have been dfield_is_null() initially.
      
      This redundant code was noticed by Sergey Petrunya on the MySQL
      internals list.
      91729dad
  9. 08 Dec, 2009 1 commit
  10. 03 Dec, 2009 2 commits
    • pekka's avatar
      branches/zip: Minor changes which allow build with UNIV_HOTBACKUP · a5550052
      pekka authored
      defined to succeed:
      
      include/trx0sys.h: Allow Hot Backup build to see some
                         TRX_SYS_DOUBLEWRITE_... macros. 
      trx/trx0sys.c:     Exclude trx_sys_close() function from Hot Backup build.
      log/log0recv.[ch]: Exclude recv_sys_var_init() function from Hot Backup build.
      
      This change should not affect !UNIV_HOTBACKUP build.
      a5550052
    • marko's avatar
      branches/zip: dict_table_check_for_dup_indexes(): Assert that the · 759f7636
      marko authored
      data dictionary mutex is being held while table->indexes is accessed.
      This is already the case.
      
      Currently, only dict_table_get_next_index() and dict_table_get_first_index()
      are being invoked without holding dict_sys->mutex.
      759f7636
  11. 02 Dec, 2009 4 commits
  12. 01 Dec, 2009 2 commits
  13. 30 Nov, 2009 2 commits
    • marko's avatar
      branches/zip: Suppress errors about non-found temporary tables. · b1d5011c
      marko authored
      Write the is_temp flag to SYS_TABLES.MIX_LEN.
      
      dict_table_t::flags: Add a flag for is_temporary, DICT_TF2_TEMPORARY.
      Unlike other flags, this will not be written to the tablespace flags
      or SYS_TABLES.TYPE, but only to SYS_TABLES.MIX_LEN.
      
      dict_build_table_def_step(): Only pass DICT_TF_BITS to tablespaces.
      
      dict_check_tablespaces_and_store_max_id(), dict_load_table():
      Suppress errors about temporary tables not being found.
      
      dict_create_sys_tables_tuple(): Write the DICT_TF2_TEMPORARY flag
      to SYS_TABLES.MIX_LEN.
      
      fil_space_create(), fil_create_new_single_table_tablespace(): Add assertions
      about space->flags.
      
      row_drop_table_for_mysql(): Do not complain about non-found temporary tables.
      
      rb://160 approved by Heikki Tuuri.  This addresses the second part of
      Bug #41609 Crash recovery does not work for InnoDB temporary tables.
      b1d5011c
    • marko's avatar
      5e5e202d
  14. 20 Nov, 2009 3 commits
    • vasil's avatar
      branches/zip: · b018bc5b
      vasil authored
      Whitespace fixup.
      b018bc5b
    • vasil's avatar
      branches/zip: · ae143791
      vasil authored
      Add ChangeLog entry for c6207.
      ae143791
    • vasil's avatar
      branches/zip: Merge r6198:6206 from branches/5.1: · c0368cd8
      vasil authored
      (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().
        
        
        ------------------------------------------------------------------------
      c0368cd8
  15. 19 Nov, 2009 6 commits
    • jyang's avatar
      branches/zip: Function fseg_free() is no longer defined · a63a5f32
      jyang authored
      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.
      a63a5f32
    • marko's avatar
      branches/zip: ha_innobase::add_index(): Clarify the comment · 03338178
      marko authored
      on orphaned tables when creating a primary key.
      03338178
    • vasil's avatar
      branches/zip: Merge r6159:6198 from branches/5.1: · bc66ae8c
      vasil authored
        ------------------------------------------------------------------------
        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.
        
        
        ------------------------------------------------------------------------
      bc66ae8c
    • vasil's avatar
      branches/zip: · 935d29a8
      vasil authored
      Add ChangeLog entry for r6197.
      935d29a8
    • calvin's avatar
      branches/zip: merge the fix of bug#48317 (CMake file) · 6c84c833
      calvin authored
      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.
      6c84c833
    • vasil's avatar
      branches/zip: · 224a1ec6
      vasil authored
      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.
      224a1ec6
  16. 18 Nov, 2009 1 commit
  17. 17 Nov, 2009 6 commits
    • vasil's avatar
      branches/zip: · e164b420
      vasil authored
      Add ChangeLog entry for r6185.
      e164b420
    • marko's avatar
      branches/zip: Report duplicate table names · 06dafb4a
      marko authored
      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
      06dafb4a
    • marko's avatar
    • marko's avatar
      13e0e5f2
    • marko's avatar
      1d94508e
    • vasil's avatar
      branches/zip: · b0ed43b0
      vasil authored
      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
      b0ed43b0