1. 17 Jun, 2008 3 commits
  2. 09 Jun, 2008 2 commits
    • vasil's avatar
      branches/zip: · 6fefe3bb
      vasil authored
      Update the ChangeLog.
      6fefe3bb
    • vasil's avatar
      branches/zip: Merge 2485:2489 from branches/5.1: · 931e02c3
      vasil authored
        ------------------------------------------------------------------------
        r2488 | vasil | 2008-06-09 13:53:12 +0300 (Mon, 09 Jun 2008) | 15 lines
        Changed paths:
           M /branches/5.1/mysql-test/innodb.result
        
        branches/5.1:
        
        Merge change from MySQL (this almost fixes the failing innodb test):
        
          ChangeSet@1.2613, 2008-05-07 09:58:21+04:00, sergefp@mysql.com +5 -0
            BUG#35850 "Performance regression in 5.1.23/5.1.24"
            - Disable the "prefer full scan on clustered primary key over full scan
              of any secondary key" rule introduced by BUG#35850.
            - Update test results accordingly
            (bk trigger: file this for BUG#35850)
          
            mysql-test/r/innodb.result@1.214, 2008-05-07 09:57:31+04:00, sergefp@mysql.com +15 -15
              BUG#35850 "Performance regression in 5.1.23/5.1.24"
              - Update test results
        
        ------------------------------------------------------------------------
        r2489 | vasil | 2008-06-09 14:16:51 +0300 (Mon, 09 Jun 2008) | 20 lines
        Changed paths:
           M /branches/5.1/mysql-test/innodb.result
        
        branches/5.1:
        
        Merge change from MySQL (this fixes the failing innodb test):
        
          ChangeSet@1.2628  2008-05-13 17:01:02+05:00  gshchepa@host.loc
            Merge host.loc:/work/bugs/5.0-bugteam-30059
            into  host.loc:/work/bk/5.1-bugteam
        
        NOTE: the diff for mysql-test/r/innodb.result in this ChangeSet looks
        empty but the line:
        
        Data truncated for column 'c' at row 1
        
        is present in annotated mysql-test/r/innodb.result@1.215 [1]
        and not present in annotated mysql-test/r/innodb.result@1.216 [2] so it
        must have been deleted in the above ChangeSet.
        
        [1] http://mysql.bkbits.net:8080/mysql-5.1/mysql-test/r/innodb.result?PAGE=anno&REV=4825e033JNz_463Ha9pwInSjqLvIQg
        [2] http://mysql.bkbits.net:8080/mysql-5.1/mysql-test/r/innodb.result?PAGE=anno&REV=482982fcUoskWjhU2xMH2BZ4Gyukfg
        
        ------------------------------------------------------------------------
      931e02c3
  3. 06 Jun, 2008 2 commits
    • vasil's avatar
      branches/zip: · 7cb41a85
      vasil authored
      Update the ChangeLog.
      7cb41a85
    • vasil's avatar
      branches/zip: Merge 2437:2485 from branches/5.1: · b21c94dc
      vasil authored
      (r2478 was skipped for the obvious reason)
      
        ------------------------------------------------------------------------
        r2464 | vasil | 2008-05-19 17:59:42 +0300 (Mon, 19 May 2008) | 9 lines
        
        branches/5.1:
        
        Fix Bug#36600 SHOW STATUS takes a lot of CPU in buf_get_latched_pages_number
        
        by removing the Innodb_buffer_pool_pages_latched variable from
        SHOW STATUS output in non-UNIV_DEBUG compilation.
         
        Approved by:	Heikki
        
        ------------------------------------------------------------------------
        r2466 | calvin | 2008-05-20 01:37:14 +0300 (Tue, 20 May 2008) | 12 lines
        
        branches/5.1:
        
        Fix Bug#11894 innodb_file_per_table crashes w/ Windows .sym symbolic
        link hack
        
        The crash was due to un-handled error 3 (path not found). In the case
        of file per table, change the call to os_file_handle_error_no_exit()
        from os_file_handle_error(). Also, checks for full path pattern during
        table create (Windows only), which is used in symbolic link and temp
        table creation.
        
        Approved by:	Heikki
        ------------------------------------------------------------------------
        r2478 | sunny | 2008-05-23 08:29:08 +0300 (Fri, 23 May 2008) | 3 lines
        
        branches/5.1: Fix for bug# 36793. This is a back port from branches/zip. This
        code has been tested on a big-endian machine too.
        
        ------------------------------------------------------------------------
        r2480 | vasil | 2008-05-27 11:40:07 +0300 (Tue, 27 May 2008) | 11 lines
        
        branches/5.1:
        
        Fix Bug#36819 ut_usectime does not handle errors from gettimeofday
        
        by retrying gettimeofday() several times if it fails in ut_usectime().
        If it fails on all calls then return error to the caller to be handled
        at higher level.
        
        Update the variable innodb_row_lock_time_max in SHOW STATUS output only
        if ut_usectime() was successful.
        
        ------------------------------------------------------------------------
        r2482 | sunny | 2008-05-28 12:18:35 +0300 (Wed, 28 May 2008) | 5 lines
        
        branches/5.1: Fix for Bug#35602, "Failed to read auto-increment value from
        storage engine". The test for REPLACE was an error of ommission since it's
        classified as a simple INSERT. For REPLACE statements we don't acquire
        the special AUTOINC lock for AUTOINC_NEW_STYLE_LOCKING with this fix.
        
        ------------------------------------------------------------------------
        r2485 | vasil | 2008-05-28 16:01:14 +0300 (Wed, 28 May 2008) | 9 lines
        
        branches/5.1:
        
        Fix Bug#36149 Read buffer overflow in srv0start.c found during "make test"
        
        Use strncmp(3) instead of memcmp(3) to avoid reading past end of the string
        if it is empty (*str == '\0'). This bug is _not_ a buffer overflow.
        
        Discussed with:	Sunny (via IM)
        
        ------------------------------------------------------------------------
      b21c94dc
  4. 21 May, 2008 1 commit
  5. 19 May, 2008 1 commit
    • vasil's avatar
      branches/zip: · 27387685
      vasil authored
      Non-functional change - conform to our coding style and make more readbale
      (hopefully) by not using variables with names "v" and "w".
      27387685
  6. 17 May, 2008 1 commit
    • inaam's avatar
      branches/zip: · 862b707f
      inaam authored
      Fixed compilation warning introduced during POSIX AIO clean up patch.
      
      Spotted by: Sunny and Vasil
      862b707f
  7. 16 May, 2008 1 commit
    • inaam's avatar
      branches/zip: · 18c42123
      inaam authored
      Clean up the POSIX_ASYNC_IO code which is currently not used and is unlikely to be ever used.
      18c42123
  8. 14 May, 2008 1 commit
  9. 08 May, 2008 2 commits
    • sunny's avatar
      branches/zip: Fix bug# 36172. The zip code changes a precondition that a · b2f0382e
      sunny authored
      page must be big enough to store two records, this is done because compression
      later may very well result in two records residing on the same page. This
      change handles the case where only one record fits on a page. We don't
      split the page in the middle by default if there is only record on the page.
      We only split the page if the tuple to be inserted is less than existing
      record. That way the existing record is copied over to the right page
      during the split and the new tuple is inserted to the left.
      b2f0382e
    • sunny's avatar
      branches/zip: Non functional change. · 54d4bb06
      sunny authored
      54d4bb06
  10. 07 May, 2008 3 commits
    • vasil's avatar
      branches/zip: · d36e588d
      vasil authored
      Add a ChangeLog entry for Bug#36222
      d36e588d
    • vasil's avatar
      branches/zip: · b3fabcfb
      vasil authored
      Add new entries to the ChangeLog
      b3fabcfb
    • vasil's avatar
      branches/zip: · 68ba0e9f
      vasil authored
      Remove too detailed entry from ChangeLog. Best to have only user-visible
      changes there.
      68ba0e9f
  11. 06 May, 2008 4 commits
    • sunny's avatar
      1cd233d2
    • calvin's avatar
      branches/zip: · fc02f76d
      calvin authored
      Implement the system tablespace tagging described on the wiki:
      https://svn.innodb.com/innobase/InnoDB_version_and_feature_compatibility
      
      A brief description of the changes:
      
      * The file format tag will be saved in the trx system page, starting at
        (UNIV_PAGE_SIZE - 16) for 8 bytes.
      * The configuration parameter innodb_file_format_check is introduced.
        This variable can be set to on/off and any of the supported file
        formats in the configuration file, but can only be set to any of
        the supported file formats during runtime. The default is on.
      * During table create/open, check the current file format against
        the max in file_format_max. If the current file format is newer,
        update file_format_max and tag the system tablespace with the
        newer one in a normal mtr.
      * During startup, write the tag to the error log and check it against
        DICT_TF_FORMAT_MAX. Refuse to start with error, if
        -- DICT_TF_FORMAT_MAX < the tag, and
        -- innodb_file_format_check is ON
        Print out a warning , if
        -- DICT_TF_FORMAT_MAX < the tag, but
        -- innodb_file_format_check is off
      * The system tablespace tag is re-settable using:
        set innodb_file_format_check = <file_format>
      
      Approved by:	Sunny
      fc02f76d
    • vasil's avatar
      branches/zip: · 3bad6e25
      vasil authored
       
      Add InnoDB version in these places:
       
      * In INFORMATION_SCHEMA.PLUGINS.PLUGIN_VERSION, only 1.2 out of 1.2.3
        because MySQL supports only one dot there
       
      * At startup:
        "080501 12:28:06 InnoDB Plugin 1.0.1 started; log sequence number 46509"
      
      * In a server variable innodb_version;
        mysql> select @@innodb_version;
        +------------------+
        | @@innodb_version |
        +------------------+
        | 1.0.1            |
        +------------------+
      
      Approved by:	Sunny
      3bad6e25
    • vasil's avatar
      branches/zip: · 2daf8121
      vasil authored
       
      Allow InnoDB I_S plugins to be installed when InnoDB storage engine is
      not installed but show empty tables when SELECTing from them in this
      case. Set srv_was_started to FALSE at the end of
      innobase_shutdown_for_mysql() so the I_S plugins can detect if InnoDB is
      uninstalled.
       
      This is needed to workaround the MySQL
      Bug#36399 Double free bug when INFORMATION_SCHEMA plugin init function fails
      and is more flexible as it allows I_S plugins to be installed before the
      InnoDB plugin and detects if the latter is uninstalled after this.
      
      Approved by:	Heikki
      2daf8121
  12. 05 May, 2008 1 commit
  13. 04 May, 2008 2 commits
  14. 30 Apr, 2008 6 commits
    • vasil's avatar
      branches/zip: Merge 2423:2437 from branches/5.1: · 9dd184ef
      vasil authored
        ------------------------------------------------------------------------
        r2429 | vasil | 2008-04-30 11:19:06 +0300 (Wed, 30 Apr 2008) | 10 lines
        
        branches/5.1:
        
        * Use INNODB_CFLAGS insead of cluttering CFLAGS with InnoDB specific
          flags. CFLAGS are used to compile every file in the MySQL source tree.
        
        * Add INNODB_DYNAMIC_CFLAGS to the flags of the dynamic plugin and use
          -prefer-non-pic to make the dynamic plugin faster on i386.
        
        Approved by:	Sunny
        
        ------------------------------------------------------------------------
        r2430 | vasil | 2008-04-30 11:48:35 +0300 (Wed, 30 Apr 2008) | 8 lines
        
        branches/5.1:
        
        Use CFLAGS instead of INNODB_CFLAGS to avoid having incompatible flags
        inserted in CFLAGS and INNODB_CFLAGS and to avoid compiling mysql and
        innodb with different flags.
        
        Discussed with:	Sunny
        
        ------------------------------------------------------------------------
        r2431 | vasil | 2008-04-30 11:54:49 +0300 (Wed, 30 Apr 2008) | 4 lines
        
        branches/5.1:
        
        Fix r2430, it should be CFLAGS="$CFLAGS ..." not CFLAGS="..."
        
        ------------------------------------------------------------------------
        r2432 | vasil | 2008-04-30 11:58:38 +0300 (Wed, 30 Apr 2008) | 4 lines
        
        branches/5.1:
        
        Non-functional change: use tabs for indentation in plug.in.
        
        ------------------------------------------------------------------------
        r2433 | vasil | 2008-04-30 12:02:35 +0300 (Wed, 30 Apr 2008) | 5 lines
        
        branches/5.1:
        
        Add vim modeline to hint it that plug.in is a config file
        so it can be colorized.
        
        ------------------------------------------------------------------------
        r2434 | vasil | 2008-04-30 18:45:44 +0300 (Wed, 30 Apr 2008) | 17 lines
        
        branches/5.1:
        
        Merge changes from MySQL:
        
          ChangeSet@1.2645, 2007-12-19 13:24:43+00:00, jperkin@chorlton.adsl.perkin.org.uk +14 -0
            Add new pkgplugindir handling to seperate plugins from libraries,
            and allow override for binary distributions.  Extend mysql_config
            to print compiled-in plugin location for third-party plugins to
            use.  Resolves bug#31736.
        
        and
        
          ChangeSet@1.2646, 2008-01-02 13:00:46+00:00, jperkin@chorlton.adsl.perkin.org.uk +11 -0
            Use pkglibdir to simplify pkgplugindir, and fix the path in a
            couple of Makefiles.  Continuation of the fix for bug#31736.
        
        
        ------------------------------------------------------------------------
        r2435 | vasil | 2008-04-30 19:04:36 +0300 (Wed, 30 Apr 2008) | 10 lines
        
        branches/5.1:
        
        Merge change from MySQL:
        
          ChangeSet@1.2563, 2008-03-18 19:42:04+04:00, gluh@mysql.com +1 -0
            Bug#35406 5.1-opt crashes on select from I_S.REFERENTIAL_CONSTRAINTS
            added intialization of f_key_info.referenced_key_name for the case when
            referenced table is dropped
        
        
        ------------------------------------------------------------------------
        r2436 | vasil | 2008-04-30 19:15:46 +0300 (Wed, 30 Apr 2008) | 7 lines
        
        branches/5.1:
        
        Non-functional white space change in Makefile.am:
        Use tabs for indentation and be consistent about spaces around the
        equal sign.
        
        
        ------------------------------------------------------------------------
        r2437 | vasil | 2008-04-30 20:36:11 +0300 (Wed, 30 Apr 2008) | 8 lines
        
        branches/5.1:
        
        Fix Bug#36434 ha_innodb.so is installed in the wrong directory
        
        Change pkglib_LTLIBRARIES with pkgplugin_LTLIBRARIES which has been
        forgotten in this commit: http://lists.mysql.com/commits/40206
        
        
        ------------------------------------------------------------------------
      9dd184ef
    • vasil's avatar
      Rename install_dynamic.sql to install_innodb_plugins.sql · 508c71fe
      vasil authored
      Suggested by:	Ken
      508c71fe
    • vasil's avatar
      Add SQL script to install InnoDB if it is built as a dynamic plugin · 5e446ef7
      vasil authored
      Suggested by:	Ken
      5e446ef7
    • vasil's avatar
    • vasil's avatar
      Add ChangeLog. · 4d0cd8e4
      vasil authored
      Formatted in compliance with many GNU tools, roughly described in
      http://www.gnu.org/software/guile/changelogs/guile-changelogs_toc.html
      4d0cd8e4
    • vasil's avatar
      branches/zip: Merge 2384:2423 from branches/5.1: · 55db138b
      vasil authored
        ------------------------------------------------------------------------
        r2386 | vasil | 2008-03-27 07:45:02 +0200 (Thu, 27 Mar 2008) | 22 lines
        
        branches/5.1:
        
        Merge change from MySQL (this fixes the failing innodb test):
        
        ChangeSet@1.1810.3601.4, 2008-02-07 02:33:21+04:00, gshchepa@host.loc +9 -0
          Fixed bug#30059.
          Server handles truncation for assignment of too-long values
          into CHAR/VARCHAR/TEXT columns in a different ways when the
          truncated characters are spaces:
          1. CHAR(N) columns silently ignore end-space truncation;
          2. TEXT columns post a truncation warning/error in the
             non-strict/strict mode.
          3. VARCHAR columns always post a truncation note in
             any mode.
        
          Space truncation processing has been synchronised over
          CHAR/VARCHAR/TEXT columns: current behavior of VARCHAR
          columns has been propagated as standard.
        
          Binary-encoded string/BLOB columns are not affected.
        
        
        ------------------------------------------------------------------------
        r2387 | vasil | 2008-03-27 08:49:05 +0200 (Thu, 27 Mar 2008) | 8 lines
        
        branches/5.1:
        
        Check whether *trx->mysql_query_str is != NULL in addition to
        trx->mysql_query_str. This adds more safety.
        
        This may or may not fix Bug#35226 RBR event crashes slave.
        
        
        ------------------------------------------------------------------------
        r2388 | vasil | 2008-03-27 14:02:34 +0200 (Thu, 27 Mar 2008) | 7 lines
        
        branches/5.1:
        
        Swap the order in which mysql_thd, mysql_query_str and *mysql_query_str
        are checked for non-NULL.
        
        Suggested by:	Marko
        
        ------------------------------------------------------------------------
        r2419 | vasil | 2008-04-23 19:08:06 +0300 (Wed, 23 Apr 2008) | 9 lines
        
        branches/5.1:
        
        Change the fix for Bug#32440 to show bytes instead of kilobytes in
        INFORMATION_SCHEMA.TABLES.DATA_FREE.
        
        Suggested by:	Domas Mituzas <domas@mysql.com>
        Approved by:	Heikki
        
        
        ------------------------------------------------------------------------
        r2420 | calvin | 2008-04-24 15:25:30 +0300 (Thu, 24 Apr 2008) | 4 lines
        
        branches/5.1: Fix bug#29507 TRUNCATE shows to many rows effected
        
        In InnoDB, the row count is only a rough estimate used by SQL
        optimization. InnoDB is now return row count 0 for TRUNCATE operation.
        ------------------------------------------------------------------------
        r2421 | calvin | 2008-04-24 15:32:30 +0300 (Thu, 24 Apr 2008) | 6 lines
        
        branches/5.1: Fix bug#35537 - Innodb doesn't increment handler_update
        and handler_delete
        
        Add the calls to ha_statistic_increment() in ha_innobase::delete_row()
        and ha_innobase::update_row().
        
        ------------------------------------------------------------------------
        r2422 | vasil | 2008-04-24 16:00:30 +0300 (Thu, 24 Apr 2008) | 11 lines
        
        branches/5.1:
        
        Fix Bug#36169 create innodb compressed table with too large row size crashed
        
        Sometimes it is possible that
        row_drop_table_for_mysql(index->table_name, trx, FALSE); is invoked in
        row_create_index_for_mysql() when the index object is freed so copy the
        table name to a safe place beforehand and use the copy.
        
        Approved by:	Sunny
        
        ------------------------------------------------------------------------
      55db138b
  15. 29 Apr, 2008 1 commit
    • vasil's avatar
      branches/zip: · 03a3d076
      vasil authored
       
      Fix Mantis issue#34 https://svn.innodb.com/mantis/view.php?id=34
      "I_S plugins should refuse to load if the storage engine plugin is not loaded"
      and MySQL Bug#36310 http://bugs.mysql.com/36310
      "InnoDB plugin crash"
      
      * Make srv_was_started public
      * Set srv_was_started at the end of innobase_start_or_create_for_mysql()
        so it is not set to TRUE if innodb encounters some startup error
      * Refuse to start any of the I_S plugins if srv_was_started is not TRUE
      
      Approved by:	Heikki
      03a3d076
  16. 23 Apr, 2008 1 commit
    • vasil's avatar
      branches/zip: · a5b8b883
      vasil authored
      Fix Bug#36169 create innodb compressed table with too large row size crashed
      
      Sometimes it is possible that
      row_drop_table_for_mysql(index->table_name, trx, FALSE); is invoked in
      row_create_index_for_mysql() when the index object is freed, so copy the
      table name to a safe place beforehand and use the copy.
      
      Approved by:	Sunny
      a5b8b883
  17. 12 Apr, 2008 1 commit
  18. 11 Apr, 2008 3 commits
  19. 10 Apr, 2008 2 commits
    • calvin's avatar
      branches/zip: Implementation of using animal names for innodb_file_format, · e978b4a2
      calvin authored
      described in Mantis#30. Specifically:
      
      - Allow innodb_file_format to take string arguments
      - Make innodb_file_format system variable a string instead of a number
      - Implement the callback functions
      - Update warning messages
      
      Three new functions are implemented:
      
      file_format_name_lookup(): Validate the file format name and return
      its corresponding id.
      
      innodb_file_format_check(): Check if it is a valid file format. This
      function is registered as a callback with MySQL.
      
      innodb_file_format_update(): Update the global variable using the
      "saved" value. This functions is registered as a callback with MySQL.
      e978b4a2
    • sunny's avatar
      branches/zip: Handle rename of variables. If the statically linked in engine · 0f9b2523
      sunny authored
      has a config variable that has since been renamed, we use a mapping table
      to check for matches.
      0f9b2523
  20. 09 Apr, 2008 2 commits