An error occurred fetching the project authors.
  1. 30 Nov, 2009 6 commits
    • Satya B's avatar
      Applying InnoDB Plugin 1.0.6 snapshot, Fixes BUG#48469 · 8ea44a1f
      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.
      8ea44a1f
    • Satya B's avatar
      Applying InnoDB Plugin 1.0.6 snapshot, part 8. Fixes BUG#48782 · fc7ce5d1
      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.
      
      fc7ce5d1
    • Satya B's avatar
      Applying InnoDB Plugin 1.0.6 snapshot, part 6. Add Testcase for BUG#46676 · 7ad1daab
      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.
      7ad1daab
    • Satya B's avatar
      Applying InnoDB Plugin 1.0.6 snapshot, part 5. · 209b333a
      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).
      
      209b333a
    • Satya B's avatar
      Applying InnoDB Plugin 1.0.6 snapshot, part 3. Fixes BUG#47167 · f44162f1
      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.
      
      
      f44162f1
    • Satya B's avatar
      Applying InnoDB Plugin 1.0.6 snapshot, part 2. Fixes BUG#32430 · ffba0980
      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.
        
        ------------------------------------------------------------------------
      
      ffba0980
  2. 03 Nov, 2009 4 commits
    • Sergey Vojtovich's avatar
      Applying InnoDB plugin snashot · dd83da97
      Sergey Vojtovich authored
      Detailed revision comments:
      
      r6126 | vasil | 2009-10-30 10:36:07 +0200 (Fri, 30 Oct 2009) | 45 lines
      branches/zip: Merge r6112:6125 from branches/5.1:
      
      (skipping r6122 and r6123, Jimmy says these are already present and need
      not be merged):
      
        ------------------------------------------------------------------------
        r6122 | jyang | 2009-10-30 05:18:38 +0200 (Fri, 30 Oct 2009) | 7 lines
        Changed paths:
           M /branches/5.1/handler/ha_innodb.cc
           M /branches/5.1/mysql-test/innodb_bug44369.result
           M /branches/5.1/mysql-test/innodb_bug44369.test
           M /branches/5.1/mysql-test/innodb_bug46000.result
           M /branches/5.1/mysql-test/innodb_bug46000.test
        
        branches/5.1: Chnage WARN_LEVEL_ERROR to WARN_LEVEL_WARN
        for push_warning_printf() call in innodb.
        Fix Bug#47233: Innodb calls push_warning(MYSQL_ERROR::WARN_LEVEL_ERROR)
        
        rb://170 approved by Marko.
        
        
        ------------------------------------------------------------------------
        r6123 | jyang | 2009-10-30 05:43:06 +0200 (Fri, 30 Oct 2009) | 8 lines
        Changed paths:
           M /branches/5.1/os/os0proc.c
        
        branches/5.1: In os_mem_alloc_large(), if we fail to attach
        the shared memory, reset memory pointer ptr to NULL, and
        allocate memory from conventional pool. This is a port
        from branches/zip.
        Bug #48237 Error handling in os_mem_alloc_large appears to be incorrect
        rb://198  Approved by: Marko
        
        
        ------------------------------------------------------------------------
        r6125 | vasil | 2009-10-30 10:31:23 +0200 (Fri, 30 Oct 2009) | 4 lines
        Changed paths:
           M /branches/5.1/handler/ha_innodb.cc
        
        branches/5.1:
        
        White-space fixup.
        
        ------------------------------------------------------------------------
      dd83da97
    • Sergey Vojtovich's avatar
      Applying InnoDB plugin snashot · 2e63e93c
      Sergey Vojtovich authored
      Detailed revision comments:
      
      r6113 | vasil | 2009-10-29 18:15:50 +0200 (Thu, 29 Oct 2009) | 93 lines
      branches/zip: Merge r5912:6112 from branches/5.1:
      
      (after this merge the innodb-autoinc test starts to fail, but
      I commit anyway because it would be easier to investigate the
      failure this way)
      
        ------------------------------------------------------------------------
        r5952 | calvin | 2009-09-22 19:45:07 +0300 (Tue, 22 Sep 2009) | 7 lines
        Changed paths:
           M /branches/5.1/handler/ha_innodb.cc
        
        branches/5.1: fix bug#42383: Can't create table 'test.bug39438'
        
        For embedded server, MySQL may pass in full path, which is
        currently disallowed. It is needed to relax the condition by
        accepting full paths in the embedded case.
        
        Approved by: Heikki (on IM)
        ------------------------------------------------------------------------
        r6032 | vasil | 2009-10-01 15:55:49 +0300 (Thu, 01 Oct 2009) | 8 lines
        Changed paths:
           M /branches/5.1/handler/ha_innodb.cc
        
        branches/5.1:
        
        Fix Bug#38996 Race condition in ANALYZE TABLE
        
        by serializing ANALYZE TABLE inside InnoDB.
        
        Approved by:	Heikki (rb://175)
        
        ------------------------------------------------------------------------
        r6045 | jyang | 2009-10-08 02:27:08 +0300 (Thu, 08 Oct 2009) | 7 lines
        Changed paths:
           M /branches/5.1/handler/ha_innodb.cc
           A /branches/5.1/mysql-test/innodb_bug47777.result
           A /branches/5.1/mysql-test/innodb_bug47777.test
        
        branches/5.1: Fix bug #47777. Treat the Geometry data same as
        Binary BLOB in ha_innobase::store_key_val_for_row(), since the
        Geometry data is stored as Binary BLOB in Innodb.
        
        Review: rb://180 approved by Marko Makela.
        
        
        ------------------------------------------------------------------------
        r6051 | sunny | 2009-10-12 07:05:00 +0300 (Mon, 12 Oct 2009) | 6 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: Ignore negative values supplied by the user when calculating the
        next value to store in dict_table_t. Setting autoincrement columns top negative
        values is undefined behavior and this change should bring the behavior of
        InnoDB closer to what users expect. Added several tests to check.
        rb://162
        
        ------------------------------------------------------------------------
        r6052 | sunny | 2009-10-12 07:09:56 +0300 (Mon, 12 Oct 2009) | 4 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: Reset the statement level autoinc counter on ROLLBACK. Fix
        the test results too.
        rb://164
        
        ------------------------------------------------------------------------
        r6053 | sunny | 2009-10-12 07:37:49 +0300 (Mon, 12 Oct 2009) | 6 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: Copy the maximum AUTOINC value from the old table to the new
        table when MySQL does a CREATE INDEX ON T. This is required because MySQL
        does a table copy, rename and drops the old table.
        Fix Bug#47125: auto_increment start value is ignored if an index is created and engine=innodb
        rb://168
        
        ------------------------------------------------------------------------
        r6076 | vasil | 2009-10-14 19:30:12 +0300 (Wed, 14 Oct 2009) | 4 lines
        Changed paths:
           M /branches/5.1/row/row0mysql.c
        
        branches/5.1:
        
        Fix typo.
        
        ------------------------------------------------------------------------
      2e63e93c
    • Sergey Vojtovich's avatar
      Applying InnoDB plugin snashot · 5a9b7eab
      Sergey Vojtovich authored
      Detailed revision comments:
      
      r6100 | jyang | 2009-10-22 06:51:07 +0300 (Thu, 22 Oct 2009) | 6 lines
      branches/zip: As a request from mysql, WARN_LEVEL_ERROR cannot
      be used for push_warning_* call any more. Switch to 
      WARN_LEVEL_WARN. Bug #47233.
      rb://172 approved by Sunny Bains and Marko.
      5a9b7eab
    • Sergey Vojtovich's avatar
      Applying InnoDB plugin snashot · edc89c3d
      Sergey Vojtovich authored
      Detailed revision comments:
      
      r6099 | jyang | 2009-10-22 05:58:39 +0300 (Thu, 22 Oct 2009) | 7 lines
      branches/zip: Port bug #46000 related changes from 5.1 to zip
      branch. Due to different code path for creating index in zip
      branch comparing to 5.1), the index reserved name check function
      is extended to be used in ha_innobase::add_index(). 
      rb://190  Approved by: Marko
      edc89c3d
  3. 09 Oct, 2009 4 commits
    • Satya B's avatar
      Applying InnoDB Plugin 1.0.5 snapshot ,part 12 · ef15e36f
      Satya B authored
      From r5995 to r6043
      
      Detailed revision comments:
      
      r5995 | marko | 2009-09-28 03:52:25 -0500 (Mon, 28 Sep 2009) | 17 lines
      branches/zip: Do not write to PAGE_INDEX_ID after page creation,
      not even when restoring an uncompressed page after a compression failure.
      
      btr_page_reorganize_low(): On compression failure, do not restore
      those page header fields that should not be affected by the
      reorganization.  Instead, compare the fields.
      
      page_zip_decompress(): Add the parameter ibool all, for copying all
      page header fields.  Pass the parameter all=TRUE on block read
      completion, redo log application, and page_zip_validate(); pass
      all=FALSE in all other cases.
      
      page_zip_reorganize(): Do not restore the uncompressed page on
      failure.  It will be restored (to pre-modification state) by the
      caller anyway.
      
      rb://167, Issue #346
      r5996 | marko | 2009-09-28 07:46:02 -0500 (Mon, 28 Sep 2009) | 4 lines
      branches/zip: Address Issue #350 in comments.
      
      lock_rec_queue_validate(), lock_rec_queue_validate(): Note that
      this debug code may violate the latching order and cause deadlocks.
      r5997 | marko | 2009-09-28 08:03:58 -0500 (Mon, 28 Sep 2009) | 12 lines
      branches/zip: Remove an assertion failure when the InnoDB data dictionary
      is inconsistent with the MySQL .frm file.
      
      ha_innobase::index_read(): When the index cannot be found,
      return an error.
      
      ha_innobase::change_active_index(): When prebuilt->index == NULL,
      set also prebuilt->index_usable = FALSE.  This is not needed for
      correctness, because prebuilt->index_usable is only checked by
      row_search_for_mysql(), which requires prebuilt->index != NULL.
      
      This addresses Issue #349.  Approved by Heikki Tuuri over IM.
      r6005 | vasil | 2009-09-29 03:09:52 -0500 (Tue, 29 Sep 2009) | 4 lines
      branches/zip:
      
      ChangeLog: wrap around 78th column, not earlier.
      
      r6006 | vasil | 2009-09-29 05:15:25 -0500 (Tue, 29 Sep 2009) | 4 lines
      branches/zip:
      
      Add ChangeLog entry for the release of 1.0.4.
      
      r6007 | vasil | 2009-09-29 08:19:59 -0500 (Tue, 29 Sep 2009) | 6 lines
      branches/zip:
      
      Fix the year, should be 2009.
      
      Pointed by:	Calvin
      
      r6026 | marko | 2009-09-30 02:18:24 -0500 (Wed, 30 Sep 2009) | 1 line
      branches/zip: Add some debug assertions for checking FSEG_MAGIC_N.
      r6028 | marko | 2009-09-30 08:55:23 -0500 (Wed, 30 Sep 2009) | 3 lines
      branches/zip: recv_no_log_write: New debug flag for tracking down
      Mantis Issue #347.  No modifications should be made to the database
      while recv_apply_hashed_log_recs() is about to complete.
      r6029 | calvin | 2009-09-30 15:32:02 -0500 (Wed, 30 Sep 2009) | 4 lines
      branches/zip: non-functional changes
      
      Fix typo.
      
      r6031 | marko | 2009-10-01 06:24:33 -0500 (Thu, 01 Oct 2009) | 49 lines
      branches/zip: Clean up after a crash during DROP INDEX.
      When InnoDB crashes while dropping an index, ensure that
      the index will be completely dropped during crash recovery.
      
      row_merge_drop_index(): Before dropping an index, rename the index to
      start with TEMP_INDEX_PREFIX_STR and commit the change, so that
      row_merge_drop_temp_indexes() will drop the index after crash
      recovery if the server crashes while dropping the index.
      
      fseg_inode_try_get(): New function, forked from fseg_inode_get().
      Return NULL if the file segment index node is free.
      
      fseg_inode_get(): Assert that the file segment index node is not free.
      
      fseg_free_step(): If the file segment index node is already free,
      print a diagnostic message and return TRUE.
      
      fsp_free_seg_inode(): Write a nonzero number to FSEG_MAGIC_N, so that
      allocated-and-freed file segment index nodes can be better
      distinguished from uninitialized ones.
      
      This is rb://174, addressing Issue #348.
      
      Tested by restarting mysqld upon the completion of the added
      log_write_up_to() invocation below, during DROP INDEX.  The index was
      dropped after crash recovery, and re-issuing the DROP INDEX did not
      crash the server.
      
      Index: btr/btr0btr.c
      ===================================================================
      --- btr/btr0btr.c	(revision 6026)
      +++ btr/btr0btr.c	(working copy)
      @@ -42,6 +42,7 @@ Created 6/2/1994 Heikki Tuuri
       #include "ibuf0ibuf.h"
       #include "trx0trx.h"
      +#include "log0log.h"
       
       /*
       Latching strategy of the InnoDB B-tree
       --------------------------------------
      @@ -873,6 +874,8 @@ leaf_loop:
       
       		goto leaf_loop;
       	}
      +
      +	log_write_up_to(mtr.end_lsn, LOG_WAIT_ALL_GROUPS, TRUE);
       top_loop:
       	mtr_start(&mtr);
       
      r6033 | calvin | 2009-10-01 15:19:46 -0500 (Thu, 01 Oct 2009) | 4 lines
      branches/zip: fix a typo in error message
      
      Reported as bug#47763.
      
      r6043 | inaam | 2009-10-05 09:45:35 -0500 (Mon, 05 Oct 2009) | 12 lines
      branches/zip  rb://176
      
      Do not invalidate buffer pool while an LRU batch is active. Added
      code to buf_pool_invalidate() to wait for the running batches to finish.
      
      This patch also resets the state of buf_pool struct at invalidation. This
      addresses the concern where buf_pool->freed_page_clock becomes non-zero
      because we read in a system tablespace page for file format info at
      startup.
      
      Approved by: Marko
      
      ef15e36f
    • Satya B's avatar
      Applying InnoDB Plugin 1.0.5 snapshot, part 11 · 4c10dbde
      Satya B authored
      From revision r5945 to r5994
      r5950 - already applied and so skipped
      
      Detailed revision comments:
      
      r5945 | calvin | 2009-09-21 09:53:22 -0500 (Mon, 21 Sep 2009) | 4 lines
      branches/zip: fix a type in r5935
      
      Should be innodb_open_files, spotted by Michael.
      
      r5951 | calvin | 2009-09-22 10:17:01 -0500 (Tue, 22 Sep 2009) | 4 lines
      branches/zip: adjust CMake file to work with old versions of MySQL
      
      Tested with MySQL 5.1.38 and 5.1.30.
      
      r5956 | calvin | 2009-09-22 18:30:10 -0500 (Tue, 22 Sep 2009) | 4 lines
      branches/zip: remove handler0vars.h from Makefile.am
      
      Left over from r5950.
      
      r5971 | marko | 2009-09-23 08:03:51 -0500 (Wed, 23 Sep 2009) | 2 lines
      branches/zip: os_file_pwrite(): Make the code compile in InnoDB Hot Backup
      when the pwrite system call is not available.
      r5972 | marko | 2009-09-23 14:44:52 -0500 (Wed, 23 Sep 2009) | 5 lines
      branches/zip: fil_node_open_file(): In InnoDB Hot Backup,
      determine the page size of single-file tablespaces before computing
      the file node size.  Otherwise, the space->size of compressed tablespaces
      would be computed with UNIV_PAGE_SIZE instead of key_block_size.
      This should fix Issue #313.
      r5973 | marko | 2009-09-23 14:53:21 -0500 (Wed, 23 Sep 2009) | 2 lines
      branches/zip: recv_add_to_hash_table():
      Simplify obfuscated pointer arithmetics.
      r5978 | marko | 2009-09-24 02:47:56 -0500 (Thu, 24 Sep 2009) | 1 line
      branches/zip: Fix warnings and errors when UNIV_HOTBACKUP is defined.
      r5979 | marko | 2009-09-24 05:16:10 -0500 (Thu, 24 Sep 2009) | 4 lines
      branches/zip: ha_innodb.cc: Define MYSQL_PLUGIN_IMPORT when necessary.
      This preprocessor symbol has been recently introduced in MySQL 5.1.
      The InnoDB Plugin should remain source compatible with MySQL 5.1.24
      and later.
      r5988 | calvin | 2009-09-25 14:14:43 -0500 (Fri, 25 Sep 2009) | 8 lines
      branches/zip: fix bug#47055 unconditional exit(1) on ERROR_WORKING_SET_QUOTA
      1453 (0x5AD) for InnoDB backend
      
      When error ERROR_WORKING_SET_QUOTA or ERROR_NO_SYSTEM_RESOURCES
      occurs, yields for 100ms and retries the operation.
      
      Approved by: Heikki (on IM)
      
      r5992 | vasil | 2009-09-28 02:10:29 -0500 (Mon, 28 Sep 2009) | 4 lines
      branches/zip:
      
      Add ChangeLog entry for c5988.
      
      r5994 | marko | 2009-09-28 03:33:59 -0500 (Mon, 28 Sep 2009) | 17 lines
      branches/zip: Try to prevent the reuse of tablespace identifiers after
      InnoDB has crashed during table creation.  Also, refuse to start if
      files with duplicate tablespace identifiers are encountered.
      
      fil_node_create(): Update fil_system->max_assigned_id.  This should
      prevent the reuse of a space->id when InnoDB does a full crash
      recovery and invokes fil_load_single_table_tablespaces().  Normally,
      fil_system->max_assigned_id is initialized from
      SELECT MAX(ID) FROM SYS_TABLES.
      
      fil_open_single_table_tablespace(): Return FALSE when
      fil_space_create() fails.
      
      fil_load_single_table_tablespace(): Exit if fil_space_create() fails
      and innodb_force_recovery=0.
      
      rb://173 approved by Heikki Tuuri.  This addresses Issue #335.
      4c10dbde
    • Satya B's avatar
      Applying InnoDB Plugin 1.0.5 snapshot, part 10 · 4f9de943
      Satya B authored
      From r5917 to r5940
      
      Detailed revision comments:
      
      r5917 | marko | 2009-09-16 04:56:23 -0500 (Wed, 16 Sep 2009) | 1 line
      branches/zip: innobase_get_cset_width(): Cache the value of current_thd.
      r5919 | vasil | 2009-09-16 13:37:13 -0500 (Wed, 16 Sep 2009) | 4 lines
      branches/zip:
      
      Whitespace cleanup in the ChangeLog.
      
      r5920 | vasil | 2009-09-16 13:47:22 -0500 (Wed, 16 Sep 2009) | 4 lines
      branches/zip:
      
      Add ChangeLog entries for r5916.
      
      r5922 | marko | 2009-09-17 01:32:08 -0500 (Thu, 17 Sep 2009) | 4 lines
      branches/zip: innodb-zip.test: Make the test work with zlib 1.2.3.3.
      Apparently, the definition of compressBound() has slightly changed.
      
      This has been filed as Mantis Issue #345.
      r5924 | vasil | 2009-09-17 23:59:30 -0500 (Thu, 17 Sep 2009) | 4 lines
      branches/zip:
      
      White space and formatting cleanup in the ChangeLog
      
      r5934 | vasil | 2009-09-18 12:06:46 -0500 (Fri, 18 Sep 2009) | 4 lines
      branches/zip:
      
      Fix typo.
      
      r5935 | calvin | 2009-09-18 16:08:02 -0500 (Fri, 18 Sep 2009) | 6 lines
      branches/zip: fix bug#44338; minor non-functional changes
      
      Bug#44338 innodb has message about non-existing option 
      innodb_max_files_open. Change the option to innodb_open_files.
      The fix was committed into 6.0 branch.
      
      r5938 | calvin | 2009-09-19 02:14:25 -0500 (Sat, 19 Sep 2009) | 41 lines
      branches/zip: Merge revisions 2584:2956 from branches/6.0,
      except c2932.
      
      Bug#37232 and bug#31183 were fixed in the 6.0 branch only.
      They should be fixed in the plugin too, specially MySQL 6.0
      is discontinued at this point.
      
          ------------------------------------------------------------------------
          r2604 | inaam | 2008-08-21 09:37:06 -0500 (Thu, 21 Aug 2008) | 8 lines
      
          branches/6.0     bug#37232
      
          Relax locking behaviour for REPLACE INTO t SELECT ... FROM t1.
          Now SELECT on t1 is performed as a consistent read when the isolation
          level is set to READ COMMITTED.
      
          Reviewed by: Heikki
          ------------------------------------------------------------------------
          r2605 | inaam | 2008-08-21 09:59:33 -0500 (Thu, 21 Aug 2008) | 7 lines
      
          branches/6.0
      
          Added a comment to clarify why distinct calls to read MySQL binary
          log file name and log position do not entail any race condition.
      
          Suggested by: Heikki
          ------------------------------------------------------------------------
          r2956 | inaam | 2008-11-04 04:47:30 -0600 (Tue, 04 Nov 2008) | 11 lines
      
          branches/6.0  bug#31183
      
          If the system tablespace runs out of space because 'autoextend' is
          not specified with innodb_data_file_path there was no error message
          printed to the error log. The client would get 'table full' error.
          This patch prints an appropriate error message to the error log.
      
          rb://43
      
          Approved by: Marko
          ------------------------------------------------------------------------
      
      r5940 | vasil | 2009-09-21 00:26:04 -0500 (Mon, 21 Sep 2009) | 4 lines
      branches/zip:
      
      Add ChangeLog entries for c5938.
      4f9de943
    • Satya B's avatar
      Applying InnoDB Plugin 1.0.5 snapshot , part 9 · 46db6073
      Satya B authored
      r5888 - plug.in related changes skipped
      r5889 - skipped(plug.in related changes)
      r5916 - innodb_bug4600.test and innodb_bug44369.test
              already exists in main suite
      
      Detailed revision comments:
      
      r5875 | vasil | 2009-09-12 07:11:25 -0500 (Sat, 12 Sep 2009) | 4 lines
      branches/zip:
      
      Remove unnecessary macro.
      
      r5888 | vasil | 2009-09-14 03:38:45 -0500 (Mon, 14 Sep 2009) | 40 lines
      branches/zip:
      
      Back-merge c5880 and c5881 from branches/embedded-1.0:
      
        ------------------------------------------------------------------------
        r5880 | vasil | 2009-09-12 17:28:44 +0300 (Sat, 12 Sep 2009) | 18 lines
        Changed paths:
           M /branches/embedded-1.0/configure.in
           M /branches/embedded-1.0/include/os0sync.h
           M /branches/embedded-1.0/srv/srv0start.c
        
        branches/embedded-1.0:
        
        Clean up and simplify the code that surrounds the atomic ops:
        
        * Simplify the code that prints what atomics are used:
        Instead of repeating the same conditions on which each atomics are used
        use just one printf that prints a variable defined by the code which
        chooses what atomics to use.
        
        * In os0sync.h pick up each atomic variant only if it has been selected
        by autoconf (based on IB_ATOMIC_MODE_* macros). Define the startup message
        to be printed.
        
        * In configure.in: check what user has chosen and if he has chosen
        something that is not available, emit an error. If nothing has been chosen
        explicitly by the user, auto select an option according to the described
        logic in configure.in.
        
        ------------------------------------------------------------------------
        r5881 | vasil | 2009-09-12 20:08:27 +0300 (Sat, 12 Sep 2009) | 4 lines
        Changed paths:
           M /branches/embedded-1.0/configure.in
        
        branches/embedded-1.0:
        
        Fix syntax error in test program.
      r5910 | marko | 2009-09-16 03:07:21 -0500 (Wed, 16 Sep 2009) | 9 lines
      branches/zip: Introduce UNIV_LOG_LSN_DEBUG and MLOG_LSN for redo log
      diagnostics.  This was written in order to better track down
      Issue #313 in InnoDB Hot Backup.
      
      MLOG_LSN: A new redo log entry type, for recording the current log
      sequence number (LSN).  This will be checked in an assertion in
      recv_parse_log_rec().
      
      rb://161, discussed with Sunny and Vasil.
      r5916 | marko | 2009-09-16 04:54:43 -0500 (Wed, 16 Sep 2009) | 128 lines
      branches/zip: Merge revisions 5622:5912 from branches/5.1, except r5700
      (changes to CMakeLists.txt)
      
        ------------------------------------------------------------------------
        r5622 | vasil | 2009-08-03 15:27:00 +0300 (Mon, 03 Aug 2009) | 20 lines
        Changed paths:
           M /branches/5.1/Makefile.am
      
        branches/5.1:
      
        Merge a change from MySQL:
      
          ------------------------------------------------------------
          revno: 2988
          committer: Satya B <satya.bn@sun.com>
          branch nick: mysql-5.1-bugteam
          timestamp: Wed 2009-07-01 11:06:05 +0530
          message:
            Fix build failure after applying Innodb snapshot 5.1-ss5282
      
            After applying Innodb snapshot 5.1-ss5282, build was broken
            because of missing header file.
      
            Adding the header file to Makefile.am after informing the
            innodb developers.
          modified:
            storage/innobase/Makefile.am
        ------------------------------------------------------------------------
        r5740 | jyang | 2009-09-03 06:33:47 +0300 (Thu, 03 Sep 2009) | 5 lines
        Changed paths:
           M /branches/5.1/handler/ha_innodb.cc
           M /branches/5.1/include/db0err.h
           A /branches/5.1/mysql-test/innodb_bug46000.result
           A /branches/5.1/mysql-test/innodb_bug46000.test
      
        branches/5.1: Disallow creating index with the name of
        "GEN_CLUST_INDEX" which is reserved for the default system
        primary index. (Bug #46000) rb://149 approved by Sunny Bains.
        ------------------------------------------------------------------------
        r5741 | jyang | 2009-09-03 07:16:01 +0300 (Thu, 03 Sep 2009) | 5 lines
        Changed paths:
           M /branches/5.1/dict/dict0dict.c
           M /branches/5.1/handler/ha_innodb.cc
           A /branches/5.1/mysql-test/innodb_bug44369.result
           A /branches/5.1/mysql-test/innodb_bug44369.test
           M /branches/5.1/row/row0mysql.c
      
        branches/5.1: Block creating table with column name conflicting
        with Innodb reserved key words. (Bug #44369) rb://151 approved
        by Sunny Bains.
        ------------------------------------------------------------------------
        r5757 | jyang | 2009-09-04 04:26:13 +0300 (Fri, 04 Sep 2009) | 3 lines
        Changed paths:
           M /branches/5.1/handler/ha_innodb.cc
           M /branches/5.1/include/db0err.h
           D /branches/5.1/mysql-test/innodb_bug46000.result
           D /branches/5.1/mysql-test/innodb_bug46000.test
      
        branches/5.1: Revert change in 5740. Making the fix in a subsequent
        check in.
        ------------------------------------------------------------------------
        r5760 | jyang | 2009-09-04 07:07:34 +0300 (Fri, 04 Sep 2009) | 3 lines
        Changed paths:
           M /branches/5.1/dict/dict0dict.c
           M /branches/5.1/handler/ha_innodb.cc
           D /branches/5.1/mysql-test/innodb_bug44369.result
           D /branches/5.1/mysql-test/innodb_bug44369.test
           M /branches/5.1/row/row0mysql.c
      
        branches/5.1: This is to revert change 5741. A return status for
        create_table_def() needs to be fixed.
        ------------------------------------------------------------------------
        r5797 | calvin | 2009-09-09 18:26:29 +0300 (Wed, 09 Sep 2009) | 3 lines
        Changed paths:
           M /branches/5.1/handler/ha_innodb.cc
      
        branches/5.1: merge change from 5.1.38
      
        HA_ERR_TOO_MANY_CONCURRENT_TRXS is added in 5.1.38.
        ------------------------------------------------------------------------
        r5799 | calvin | 2009-09-09 20:47:31 +0300 (Wed, 09 Sep 2009) | 10 lines
        Changed paths:
           M /branches/5.1/handler/ha_innodb.cc
      
        branches/5.1: fix bug#46256
      
        Allow tables to be dropped even if the collation is not found,
        but issue a warning.
      
        Could not find an easy way to add mysql-test since it requires
        changes to charsets and restarting the server. Tests were
        executed manually.
      
        Approved by: Heikki (on IM)
        ------------------------------------------------------------------------
        r5805 | vasil | 2009-09-10 08:41:48 +0300 (Thu, 10 Sep 2009) | 7 lines
        Changed paths:
           M /branches/5.1/handler/ha_innodb.cc
      
        branches/5.1:
      
        Fix a compilation warning caused by c5799:
      
        handler/ha_innodb.cc: In function 'void innobase_get_cset_width(ulint, ulint*, ulint*)':
        handler/ha_innodb.cc:830: warning: format '%d' expects type 'int', but argument 2 has type 'ulint'
        ------------------------------------------------------------------------
        r5834 | jyang | 2009-09-11 00:43:05 +0300 (Fri, 11 Sep 2009) | 5 lines
        Changed paths:
           M /branches/5.1/dict/dict0dict.c
           M /branches/5.1/handler/ha_innodb.cc
           A /branches/5.1/mysql-test/innodb_bug44369.result
           A /branches/5.1/mysql-test/innodb_bug44369.test
           M /branches/5.1/row/row0mysql.c
      
        branches/5.1: Block creating table with column name conflicting
        with Innodb reserved key words. (Bug #44369) rb://151 approved
        by Sunny Bains.
        ------------------------------------------------------------------------
        r5895 | jyang | 2009-09-15 03:39:21 +0300 (Tue, 15 Sep 2009) | 5 lines
        Changed paths:
           M /branches/5.1/handler/ha_innodb.cc
           A /branches/5.1/mysql-test/innodb_bug46000.result
           A /branches/5.1/mysql-test/innodb_bug46000.test
      
        branches/5.1: Disallow creating index with the name of
        "GEN_CLUST_INDEX" which is reserved for the default system
        primary index. (Bug #46000) rb://149 approved by Marko Makela.
        ------------------------------------------------------------------------
      46db6073
  4. 08 Oct, 2009 3 commits
    • Satya B's avatar
      Applying InnoDB Plugin 1.0.5 snapshot, part 7 · 3c12db10
      Satya B authored
      From revisions r5792 to r5864
      
      Detailed revision comments:
      
      r5792 | vasil | 2009-09-09 08:35:58 -0500 (Wed, 09 Sep 2009) | 32 lines
      branches/zip:
      
      Fix a bug in manipulating the variable innodb_old_blocks_pct:
      
      for any value assigned it got that value -1, except for 75. When
      assigned 75, it got 75.
      
        mysql> set global innodb_old_blocks_pct=15;
        Query OK, 0 rows affected (0.00 sec)
        
        mysql> show variables like 'innodb_old_blocks_pct';
        +-----------------------+-------+
        | Variable_name         | Value |
        +-----------------------+-------+
        | innodb_old_blocks_pct | 14    | 
        +-----------------------+-------+
        1 row in set (0.00 sec)
        
        mysql> set global innodb_old_blocks_pct=75;
        Query OK, 0 rows affected (0.00 sec)
        
        mysql> show variables like 'innodb_old_blocks_pct';
        +-----------------------+-------+
        | Variable_name         | Value |
        +-----------------------+-------+
        | innodb_old_blocks_pct | 75    | 
        +-----------------------+-------+
      
      After the fix it gets exactly what was assigned.
      
      Approved by:	Marko (via IM)
      
      r5798 | calvin | 2009-09-09 10:28:10 -0500 (Wed, 09 Sep 2009) | 5 lines
      branches/zip:
      
      HA_ERR_TOO_MANY_CONCURRENT_TRXS is added in 5.1.38.
      But the plugin should still work with previous versions
      of MySQL.
      r5804 | marko | 2009-09-10 00:29:31 -0500 (Thu, 10 Sep 2009) | 1 line
      branches/zip: trx_cleanup_at_db_startup(): Fix a typo in comment.
      r5822 | marko | 2009-09-10 05:10:20 -0500 (Thu, 10 Sep 2009) | 1 line
      branches/zip: buf_page_release(): De-stutter the function comment.
      r5825 | marko | 2009-09-10 05:47:09 -0500 (Thu, 10 Sep 2009) | 20 lines
      branches/zip: Reduce mutex contention that was introduced when
      addressing Bug #45015 (Issue #316), in r5703.
      
      buf_page_set_accessed_make_young(): New auxiliary function, called by
      buf_page_get_zip(), buf_page_get_gen(),
      buf_page_optimistic_get_func(). Call ut_time_ms() outside of
      buf_pool_mutex. Use cached access_time.
      
      buf_page_set_accessed(): Add the parameter time_ms, so that
      ut_time_ms() need not be called while holding buf_pool_mutex.
      
      buf_page_optimistic_get_func(), buf_page_get_known_nowait(): Read
      buf_page_t::access_time without holding buf_pool_mutex. This should be
      OK, because the field is only used for heuristic purposes.
      
      buf_page_peek_if_too_old(): If buf_pool->freed_page_clock == 0, return
      FALSE, so that we will not waste time moving blocks in the LRU list in
      the warm-up phase or when the workload fits in the buffer pool.
      
      rb://156 approved by Sunny Bains
      r5826 | marko | 2009-09-10 06:29:46 -0500 (Thu, 10 Sep 2009) | 12 lines
      branches/zip: Roll back recovered dictionary transactions before
      dropping incomplete indexes (Issue #337).
      
      trx_rollback_or_clean_recovered(ibool all): New function, split from
      trx_rollback_or_clean_all_recovered().  all==FALSE will only roll back
      dictionary transactions.
      
      recv_recovery_from_checkpoint_finish(): Call
      trx_rollback_or_clean_recovered(FALSE) before
      row_merge_drop_temp_indexes().
      
      rb://158 approved by Sunny Bains
      r5858 | vasil | 2009-09-11 12:46:47 -0500 (Fri, 11 Sep 2009) | 4 lines
      branches/zip:
      
      Fix the indentation of the closing bracket.
      
      r5863 | vasil | 2009-09-12 02:07:08 -0500 (Sat, 12 Sep 2009) | 10 lines
      branches/zip:
      
      Check that pthread_t can indeed be passed to Solaris atomic functions, instead
      of assuming that it can be passed if 0 can be assigned to it. It could be that:
      * 0 can be assigned, but pthread_t cannot be passed and
      * 0 cannot be assigned but pthread_t can be passed
      
      Better to check what we are interested in, not something else and make
      assumptions.
      
      r5864 | vasil | 2009-09-12 02:22:55 -0500 (Sat, 12 Sep 2009) | 4 lines
      branches/zip:
      
      Include string.h which is needed for memset().
      
      3c12db10
    • Satya B's avatar
      Applying InnoDB Plugin 1.0.5 snapshot, part 4 · 388be0cb
      Satya B authored
      From revision r5703 to r5716
      
      Detailed revision comments:
      
      r5703 | marko | 2009-08-27 02:25:00 -0500 (Thu, 27 Aug 2009) | 41 lines
      branches/zip: Replace the constant 3/8 ratio that controls the LRU_old
      size with the settable global variable innodb_old_blocks_pct. The
      minimum and maximum values are 5 and 95 per cent, respectively. The
      default is 100*3/8, in line with the old behavior.
      
      ut_time_ms(): New utility function, to return the current time in
      milliseconds. TODO: Is there a more efficient timestamp function, such
      as rdtsc divided by a power of two?
      
      buf_LRU_old_threshold_ms: New variable, corresponding to
      innodb_old_blocks_time. The value 0 is the default behaviour: no
      timeout before making blocks 'new'.
      
      bpage->accessed, bpage->LRU_position, buf_pool->ulint_clock: Remove.
      
      bpage->access_time: New field, replacing bpage->accessed. Protected by
      buf_pool_mutex instead of bpage->mutex. Updated when a page is created
      or accessed the first time in the buffer pool.
      
      buf_LRU_old_ratio, innobase_old_blocks_pct: New variables,
      corresponding to innodb_old_blocks_pct
      
      buf_LRU_old_ratio_update(), innobase_old_blocks_pct_update(): Update
      functions for buf_LRU_old_ratio, innobase_old_blocks_pct.
      
      buf_page_peek_if_too_old(): Compare ut_time_ms() to bpage->access_time
      if buf_LRU_old_threshold_ms && bpage->old.  Else observe
      buf_LRU_old_ratio and bpage->freed_page_clock.
      
      buf_pool_t: Add n_pages_made_young, n_pages_not_made_young,
      n_pages_made_young_old, n_pages_not_made_young, for statistics.
      
      buf_print(): Display buf_pool->n_pages_made_young,
      buf_pool->n_pages_not_made_young.  This function is only for crash
      diagnostics.
      
      buf_print_io(): Display buf_pool->LRU_old_len and quantities derived
      from buf_pool->n_pages_made_young, buf_pool->n_pages_not_made_young.
      This function is invoked by SHOW ENGINE INNODB STATUS.
      
      rb://129 approved by Heikki Tuuri.  This addresses Bug #45015.
      r5704 | marko | 2009-08-27 03:31:17 -0500 (Thu, 27 Aug 2009) | 32 lines
      branches/zip: Fix a critical bug in fast index creation that could
      corrupt the created indexes.
      
      row_merge(): Make "half" an in/out parameter. Determine the offset of
      half the output file. Copy the last blocks record-by-record instead of
      block-by-block, so that the records can be counted. Check that the
      input and output have matching n_rec.
      
      row_merge_sort(): Do not assume that two blocks of size N are merged
      into a block of size 2*N. The output block can be shorter than the
      input if the last page of each input block is almost empty. Use an
      accurate termination condition, based on the "half" computed by
      row_merge().
      
      row_merge_read(), row_merge_write(), row_merge_blocks(): Add debug output.
      
      merge_file_t, row_merge_file_create(): Add n_rec, the number of records
      in the merge file.
      
      row_merge_read_clustered_index(): Update n_rec.
      
      row_merge_blocks(): Update and check n_rec.
      
      row_merge_blocks_copy(): New function, for copying the last blocks in
      row_merge().  Update and check n_rec.
      
      This bug was discovered with a user-supplied test case that creates an
      index where the initial temporary file is 249 one-megabyte blocks and
      the merged files become smaller. In the test, possible merge record
      sizes are 10, 18, and 26 bytes.
      
      rb://150 approved by Sunny Bains.  This addresses Issue #320.
      r5705 | marko | 2009-08-27 06:56:24 -0500 (Thu, 27 Aug 2009) | 11 lines
      branches/zip: dict_index_find_cols(): On column name lookup failure,
      return DB_CORRUPTION (HA_ERR_CRASHED) instead of abnormally
      terminating the server.  Also, disable the previously added diagnostic
      output to the error log, because mysql-test-run does not like extra
      output in the error log.  (Bug #44571)
      
      dict_index_add_to_cache(): Handle errors from dict_index_find_cols().
      
      mysql-test/innodb_bug44571.test: A test case for triggering the bug.
      
      rb://135 approved by Sunny Bains.
      r5706 | inaam | 2009-08-27 11:00:27 -0500 (Thu, 27 Aug 2009) | 20 lines
      branches/zip rb://147
      
      Done away with following two status variables:
      
      innodb_buffer_pool_read_ahead_rnd
      innodb_buffer_pool_read_ahead_seq
      
      Introduced two new status variables:
      innodb_buffer_pool_read_ahead = number of pages read as part of
      readahead since server startup
      innodb_buffer_pool_read_ahead_evicted = number of pages that are read
      in as readahead but were evicted before ever being accessed since
      server startup i.e.: a measure of how badly our readahead is
      performing
      
      SHOW INNODB STATUS will show two extra numbers in buffer pool section:
      pages read ahead/sec and pages evicted without access/sec
      
      Approved by: Marko
      
      r5707 | inaam | 2009-08-27 11:20:35 -0500 (Thu, 27 Aug 2009) | 6 lines
      branches/zip
      
      Remove unused macros as we erased the random readahead code in r5703.
      Also fixed some comments.
      
      
      r5708 | inaam | 2009-08-27 17:43:32 -0500 (Thu, 27 Aug 2009) | 4 lines
      branches/zip
      
      Remove redundant TRUE : FALSE from the return statement
      
      r5709 | inaam | 2009-08-28 01:22:46 -0500 (Fri, 28 Aug 2009) | 5 lines
      branches/zip rb://152
      
      Disable display of deprecated parameter innodb_file_io_threads in
      'show variables'.
      
      r5714 | marko | 2009-08-31 01:10:10 -0500 (Mon, 31 Aug 2009) | 5 lines
      branches/zip: buf_chunk_not_freed(): Do not acquire block->mutex unless
      block->page.state == BUF_BLOCK_FILE_PAGE.  Check that block->page.state
      makes sense.
      
      Approved by Sunny Bains over the IM.
      r5716 | vasil | 2009-08-31 02:47:49 -0500 (Mon, 31 Aug 2009) | 9 lines
      branches/zip:
      
      Fix Bug#46718 InnoDB plugin incompatible with gcc 4.1 (at least: on PPC): "Undefined symbol"
      
      by implementing our own check in plug.in instead of using the result from
      the check from MySQL because it is insufficient.
      
      Approved by:	Marko (rb://154)
      
      388be0cb
    • Satya B's avatar
      Applying InnoDB Plugin 1.0.5 snapshot, part 3 · 2ae1dab2
      Satya B authored
      From revision r5686 to r5702
      r5696 is already applied
      
      Detailed revision comments:
      
      r5686 | vasil | 2009-08-20 04:15:05 -0500 (Thu, 20 Aug 2009) | 4 lines
      branches/zip:
      
      White-space fixup.
      
      r5687 | vasil | 2009-08-20 04:20:22 -0500 (Thu, 20 Aug 2009) | 8 lines
      branches/zip:
      
      ChangeLog:
      Follow the convention from the rest of the ChangeLog: for bugfixes from
      bugs.mysql.com only the bug number and title goes in the ChangeLog. Detailed
      explanation on what is the problem and how it was fixed is present in
      the bugs database.
      
      r5694 | marko | 2009-08-26 06:25:26 -0500 (Wed, 26 Aug 2009) | 2 lines
      branches/zip: buf_page_t: Clarify that bpage->list may contain garbage.
      This comment was provoked by Inaam.
      r5695 | marko | 2009-08-26 08:14:59 -0500 (Wed, 26 Aug 2009) | 1 line
      branches/zip: UNIV_DEBUG_LOCK_VALIDATE: Move the definition to univ.i.
      r5697 | vasil | 2009-08-26 08:44:40 -0500 (Wed, 26 Aug 2009) | 4 lines
      branches/zip:
      
      Fix typo.
      
      r5698 | inaam | 2009-08-26 09:34:35 -0500 (Wed, 26 Aug 2009) | 13 lines
      branches/zip  bug#42885  rb://148
      
      The call to put IO threads to sleep was most probably meant for Windows
      only as the comment in buf0rea.c suggests. However it was enabled on
      all platforms. This patch restricts the sleep call to windows. This
      approach of not putting threads to sleep makes even more sense because
      now we have multiple threads working in the background and it probably
      is not a good idea to put all of them to sleep because a user thread
      wants to post a batch for readahead.
      
      Approved by: Marko
      
      
      r5701 | marko | 2009-08-27 02:01:42 -0500 (Thu, 27 Aug 2009) | 1 line
      branches/zip: Document r5698 in the ChangeLog.
      r5702 | marko | 2009-08-27 02:03:15 -0500 (Thu, 27 Aug 2009) | 1 line
      branches/zip: Document also the files affected by r5698 in the ChangeLog.
      2ae1dab2
  5. 24 Sep, 2009 1 commit
    • Luis Soares's avatar
      BUG#42829: binlogging enabled for all schemas regardless of · 2fcae333
      Luis Soares authored
      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.
      
      sql/sql_base.cc:
        Changed the check on decide_logging_format to take into account
        whether statement is filtered or not in SBR.
      sql/sql_class.cc:
        Added the thd_binlog_filter_ok to INNODB_COMPATIBILITY_HOOKS set.
      storage/innobase/handler/ha_innodb.cc:
        Extended check in external_lock to take into consideration the
        filtering when deciding to throw an error.
      storage/innobase/handler/ha_innodb.h:
        Added declaration of new hook.
      storage/innodb_plugin/handler/ha_innodb.cc:
        Extended check in external_lock to take into consideration the
        filtering when deciding to throw an error.
      storage/innodb_plugin/handler/ha_innodb.h:
        Added declaration of new hook.
      2fcae333
  6. 04 Aug, 2009 1 commit
  7. 30 Jul, 2009 1 commit
  8. 10 Jun, 2009 1 commit
    • Vladislav Vaintroub's avatar
      Backport WL#3653 to 5.1 to enable bundled innodb plugin. · dd86e2cd
      Vladislav Vaintroub authored
      Remove custom DLL loader code from innodb plugin code, use 
      symbols exported from mysqld.
      
      
      storage/innodb_plugin/handler/ha_innodb.cc:
        Remove a Win32 workaround for current_thd.
        The original  problem that innodb plugin used
        value of TLS variable across DLL boundaries is 
        solved in MySQL server (current_thd is a function
        not TLS variable now)
      storage/innodb_plugin/handler/handler0alter.cc:
        Remove custom delay loader
      storage/innodb_plugin/handler/handler0vars.h:
        Remove custom delay loader
      storage/innodb_plugin/handler/i_s.cc:
        Remove custom delay loader
      storage/innodb_plugin/handler/win_delay_loader.cc:
        Remove custom delay loader
      storage/innodb_plugin/plug.in:
        Remove commented out MYSQL_PLUGIN_STATIC, 
        CMake would not parse that correctly
      dd86e2cd
  9. 29 May, 2009 1 commit
    • Satya B's avatar
      Compile the Innodb plugin so that it can be installed as dynamic plugin only for now. · 7ced1da9
      Satya B authored
      The Innodb plugin 1.0.4 can be installed dynamically using the 'INSTALL PLUGIN' syntax
      
      If mysqld is already statically linked with the inbuilt innodb, it is not possible to 
      install the innodb plugin 1.0.4 dynamically. Doing so would throw this error - Function
      'innodb' already exists.
      
      storage/innodb_plugin/Makefile.am:
        Remove references of 'storage/innobase' and use $(srcdir) instead. 
        Renamed the dynamic plugin library name to 'ha_innodb_plugin' so 
        that it can be installed along with inbuilt plugin.
      storage/innodb_plugin/Makefile.in:
        Remove this file as it can be generated automatically by automake
        using the Makefile.am
      storage/innodb_plugin/handler/ha_innodb.cc:
        Remove refernces to "storage/innobase" and the headers can be included directly.
        Declare the plugin with the new name innodb_plugin
      storage/innodb_plugin/plug.in:
        Rename the plugin innobase as innodb_plugin
      7ced1da9
  10. 27 May, 2009 1 commit
  11. 13 May, 2009 1 commit
    • Anurag Shekhar's avatar
      Bug #39802 On Windows, 32-bit time_t should be enforced · 8fd498bc
      Anurag Shekhar authored
      This patch fixes compilation warning, "conversion from 'time_t' to 'ulong', 
      possible loss of data". 
      The fix is to typecast time_t to ulong before assigning it to ulong. 
      Backported this from 6.0-bugteam tree.
      
      
      storage/archive/ha_archive.cc:
        type casting time_t to ulong before assigning.
      storage/federated/ha_federated.cc:
        type casting time_t to ulong before assigning.
      storage/innobase/handler/ha_innodb.cc:
        type casting time_t to ulong before assigning.
      storage/myisam/ha_myisam.cc:
        type casting time_t to ulong before assigning.
      8fd498bc
  12. 19 May, 2009 1 commit
    • Satya B's avatar
      Applying InnoDB snashot 5.1-ss5024,part 3. Fixes BUG#42101 · fd7953b7
      Satya B authored
      BUG#42101 - Race condition in innodb_commit_concurrency
      
      Detailed revision comments:
      
      r4994 | marko | 2009-05-14 15:04:55 +0300 (Thu, 14 May 2009) | 18 lines
      branches/5.1: Prevent a race condition in innobase_commit() by ensuring
      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
      
      fd7953b7
  13. 15 Apr, 2009 1 commit
    • Satya B's avatar
      Applying InnoDB snashot 5.1-ss4699, part 3. Fixes BUG#43660 · 4d561a2a
      Satya B authored
      1) BUG#43660 - SHOW INDEXES/ANALYZE does NOT update cardinality 
                     for indexes of InnoDB table
      
      Detailed revision comments:
      
      r4699 | vasil | 2009-04-09 14:01:52 +0300 (Thu, 09 Apr 2009) | 15 lines
      branches/5.1:
      
      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)
      
      4d561a2a
  14. 12 Mar, 2009 4 commits
    • Timothy Smith's avatar
      Applying InnoDB snashot 5.1-ss4350, part 5. Fixes · 40f5c12d
      Timothy Smith authored
      Bug #43203  	Overflow from auto incrementing causes server segv
      
      Detailed revision comments:
      
      r4325 | sunny | 2009-03-02 02:28:52 +0200 (Mon, 02 Mar 2009) | 10 lines
      branches/5.1: Bug#43203: Overflow from auto incrementing causes server segv
      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
      40f5c12d
    • Timothy Smith's avatar
      Applying InnoDB snashot 5.1-ss4350, part 4. Fixes · 73111750
      Timothy Smith authored
      Bug #42714  	AUTO_INCREMENT errors in 5.1.31
      
      Detailed revision comments:
      
      r4287 | sunny | 2009-02-25 05:32:01 +0200 (Wed, 25 Feb 2009) | 10 lines
      branches/5.1: Fix Bug#42714 AUTO_INCREMENT errors in 5.1.31. There are two
      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.
      73111750
    • Timothy Smith's avatar
      Applying InnoDB snashot 5.1-ss4350, part 3. No functional changes. · 711c5b3a
      Timothy Smith authored
      Detailed revision comments:
      
      r4165 | calvin | 2009-02-12 01:34:27 +0200 (Thu, 12 Feb 2009) | 1 line
      branches/5.1: minor non-functional changes.
      711c5b3a
    • Timothy Smith's avatar
      Applying InnoDB snashot 5.1-ss4350, part 2. Fixes · 1ede546e
      Timothy Smith authored
      Bug #42400  	InnoDB autoinc code can't handle floating-point columns
      
      Detailed revision comments:
      
      r4065 | sunny | 2009-01-29 16:01:36 +0200 (Thu, 29 Jan 2009) | 8 lines
      branches/5.1: In the last round of AUTOINC cleanup we assumed that AUTOINC
      is only defined for integer columns. This caused an assertion failure when
      we checked for the maximum value of a column type. We now calculate the
      max value for floating-point autoinc columns too.
      
      Fix Bug#42400 - InnoDB autoinc code can't handle floating-point columns
      rb://84 and Mantis issue://162
      
      r4111 | sunny | 2009-02-03 22:06:52 +0200 (Tue, 03 Feb 2009) | 2 lines
      branches/5.1: Add the ULL suffix otherwise there is an overflow.
      1ede546e
  15. 03 Feb, 2009 1 commit
    • Alfranio Correia's avatar
      BUG#42445 Warning messages in innobase/handler/ha_innodb.cc · 5dda8326
      Alfranio Correia authored
            
      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.
      5dda8326
  16. 16 Jan, 2009 1 commit
  17. 15 Jan, 2009 1 commit
  18. 13 Jan, 2009 1 commit
    • Timothy Smith's avatar
      Applying InnoDB snapshot innodb-5.1-ss3603 · abd34d96
      Timothy Smith authored
      Detailed description of changes:
      r3601 | marko | 2008-12-22 16:05:19 +0200 (Mon, 22 Dec 2008) | 9 lines
      branches/5.1: Make
      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 UNCOMMITTED mode.
      (Bug #41671, Issue #146)
      
      rb://67 approved by Heikki Tuuri
      abd34d96
  19. 12 Jan, 2009 5 commits
    • Timothy Smith's avatar
      Applying InnoDB snapshot innodb-5.1-ss3603 · ff8017e7
      Timothy Smith authored
      Detailed description of changes:
      r3590 | marko | 2008-12-18 15:33:36 +0200 (Thu, 18 Dec 2008) | 11 lines
      branches/5.1: When converting a record to MySQL format, copy the default
      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
      ff8017e7
    • Timothy Smith's avatar
      Applying InnoDB snapshot innodb-5.1-ss3603 · 5ffe4a7f
      Timothy Smith authored
      Detailed description of changes:
      r3257 | inaam | 2008-11-24 22:06:50 +0200 (Mon, 24 Nov 2008) | 13 lines
      branches/5.1 bug#40760
      
      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
      5ffe4a7f
    • Timothy Smith's avatar
      Applying InnoDB snapshot innodb-5.1-ss3603 · 3b4a13b8
      Timothy Smith authored
      Detailed description of changes:
      
      r2981 | marko | 2008-11-07 14:54:10 +0200 (Fri, 07 Nov 2008) | 6 lines
      branches/5.1: row_mysql_store_col_in_innobase_format(): Correct a misleading
      comment. In the UTF-8 encoding, ASCII takes 1 byte per character, while
      the "latin1" character set (normally ISO-8859-1, but in MySQL it actually
      refers to the Windows Code Page 1252 a.k.a. CP1252, WinLatin1)
      takes 1 to 3 bytes (1 to 2 bytes for the ISO-8859-1 subset).
      
      r3114 | calvin | 2008-11-14 20:31:48 +0200 (Fri, 14 Nov 2008) | 8 lines
      branches/5.1: fix bug#40386: Not flushing query cache after truncate
      
      ha_statistics.records can not be 0 unless the table is empty, set to
      1 instead. The original problem of bug 29507 is fixed in the server.
      
      Additional test was done with the fix of bug 29507 in the server.
      
      Approved by: Heikki (on IM)
      3b4a13b8
    • Timothy Smith's avatar
      Applying InnoDB snapshot innodb-5.1-ss3603 · e1867f47
      Timothy Smith authored
      Detailed description of changes:
      r2902 | vasil | 2008-10-28 12:10:25 +0200 (Tue, 28 Oct 2008) | 10 lines
      branches/5.1:
      
      Fix Bug#38189 innodb_stats_on_metadata missing
      
      Make the variable innodb_stats_on_metadata visible to the users and
      also settable at runtime. Previously it was only "visible" as a command
      line startup option to mysqld.
      
      Approved by:	Marko (https://svn.innodb.com/rb/r/36)
      e1867f47
    • Tatiana A. Nurnberg's avatar
      Bug#31177: Server variables can't be set to their current values · 7a3c3619
      Tatiana A. Nurnberg authored
      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.
      
      mysql-test/r/read_buffer_size_basic.result:
        test sets out of bounds value; we now throw a warning for this.
        This is a side-effect: before, the maximum was higher than the
        value we set here. The value was corrected to block-size, the
        maximum was not, hence the value was smaller than the maximum
        in this particular case. Now that we align the maxima at startup,
        the value in SET is larger than the (corrected) maximum, and we
        see a warning in this particular case. "This means we're doing it right."
      mysql-test/r/read_rnd_buffer_size_basic.result:
        test sets out of bounds value; we now throw a warning for this.
        This is a side-effect: before, the maximum was higher than the
        value we set here. The value was corrected to block-size, the
        maximum was not, hence the value was smaller than the maximum
        in this particular case. Now that we align the maxima at startup,
        the value in SET is larger than the (corrected) maximum, and we
        see a warning in this particular case. "This means we're doing it right."
      mysys/my_getopt.c:
        Do bounds-checking at start-up time so we'll catch and correct
        wonky default values and upper limits.
      sql/mysqld.cc:
        If 0 is a legal value per the docs, not to mention the default, we shouldn't give 1 as
        the lower limit.
      storage/innobase/handler/ha_innodb.cc:
        We are setting upper bounds here.
        ~0L gives -1. That is NOT what we want!
      7a3c3619
  20. 14 Dec, 2008 1 commit
    • Timothy Smith's avatar
      Apply InnoDB snapshot innodb-5.1-ss2858, part 15. Fixes · 3d343fb1
      Timothy Smith authored
      Bug #39830: Table autoinc value not updated on first insert.
      Bug #35498: Cannot get table test/table1 auto-inccounter value in ::info
      Bug #36411: Failed to read auto-increment value from storage engine" in 5.1.24 auto-inc
      
      Detailed revision comments:
      
      r2854 | sunny | 2008-10-23 08:30:32 +0300 (Thu, 23 Oct 2008) | 13 lines
      branches/5.1: Backport changes from branches/zip r2725
      
      Simplify the autoinc initialization code. This removes the
      non-determinism related to reading the table's autoinc value for the first
      time. This change has also reduced the sizeof dict_table_t by sizeof(ibool)
      bytes because we don't need the dict_table_t::autoinc_inited field anymore.
      
      rb://16
      3d343fb1