1. 09 Jun, 2008 1 commit
    • vasil's avatar
      branches/5.1: · 01ee37a3
      vasil authored
      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
      01ee37a3
  2. 28 May, 2008 2 commits
    • vasil's avatar
      branches/5.1: · 08c4820d
      vasil authored
      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)
      08c4820d
    • sunny's avatar
      branches/5.1: Fix for Bug#35602, "Failed to read auto-increment value from · 033fffe6
      sunny authored
      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.
      033fffe6
  3. 27 May, 2008 1 commit
    • vasil's avatar
      branches/5.1: · 068bf84c
      vasil authored
      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.
      068bf84c
  4. 23 May, 2008 1 commit
  5. 19 May, 2008 2 commits
    • calvin's avatar
      branches/5.1: · 1d628f12
      calvin authored
      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
      1d628f12
    • vasil's avatar
      branches/5.1: · bb959269
      vasil authored
      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
      bb959269
  6. 30 Apr, 2008 9 commits
    • vasil's avatar
      branches/5.1: · 22619de0
      vasil authored
      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
      
      22619de0
    • 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
  7. 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
  8. 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
  9. 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
  10. 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
  11. 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
  12. 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
  13. 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
  14. 17 Mar, 2008 1 commit
  15. 12 Mar, 2008 1 commit
  16. 11 Mar, 2008 2 commits
  17. 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
  18. 03 Mar, 2008 1 commit
  19. 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
  20. 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
  21. 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
  22. 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
  23. 28 Jan, 2008 1 commit
    • 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