1. 22 Dec, 2009 1 commit
    • 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
  2. 21 Dec, 2009 2 commits
  3. 16 Dec, 2009 2 commits
  4. 15 Dec, 2009 1 commit
  5. 14 Dec, 2009 1 commit
  6. 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
  7. 08 Dec, 2009 1 commit
  8. 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
  9. 02 Dec, 2009 4 commits
  10. 01 Dec, 2009 2 commits
  11. 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
  12. 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
  13. 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
  14. 18 Nov, 2009 1 commit
  15. 17 Nov, 2009 7 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
    • marko's avatar
      branches/zip: ha_innobase::change_active_index(): When the history is · fcfe811c
      marko authored
      missing, report it to the client, not to the error log.
      fcfe811c
  16. 16 Nov, 2009 2 commits
  17. 12 Nov, 2009 1 commit