1. 30 Apr, 2008 8 commits
    • vasil's avatar
      branches/5.1: · 62cd5e0c
      vasil authored
      Non-functional white space change in Makefile.am:
      Use tabs for indentation and be consistent about spaces around the
      equal sign.
      
      62cd5e0c
    • vasil's avatar
      branches/5.1: · 486772f8
      vasil authored
      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
      
      486772f8
    • vasil's avatar
      branches/5.1: · 4d9cb99b
      vasil authored
      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.
      
      4d9cb99b
    • vasil's avatar
      branches/5.1: · e695a4a4
      vasil authored
      Add vim modeline to hint it that plug.in is a config file
      so it can be colorized.
      e695a4a4
    • vasil's avatar
      branches/5.1: · 8a0a86d8
      vasil authored
      Non-functional change: use tabs for indentation in plug.in.
      8a0a86d8
    • vasil's avatar
      branches/5.1: · e06d318d
      vasil authored
      Fix r2430, it should be CFLAGS="$CFLAGS ..." not CFLAGS="..."
      e06d318d
    • vasil's avatar
      branches/5.1: · 8b53ecf6
      vasil authored
      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
      8b53ecf6
    • vasil's avatar
      branches/5.1: · e90c70ce
      vasil authored
      * 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
      e90c70ce
  2. 24 Apr, 2008 3 commits
    • vasil's avatar
      branches/5.1: · 16a019dc
      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
      16a019dc
    • calvin's avatar
      branches/5.1: Fix bug#35537 - Innodb doesn't increment handler_update · 3ce609c7
      calvin authored
      and handler_delete
      
      Add the calls to ha_statistic_increment() in ha_innobase::delete_row()
      and ha_innobase::update_row().
      3ce609c7
    • calvin's avatar
      branches/5.1: Fix bug#29507 TRUNCATE shows to many rows effected · ffce3a3a
      calvin authored
      In InnoDB, the row count is only a rough estimate used by SQL
      optimization. InnoDB is now return row count 0 for TRUNCATE operation.
      ffce3a3a
  3. 23 Apr, 2008 1 commit
    • vasil's avatar
      branches/5.1: · 14b6a963
      vasil authored
      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
      
      14b6a963
  4. 27 Mar, 2008 3 commits
    • vasil's avatar
      branches/5.1: · d4ed9407
      vasil authored
      Swap the order in which mysql_thd, mysql_query_str and *mysql_query_str
      are checked for non-NULL.
      
      Suggested by:	Marko
      d4ed9407
    • vasil's avatar
      branches/5.1: · 7da8b3d5
      vasil authored
      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.
      
      7da8b3d5
    • vasil's avatar
      branches/5.1: · 0aa99307
      vasil authored
      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.
      
      0aa99307
  5. 26 Mar, 2008 2 commits
    • vasil's avatar
      branches/5.1: · d2914449
      vasil authored
      Fix Bug#34300 Tinyblob & tinytext fields currupted after export/import and alter in 5.1
      
      Copy the BLOB fields, that are stored internally, to a safe place
      (prebuilt->blob_heap) when converting a row from InnoDB format to
      MySQL format in row_sel_store_mysql_rec().
      
      The bug was introduced in:
      
       ------------------------------------------------------------------------
       r587 | osku | 2006-05-23 15:35:58 +0300 (Tue, 23 May 2006) | 3 lines
       
       Optimize BLOB selects by using prebuilt->blob_heap directly instead of first
       reading BLOB data to a temporary heap and then copying it to
       prebuilt->blob_heap.
       ------------------------------------------------------------------------
      
      Approved by:	Heikki
      d2914449
    • vasil's avatar
      branches/5.1: · 3334a68d
      vasil authored
      Fix typo in comment.
      3334a68d
  6. 21 Mar, 2008 1 commit
    • sunny's avatar
      branches/5.1: Fix for Bug# 35352. We've added a heuristic that checks · f0b00172
      sunny authored
      the size of the UNDO slots cache lists (insert and upate). If either of
      cached lists has more than 500 entries then we add any UNDO slots that are
      freed, to the common free list instead of the cache list, this is to avoid
      the case where all the free slots end up in only one of the lists on startup
      after a crash.
      
      Tested with test case for 26590 and passes all mysql-test(s).
      f0b00172
  7. 19 Mar, 2008 1 commit
    • vasil's avatar
      branches/5.1: · ed9b1a16
      vasil authored
       
      Fix Bug#34823:
      fsync() occasionally returns ENOLCK and causes InnoDB to restart mysqld
      
      Create a wrapper to fsync(2) that retries the operation if the error is
      ENOLCK. Use that wrapper instead of fsync(2).
      
      Approved by:	Heikki
      ed9b1a16
  8. 18 Mar, 2008 1 commit
    • vasil's avatar
      branches/5.1: · 7609df7f
      vasil authored
       
      Fix Bug#35220 ALTER TABLE too picky on reserved word "foreign".
       
      In ALTER TABLE, change the internal parser to search for
      ``FOREIGN[[:space:]]'' instead of only ``FOREIGN'' when parsing
      ALTER TABLE ... DROP FOREIGN KEY ...; otherwise it could be mistaken
      with ALTER TABLE ... DROP foreign_col;
       
      Approved by:	Heikki
      7609df7f
  9. 17 Mar, 2008 1 commit
  10. 12 Mar, 2008 1 commit
  11. 11 Mar, 2008 2 commits
  12. 05 Mar, 2008 1 commit
    • sunny's avatar
      branches/5.1: Change the InnoDB autoinc type to ulint64. For this added a · b657301e
      sunny authored
      new typedef to univ.i (ib_ulonglong). Added checks for overflow and removed
      the assertion where it crashed previously, since the type has now changed
      to unsigned, it doesn't make sense to check for < 0. Added new tests, to
      check for overflow, for the different INT types supported for both
      signed and unsigned.
      
      Fixes Bug# 34335
      b657301e
  13. 03 Mar, 2008 1 commit
  14. 11 Feb, 2008 1 commit
    • vasil's avatar
      branches/5.1: · 30ee677a
      vasil authored
      Merge r2294 from branches/5.0:
      
      Fix typo and add comma in comment.
      30ee677a
  15. 07 Feb, 2008 1 commit
    • vasil's avatar
      branches/5.1: · 613bcee7
      vasil authored
      Fix Bug#34053:
      * In CREATE TABLE and DROP TABLE check whether the table in question is one
        of the magic innodb_monitor tables and whether the user has enough rights
        to mess with it before doing anything else.
      * Implement a mysql-test testcase.
      
      Approved by:	Heikki
      613bcee7
  16. 05 Feb, 2008 2 commits
    • vasil's avatar
      branches/5.1: · 89fdcd3b
      vasil authored
      Fix typo in comment.
      89fdcd3b
    • vasil's avatar
      branches/5.1: · 4a71a092
      vasil authored
      Rename the user visible parameter innodb-use-adaptive-hash-indexes to
      innodb-adaptive-hash-index so that it is in sync with MySQL 5.0.
      
      Suggested by:	Heikki
      Approved by:	Heikki
      4a71a092
  17. 03 Feb, 2008 1 commit
    • inaam's avatar
      branches/5.1: Port of r2267 · ada26a24
      inaam authored
      This is a combination of changes that forward port the scalability fix applied to 5.0
      through r1001.
      It reverts changes r149 and r122 (these were 5.1 specific changes made in lieu of
      scalability fix of 5.0)
      Then it applies r1001 to 5.0 which is the original scalability fix.
      Finally it applies r2082 which fixes an issue with the original fix.
      
      Reviewed by: Heikki
      ada26a24
  18. 28 Jan, 2008 3 commits
    • marko's avatar
      branches/5.1: · 4670ad0e
      marko authored
      innodb.result: Fix results after merging changes from MySQL.  Maybe some
      changes were incorrectly merged in the past?
      4670ad0e
    • marko's avatar
      branches/5.1: Merge a change from MySQL AB: · f9539c17
      marko authored
      ChangeSet@2007-11-27 09:25:45+01:00, istruewing@stella.local 
      Bug#32754 - InnoDB tests do not prepare or clean up correctly
          
      Some test cases were missing preparation to deal with failed
      predecessor test cases.
          	  
      Added preparation (drop table if exists) to some test cases.
      
      innodb-semi-consistent.test: Added preparation (drop table if exists).
      f9539c17
    • marko's avatar
      branches/5.1: Merge a change from MySQL AB: · fd352f8b
      marko authored
      ChangeSet@2007-10-13 15:49:42+03:00, aelkin@koti.dsl.inet.fi
      
      Bug #29136 erred multi-delete on trans table does not rollback the statement
      
      innodb.test, innodb.result: trans table specific test added
      fd352f8b
  19. 16 Jan, 2008 1 commit
    • vasil's avatar
      branches/5.1: · 81db7e57
      vasil authored
      Fix formatting of the autoinc-lock-mode command line parameter.
      
      Old view (./mysqld --help --verbose):
      
        --innodb-autoinc-lock-mode=#
                            The AUTOINC lock modes supported by InnoDB:
        0 => Old
                            style AUTOINC locking (for backward compatibility)
        1 =>
                            New style AUTOINC locking
        2 => No AUTOINC locking
                            (unsafe for SBR)
      
      New view:
      
        --innodb-autoinc-lock-mode=#
                            The AUTOINC lock modes supported by InnoDB:
                            0 => Old style AUTOINC locking (for backward
                            compatibility)
                            1 => New style AUTOINC locking
                            2 => No AUTOINC locking (unsafe for SBR)
      
      Looks like these strings are "automatically" wrapped by MySQL in the
      following way:
      * newlines (\n) in the string are ignored
      * newline separator (\n) is inserted every 57 or so characters.
      * lots of white space is appended to each inserted new line.
      
      Approved by:	Heikki
      81db7e57
  20. 15 Jan, 2008 1 commit
    • inaam's avatar
      branches/5.1: bug#33349 · 3fdcdee8
      inaam authored
      Introduce retry/sleep logic as a workaround for a transient bug
      where ::open fails for partitioned tables randomly if we are using
      one file per table.
      
      
      Reviewed by: Heikki
      
      3fdcdee8
  21. 04 Jan, 2008 4 commits
    • vasil's avatar
      branches/5.1: · a202a27f
      vasil authored
      Merge change from MySQL AB:
      
      ChangeSet@1.2639, 2007-11-23 12:51:14+01:00, mkindahl@dl145h.mysql.com +7 -0
        Post-merge fixes.
      
        mysql-test/r/innodb.result@1.206, 2007-11-23 12:51:10+01:00, mkindahl@dl145h.mysql.com +1 -1
          Result change.
      a202a27f
    • vasil's avatar
      branches/5.1: · f2994003
      vasil authored
      Merge change from MySQL AB:
      
      ChangeSet@1.2616, 2007-12-01 19:55:06+01:00, tnurnberg@mysql.com +8 -0
        Bug#31177: Server variables can't be set to their current values
       
        5.1+ specific fixes (plugins etc.)
      
        mysql-test/r/innodb.result@1.204, 2007-12-01 19:55:04+01:00, tnurnberg@mysql.com +2 -2
          we throw warnings to the client, yea, verily
      f2994003
    • vasil's avatar
      branches/5.1: · c03aef45
      vasil authored
      Merge change from MySQL AB:
      
      ChangeSet@1.2557, 2007-11-28 19:43:50+01:00, tnurnberg@mysql.com +21 -0
        Bug#31177: Server variables can't be set to their current values
      
        Default values of variables were not subject to upper/lower bounds
        and step, while setting variables was. Bounds and step are also
        applied to defaults now; defaults are corrected quietly, values
        given by the user are corrected, and a correction-warning is thrown
        as needed. Lastly, very large values could wrap around, starting
        from 0 again. They are bounded at the maximum value for the
        respective data-type now if no lower maximum is specified in the
        variable's definition.
      
        mysql-test/r/innodb.result@1.171, 2007-11-28 19:43:48+01:00, tnurnberg@mysql.com +4 -0
          We throw a warning now when we adjust out of range parameters.
      c03aef45
    • vasil's avatar
      branches/5.1: · f7434b38
      vasil authored
      Merge change from MySQL AB:
      
      ChangeSet@1.2612, 2007-11-07 19:59:58+04:00, ramil@mysql.com +6 -0
        Fix for bug #26447: "ALTER TABLE .. ORDER" does not work with InnoDB
        and auto_increment keys
      
        Problems:
          1. ALTER TABLE ... ORDER BY... doesn't make sence if there's a
             user-defined clustered index in the table.
          2. using a secondary index is slower than using a clustered one
             for a table scan.
      
        Fixes:
          1. raise a warning.
          2. use the clustered index.
      
        mysql-test/r/innodb.result@1.203, 2007-11-07 19:59:56+04:00, ramil@mysql.com +15 -15
          Fix for bug #26447: "ALTER TABLE .. ORDER" does not work with InnoDB
          and auto_increment keys
            - results adjusted.
      f7434b38