An error occurred fetching the project authors.
  1. 11 Mar, 2014 1 commit
  2. 24 Oct, 2013 1 commit
    • Sergey Petrunya's avatar
      MDEV-5102 : MySQL Bug 69851 · 86901216
      Sergey Petrunya authored
      - Backport MySQL's fix: do set ha_partition::m_pkey_is_clustered for ha_partition 
        objects created with handler->clone() call.
      - Also, include a testcase.
      86901216
  3. 14 Feb, 2013 1 commit
    • Mattias Jonsson's avatar
      Bug#16274455: CAN NOT ACESS PARTITIONED TABLES WHEN · e9618282
      Mattias Jonsson authored
      DOWNGRADED FROM 5.6.11 TO 5.6.10
      
      Problem was new syntax not accepted by previous version.
      
      Fixed by adding version comment of /*!50531 around the
      new syntax.
      
      Like this in the .frm file:
      'PARTITION BY KEY /*!50611 ALGORITHM = 2 */ () PARTITIONS 3'
      and also changing the output from SHOW CREATE TABLE to:
      CREATE TABLE t1 (a INT)
      /*!50100 PARTITION BY KEY */ /*!50611 ALGORITHM = 1 */ /*!50100 ()
      PARTITIONS 3 */
      
      It will always add the ALGORITHM into the .frm for KEY [sub]partitioned
      tables, but for SHOW CREATE TABLE it will only add it in case it is the non
      default ALGORITHM = 1.
      
      Also notice that for 5.5, it will say /*!50531 instead of /*!50611, which
      will make upgrade from 5.5 > 5.5.31 to 5.6 < 5.6.11 fail!
      If one downgrades an fixed version to the same major version (5.5 or 5.6) the
      bug 14521864 will be visible again, but unless the .frm is updated, it will
      work again when upgrading again.
      
      Also fixed so that the .frm does not get updated version
      if a single partition check passes.
      e9618282
  4. 28 Jan, 2013 1 commit
    • unknown's avatar
      Fix for MDEV-3948, and backport of the following collection of fixes and backports · f65e5841
      unknown authored
      from MariaDB 10.0.
        
      The bug in mdev-3948 was an instance of the problem fixed by Sergey's patch
      in 10.0 - namely that the range optimizer could change table->[read | write]_set,
      and not restore it.
        
      revno: 3471
      committer: Sergey Petrunya <psergey@askmonty.org>
      branch nick: 10.0-serg-fix-imerge
      timestamp: Sat 2012-11-03 12:24:36 +0400
      message:
        # MDEV-3817: Wrong result with index_merge+index_merge_intersection, InnoDB table, join, AND and OR conditions
        Reconcile the fixes from:
        #
        # guilhem.bichot@oracle.com-20110805143029-ywrzuz15uzgontr0
        # Fix for BUG#12698916 - "JOIN QUERY GIVES WRONG RESULT AT 2ND EXEC. OR
        # AFTER FLUSH TABLES [-INT VS NULL]"
        #
        # guilhem.bichot@oracle.com-20111209150650-tzx3ldzxe1yfwji6
        # Fix for BUG#12912171 - ASSERTION FAILED: QUICK->HEAD->READ_SET == SAVE_READ_SET
        # and
        #
        and related fixes from: BUG#1006164, MDEV-376:
        
        Now, ROR-merged QUICK_RANGE_SELECT objects make no assumptions about the values
        of table->read_set and table->write_set.
        Each QUICK_ROR_SELECT has (and had before) its own column bitmap, but now, all 
        QUICK_ROR_SELECT's functions that care: reset(), init_ror_merged_scan(), and 
        get_next()  will set table->read_set when invoked and restore it back to what 
        it was before the call before they return.
      
        This allows to avoid the mess when somebody else modifies table->read_set for 
        some reason.
      f65e5841
  5. 03 Apr, 2012 1 commit
    • Michael Widenius's avatar
      Fixed lp:970528 "Server crashes in my_strnncollsp_simple on LEFT JOIN with CSV table, TEXT field" · a3bee835
      Michael Widenius authored
      The main problem was a bug in CSV where it provided wrong statistics (it claimed the table was empty when it wasn't)
      I also fixed wrong freeing of blob's in the CSV handler. (Any call to handler::read_first_row() on a CSV table with blobs would fail)
      
      
      
      mysql-test/r/csv.result:
        Added new test case
      mysql-test/r/partition_innodb.result:
        Updated test results after fixing bug with impossible partitions and const tables
      mysql-test/t/csv.test:
        Added new test case
      sql/sql_select.cc:
        Cleaned up code for handling of partitions.
        Fixed also a bug where we didn't threat a table with impossible partitions as a const table.
      storage/csv/ha_tina.cc:
        Allocate blobroot onces.
      a3bee835
  6. 22 Feb, 2012 1 commit
    • Mattias Jonsson's avatar
      Bug#13694811: THE OPTIMIZER WRONGLY USES THE FIRST INNODB · 8325fe02
      Mattias Jonsson authored
                                 PARTITION STATISTICS
      
      Problem was the fix for bug#11756867; It always used the first
      partitions, and stopped after it checked 10 [sub]partitions.
      (or until it found a partition which would contain a match).
      
      This results in bad statistics for tables where the first 10 partitions
      don't represent the majority of the data (like when the first 10
      partitions only contained a few rows in total).
      
      The solution was to take statisics from the partitions containing
      the most rows instead:
      
      Added an array of partition ids which is sorted by number of records
      in descending order.
      
      this array is used in records_in_range to cover as many records as
      possible in as few calls as possible.
      
      Also changed the limit of how many partitions to use for the statistics
      from a static max of 10 partitions, into a dynamic model:
      Maximum number of partitions is now log2(total number of partitions)
      taken from the ordered array.
      It will continue calling partitions records_in_range until it has 
      checked:
      (total rows in matching partitions) * (maximum number of partitions)
      / (number of used partitions)
      
      Also reverted the changes for ha_partition::scan_time() and
      ha_partition::estimate_rows_upper_bound() to before
      the fix of  bug#11756867. Since they are not as slow as
      records_in_range.
      8325fe02
  7. 25 Apr, 2011 1 commit
  8. 19 Nov, 2010 1 commit
    • Dmitry Lenev's avatar
      Fix for bug #57985 "ONLINE/FAST ALTER PARTITION can fail and · 602a2225
      Dmitry Lenev authored
      leave the table unusable".
       
      Failing ALTER statement on partitioned table could have left
      this table in an unusable state. This has happened in cases
      when ALTER was executed using "fast" algorithm, which doesn't 
      involve copying of data between old and new versions of table, 
      and the resulting new table was incompatible with partitioning
      function in some way.
       
      The problem stems from the fact that discrepancies between new 
      table definition and partitioning function are discovered only 
      when the table is opened. In case of "fast" algorithm this has
      happened too late during ALTER's execution, at the moment when
      all changes were already done and couldn't have been reverted.
       
      In the cases when "slow" algorithm, which copies data, is used 
      such discrepancies are detected at the moment new table
      definition is opened implicitly when new version of table is
      created in storage engine. As result ALTER is aborted before 
      any changes to table were done.
       
      This fix tries to address this issue by ensuring that "fast"
      algorithm behaves similarly to "slow" algorithm and checks
      compatibility between new definition and partitioning function 
      by trying to open new definition after .FRM file for it has 
      been created.
       
      Long term we probably should implement some way to check
      compatibility between partitioning function and new table
      definition which won't involve opening it, as this should
      allow much cleaner fix for this problem.
      
      mysql-test/r/partition_innodb.result:
        Added test for bug #57985 "ONLINE/FAST ALTER PARTITION can
        fail and leave the table unusable".
      mysql-test/t/partition_innodb.test:
        Added test for bug #57985 "ONLINE/FAST ALTER PARTITION can
        fail and leave the table unusable".
      sql/sql_table.cc:
        Ensure that in cases when .FRM for partitioned table is
        created without creating table in storage engine (e.g.
        during "fast" ALTER TABLE) we still open table definition. 
        This allows to check that definition of created table/.FRM 
        is compatible with its partitioning function.
      602a2225
  9. 16 Sep, 2010 1 commit
    • Mattias Jonsson's avatar
      Bug#56287: mysql5.1.50 crash when using Partition datetime in sub in query · 428f0bde
      Mattias Jonsson authored
      When having a sub query in partitioned innodb one could
      make the partitioning engine to search for a 'index_next_same'
      on a partition that had not been initialized.
      
      Problem was that the subselect function looks at table->status
      which was not set in the partitioning handler when it skipped
      scanning due to no matching partitions found.
      
      Fixed by setting table->status = STATUS_NOT_FOUND when
      there was no partitions to scan. (If there are partitions to
      scan, it will be set in the partitions handler.)
      
      
      mysql-test/r/partition_innodb.result:
        added result
      mysql-test/t/partition_innodb.test:
        added test
      sql/ha_partition.cc:
        set table status to not found, if there ar no partitions to scan.
      428f0bde
  10. 27 Aug, 2010 1 commit
    • Mattias Jonsson's avatar
      Bug#53806: Wrong estimates for range query in partitioned MyISAM table · 0ec8312f
      Mattias Jonsson authored
      Bug#46754: 'rows' field doesn't reflect partition pruning
        
      Update of test results after fixing the above bugs.
      (fix in separate commit).
      
      mysql-test/r/partition.result:
        Updated test result after fixing bugs 46754 and 53806
      mysql-test/r/partition_hash.result:
        Updated test result after fixing bugs 46754 and 53806
      mysql-test/r/partition_innodb.result:
        Updated test result after fixing bugs 46754 and 53806
      mysql-test/r/partition_range.result:
        Updated test result after fixing bugs 46754 and 53806
      mysql-test/suite/parts/r/partition_alter3_innodb.result:
        Updated test result after fixing bugs 46754 and 53806
      mysql-test/suite/parts/r/partition_alter3_myisam.result:
        Updated test result after fixing bugs 46754 and 53806
      0ec8312f
  11. 20 Aug, 2010 1 commit
    • Mattias Jonsson's avatar
      Bug#54747: Deadlock between REORGANIZE PARTITION and SELECT is not detected · 8df0bf13
      Mattias Jonsson authored
      The ALTER PARTITION and SELECT seemed to be deadlocked
      when having innodb_thread_concurrency = 1.
      
      Problem was that there was unreleased latches
      in the ALTER PARTITION thread which was needed
      by the SELECT thread to be able to continue.
      
      Solution was to release the latches by commit 
      before requesting upgrade to exclusive MDL lock.
      
      Updated according to reviewers comments (3).
      
      mysql-test/r/partition_innodb.result:
        updated test result
      mysql-test/t/partition_innodb.test:
        added test
      sql/sql_partition.cc:
        Moved implicit commit into mysql_change_partition
        so that if latches are taken, they are always released
        before waiting on exclusive lock.
      sql/sql_table.cc:
        refactored the code to prepare and commit
        around copy_data_between_tables, to be able
        to reuse it in mysql_change_partitions
      sql/sql_table.h:
        exporting mysql_trans_prepare/commit_alter_copy_data
      8df0bf13
  12. 13 Aug, 2010 1 commit
    • Mattias Jonsson's avatar
      Bug#53676: Unexpected errors and possible table · daf0e6b7
      Mattias Jonsson authored
                 corruption on ADD PARTITION and LOCK TABLE
      Bug#53770: Server crash at handler.cc:2076 on
                 LOAD DATA after timed out COALESCE PARTITION
      
      5.5 fix for:
      Bug#51042: REORGANIZE PARTITION can leave table in an
                 inconsistent state in case of crash
      Needs to be back-ported to 5.1
      
      5.5 fix for:
      Bug#50418: DROP PARTITION does not interact with
                 transactions
      
      Main problem was non-persistent operations done
      before meta-data lock was taken (53770+53676).
      And 53676 needed to keep the table/partitions opened and locked
      while copying the data to the new partitions.
      
      Also added thorough tests to spot some additional bugs
      in the ddl_log code, which could result in bad state
      between the .frm and partitions.
      
      Collapsed patch, includes all fixes required from the reviewers.
      
      mysql-test/r/partition_innodb.result:
        updated result with new test
      mysql-test/suite/parts/inc/partition_crash.inc:
        crash test include file
      mysql-test/suite/parts/inc/partition_crash_add.inc:
        test all states in fast_alter_partition_table
        ADD PARTITION branch
      mysql-test/suite/parts/inc/partition_crash_change.inc:
        test all states in fast_alter_partition_table
        CHANGE PARTITION branch
      mysql-test/suite/parts/inc/partition_crash_drop.inc:
        test all states in fast_alter_partition_table
        DROP PARTITION branch
      mysql-test/suite/parts/inc/partition_fail.inc:
        recovery test including injecting errors
      mysql-test/suite/parts/inc/partition_fail_add.inc:
        test all states in fast_alter_partition_table
        ADD PARTITION branch
      mysql-test/suite/parts/inc/partition_fail_change.inc:
        test all states in fast_alter_partition_table
        CHANGE PARTITION branch
      mysql-test/suite/parts/inc/partition_fail_drop.inc:
        test all states in fast_alter_partition_table
        DROP PARTITION branch
      mysql-test/suite/parts/inc/partition_mgm_crash.inc:
        include file that runs all crash and failure injection tests.
      mysql-test/suite/parts/r/partition_debug_innodb.result:
        new test result file
      mysql-test/suite/parts/r/partition_debug_myisam.result:
        new test result file
      mysql-test/suite/parts/r/partition_special_innodb.result:
        updated result
      mysql-test/suite/parts/r/partition_special_myisam.result:
        updated result
      mysql-test/suite/parts/t/partition_debug_innodb-master.opt:
        opt file for using with crashing tests of partitioned innodb
      mysql-test/suite/parts/t/partition_debug_innodb.test:
        partitioned innodb test that require debug builds
      mysql-test/suite/parts/t/partition_debug_myisam-master.opt:
        opt file for using with crashing tests of partitioned myisam
      mysql-test/suite/parts/t/partition_debug_myisam.test:
        partitioned myisam test that require debug builds
      mysql-test/suite/parts/t/partition_special_innodb-master.opt:
        added innodb-file-per-table to easier verify partition status on disk
      mysql-test/suite/parts/t/partition_special_innodb.test:
        added test case
      mysql-test/suite/parts/t/partition_special_myisam.test:
        added test case
      mysql-test/t/partition_innodb.test:
        added test case
      sql/sql_base.cc:
        Moved alter_close_tables to sql_partition.cc
      sql/sql_base.h:
        removed some non existing and duplicated functions.
      sql/sql_partition.cc:
        fast_alter_partition_table:
        Spletted abort_and_upgrad_lock_and_close_table
        to its parts (wait_while_table_is_used and
        alter_close_tables) and always have
        wait_while_table_is_used before any persistent
        operations (including logs, which will be executed
        on failure) and alter_close_tables after
        create/read/write operations and before
        drop operations.
        
        moved alter_close_tables here from sql_base.cc
        
        Added error injections for better test coverage.
        
        write_log_final_change_partition:
        fixed a log_entry linking bug (delete_frm was not
        linked to change/drop partition)
        and drop partition must be executed before
        change partition (change partition can rename a
        partition to an old name, like REORG p1 INTO (p1,p2).
        
        write_log_add_change_partition:
        need to use drop_frm first, and relinking that entry
        and reusing its execute entry.
      sql/sql_table.cc:
        added initialization of next_active_log_entry.
      sql/table.h:
        removed a duplicate declaration.
      daf0e6b7
  13. 12 Aug, 2010 1 commit
    • Alexey Botchkov's avatar
      Bug#55146 Assertion `m_part_spec.start_part == m_part_spec.end_part' in index_read_idx_map · 6d14cae6
      Alexey Botchkov authored
                    As we check for the impossible partitions earlier, it's possible that we don't find any
                    suitable partitions at all. So this assertion just has to be corrected for this case.
            
      per-file comments:
      mysql-test/r/partition_innodb.result
      Bug#55146      Assertion `m_part_spec.start_part == m_part_spec.end_part' in index_read_idx_map
              test result updated.
      
      mysql-test/t/partition_innodb.test
      Bug#55146      Assertion `m_part_spec.start_part == m_part_spec.end_part' in index_read_idx_map
              test case added.
      
      sql/ha_partition.cc
      Bug#55146      Assertion `m_part_spec.start_part == m_part_spec.end_part' in index_read_idx_map
              Assertion changed to '>=' as the  prune_partition_set() in the get_partition_set() can
              do start_part= end_part+1 if no possible partitions were found.
      6d14cae6
  14. 12 Jul, 2010 1 commit
  15. 06 Jul, 2010 1 commit
    • Davi Arnaut's avatar
      Bug#54783: optimize table crashes with invalid timestamp default · 6eb854de
      Davi Arnaut authored
                 value and NO_ZERO_DATE
      
      The problem was that a older version of the error path for a
      failed admin statement relied upon a few error conditions being
      met in order to access a table handler, the first one being that
      the table object pointer was not NULL. Probably due to chance,
      in all cases a table object was closed but the reference wasn't
      reset, the other conditions didn't evaluate to true. With the
      addition of a new check on the error path, the handler started
      being dereferenced whenever it was not reset to NULL, causing
      problems for code paths which closed the table but didn't reset
      the reference.
      
      The solution is to reset the reference whenever a admin statement
      fails and the tables are closed.
      
      mysql-test/r/partition_innodb.result:
        Add test case result for Bug#54783
      mysql-test/t/partition_innodb.test:
        Add test case for Bug#54783
      sql/sql_table.cc:
        In case table recreate failed, set a appropriate result code.
        Reset reference to a closed table object, otherwise the error
        path might attempt to access it.
      6eb854de
  16. 17 Jun, 2010 1 commit
    • Magne Mahre's avatar
      WL#5349 Change default storage engine to InnoDB · 32b7e60e
      Magne Mahre authored
      The default storage engine is changed from MyISAM to
      InnoDB, in all builds except for the embedded server.
      
      In addition, the following system variables are 
      changed:
      
        * innodb_file_per_table is enabled
        * innodb_strict_mode is enabled
        * innodb_file_format_name_update is changed
          to 'Barracuda'
      
      The test suite is changed so that tests that do not
      explicitly include the have_innodb.inc are run with
      --default-storage-engine=MyISAM.  This is to ease the
      transition, so that most regression tests are run
      with the same engine as before.
      
      Some tests are disabled for the embedded server
      regression test, as the output of certain statements
      will be different that for the regular server
      (i.e SELECT @@default_storage_engine).  This is to
      ease transition.
      
      
      
      mysql-test/mysql-test-run.pl:
        The regression test suite now adds a
        --default-storage-engine=MyISAM for all non-innodb 
        tests.  This behaviour can be controlled by the
        default-myisam switch in mysql-test-run
      mysql-test/t/bootstrap-master.opt:
        The bootstrap test can only be run without InnoDB
        as it starts several mysqld instances on the same
        datadir. This is possible with MyISAM, but not
        with InnoDB.
      storage/innobase/CMakeLists.txt:
        Build InnoDB per default
      storage/innobase/handler/ha_innodb.cc:
        Change default values for system variables
        
          Enable file_per_table
          Enable strict_mode
          Upgrade default file format to Barracuda
      32b7e60e
  17. 24 Mar, 2010 1 commit
  18. 10 Mar, 2010 1 commit
    • Mattias Jonsson's avatar
      Bug#51830: Incorrect partition pruning on range partition · 29b39e7a
      Mattias Jonsson authored
      (regression)
      
      Problem was that partition pruning did not exclude the
      last partition if the range was beyond it
      (i.e. not using MAXVALUE)
      
      Fix was to not include the last partition if the
      partitioning function value was not within the partition
      range.
      
      mysql-test/r/partition_innodb.result:
        Bug#51830: Incorrect partition pruning on range partition
        (regression)
        
        Updated result
      mysql-test/r/partition_pruning.result:
        Bug#51830: Incorrect partition pruning on range partition
        (regression)
        
        Updated result
      mysql-test/t/partition_innodb.test:
        Bug#51830: Incorrect partition pruning on range partition
        (regression)
        
        Added test for pruning in InnoDB, since it does not show
        for MyISAM due to 'Impossible WHERE noticed after reading
        const tables'.
      mysql-test/t/partition_pruning.test:
        Bug#51830: Incorrect partition pruning on range partition
        (regression)
        
        Added test
      sql/sql_partition.cc:
        Bug#51830: Incorrect partition pruning on range partition
        (regression)
        
        Also increase the partition id if not inside the last partition
        (and no MAXVALUE is defined).
        
        Added comments and DBUG_ASSERT.
      29b39e7a
  19. 04 Mar, 2010 1 commit
    • Mattias Jonsson's avatar
      Bug#50104: Partitioned table with just 1 partion works with fk · 48d986f5
      Mattias Jonsson authored
      There was no check for foreign keys when altering partitioned
      tables.
      
      Added check for FK when altering partitioned tables.
      
      mysql-test/r/partition_innodb.result:
        Bug#50104: Partitioned table with just 1 partion works with fk
        
        Updated test result
      mysql-test/t/partition_innodb.test:
        Bug#50104: Partitioned table with just 1 partion works with fk
        
        Added test for adding FK on partitioned tables (both 1 and 2
        partitions)
      sql/sql_partition.cc:
        Bug#50104: Partitioned table with just 1 partion works with fk
        
        Disabled adding foreign key when altering a partitioned table.
      48d986f5
  20. 18 Jan, 2010 1 commit
    • Mattias Jonsson's avatar
      Bug#47343: InnoDB fails to clean-up after lock wait timeout on · eab2be0a
      Mattias Jonsson authored
                 REORGANIZE PARTITION
      
      There were several problems which lead to this this,
      all related to bad error handling.
      
      1) There was several bugs preventing the ddl-log to be used for
         cleaning up created files on error.
      
      2) The error handling after the copy partition rows did not close
         and unlock the tables, resulting in deletion of partitions
         which were in use, which lead InnoDB to put the partition to
         drop in a background queue.
      
      sql/ha_partition.cc:
        Bug#47343: InnoDB fails to clean-up after lock wait timeout on
                   REORGANIZE PARTITION
        
        Better error handling, if partition has been created/opened/locked
        then make sure it is unlocked and closed before returning error.
        The delete of the newly created partition is handled by the ddl-log.
      sql/sql_parse.cc:
        Bug#47343: InnoDB fails to clean-up after lock wait timeout on
                   REORGANIZE PARTITION
        
        Fix a bug found when experimenting, thd could really be NULL here,
        as mentioned in the function header.
      sql/sql_partition.cc:
        Bug#47343: InnoDB fails to clean-up after lock wait timeout on
                   REORGANIZE PARTITION
        
        Used the correct .frm shadow name to put into the ddl-log.
        Really use the ddl-log to handle errors.
      sql/sql_table.cc:
        Bug#47343: InnoDB fails to clean-up after lock wait timeout on
                   REORGANIZE PARTITION
        
        Fixes of the ddl-log when used as error recovery (no crash).
        When executing an entry from memory (not read from disk)
        the name_len was not set correctly.
      eab2be0a
  21. 22 Dec, 2009 1 commit
  22. 24 Nov, 2009 1 commit
    • Mattias Jonsson's avatar
      merge of bug#35765 into mysql-next-mr-bugfixing · 9561a29b
      Mattias Jonsson authored
      mysql-test/r/log_tables.result:
        Bug #35765  	ALTER TABLE produces wrong error when non-existent storage engine used
        
        Updated result
      mysql-test/r/partition.result:
        Bug #35765  	ALTER TABLE produces wrong error when non-existent storage engine used
        
        Updated result
      mysql-test/r/partition_innodb.result:
        Bug #35765  	ALTER TABLE produces wrong error when non-existent storage engine used
        
        Updated result
      mysql-test/t/log_tables.test:
        Bug #35765  	ALTER TABLE produces wrong error when non-existent storage engine used
        
        Updated test
      mysql-test/t/partition.test:
        Bug #35765  	ALTER TABLE produces wrong error when non-existent storage engine used
        
        Added test case
      mysql-test/t/partition_innodb.test:
        Bug #35765  	ALTER TABLE produces wrong error when non-existent storage engine used
        
        Updated test
      sql/protocol.cc:
        Bug #35765  	ALTER TABLE produces wrong error when non-existent storage engine used
        
        (fix of bug#48939 to avoid test failures on my test build).
      sql/sql_yacc.yy:
        Bug #35765  	ALTER TABLE produces wrong error when non-existent storage engine used
        
        if no existing engine was given, don't set HA_CREATE_USED_ENGINE
      9561a29b
  23. 05 Nov, 2009 1 commit
  24. 29 Oct, 2009 1 commit
  25. 16 Oct, 2009 1 commit
  26. 05 Oct, 2009 1 commit
    • Mikael Ronstrom's avatar
      BUG#47776, Fixed character set handling, used wrong length, eventually also... · 01072e22
      Mikael Ronstrom authored
      BUG#47776, Fixed character set handling, used wrong length, eventually also found that didn't need to convert to my_strnxfrm-format for column list partitioned tables, also column list partitioned tables can use multi-byte character sets in partition fields as well as where strxfrm multiplies the number of bytes in the string
      01072e22
  27. 07 Sep, 2009 1 commit
  28. 02 Sep, 2009 1 commit
    • Sergey Vojtovich's avatar
      BUG#46483 - drop table of partitioned table may leave · 32c7efa6
      Sergey Vojtovich authored
                  extraneous file
      
      Online/fast ALTER TABLE of a partitioned table may leave
      temporary file in database directory.
      
      Fixed by removing unnecessary call to
      handler::ha_create_handler_files(), which was creating
      partitioning definition file.
      
      mysql-test/r/partition_innodb.result:
        A test case for BUG#46483.
      mysql-test/t/partition_innodb.test:
        A test case for BUG#46483.
      sql/unireg.cc:
        Do not call ha_create_handler_files() when we were requested
        to create only dot-frm file.
      32c7efa6
  29. 15 Dec, 2008 1 commit
  30. 10 Nov, 2008 1 commit
    • Mattias Jonsson's avatar
      Bug#40595: Non-matching rows not released with READ-COMMITTED · a5ec6953
      Mattias Jonsson authored
      on tables with partitions
      
      Problem was that the handler function try_semi_consistent_read
      was not propagated to the innodb handler.
      
      Solution was to implement that function in the partitioning
      handler.
      
      mysql-test/r/partition_innodb.result:
        Bug#40595: Non-matching rows not released with READ-COMMITTED
        on tables with partitions
        
        Updated test result.
      mysql-test/t/partition_innodb.test:
        Bug#40595: Non-matching rows not released with READ-COMMITTED
        on tables with partitions
        
        Added test case for bug#40595.
        
        Note: the replace_regex is taking long time. I have not found
        any better regex (it takes time using 'sed' too).
      sql/ha_partition.cc:
        Bug#40595: Non-matching rows not released with READ-COMMITTED
        on tables with partitions
        
        Added function to the partitioning handler for handling
        semi consistent reads (unlock_row was already implemented,
        and this is needed for unlock_row to work properly in innodb).
        It uses pruning for optimizing the call.
      sql/ha_partition.h:
        Bug#40595: Non-matching rows not released with READ-COMMITTED
        on tables with partitions
        
        Added function to the partitioning handler for handling
        semi consistent reads (unlock_row was already implemented,
        and this is needed for unlock_row to work properly in innodb).
      a5ec6953
  31. 04 Nov, 2008 1 commit
    • Mattias Jonsson's avatar
      Bug#14326: No formatting of partitioning clause in SHOW CREATE TABLE output · bb1ad9ce
      Mattias Jonsson authored
      The partitioning clause is only a very long single line, which is very
      hard to interpret for a human. This patch breaks the partitioning
      syntax into one line for the partitioning type, and one line per
      partition/subpartition.
      
      mysql-test/r/information_schema_part.result:
        Bug#14326: No formatting of partitioning clause in SHOW CREATE TABLE output
        
        Updated test result due to the new partitioning clause output format.
      mysql-test/r/partition.result:
        Bug#14326: No formatting of partitioning clause in SHOW CREATE TABLE output
        
        Updated test result due to the new partitioning clause output format.
      mysql-test/r/partition_archive.result:
        Bug#14326: No formatting of partitioning clause in SHOW CREATE TABLE output
        
        Updated test result due to the new partitioning clause output format.
      mysql-test/r/partition_datatype.result:
        Bug#14326: No formatting of partitioning clause in SHOW CREATE TABLE output
        
        Updated test result due to the new partitioning clause output format.
      mysql-test/r/partition_innodb.result:
        Bug#14326: No formatting of partitioning clause in SHOW CREATE TABLE output
        
        Updated test result due to the new partitioning clause output format.
      mysql-test/r/partition_mgm.result:
        Bug#14326: No formatting of partitioning clause in SHOW CREATE TABLE output
        
        Updated test result due to the new partitioning clause output format.
      mysql-test/r/partition_mgm_err.result:
        Bug#14326: No formatting of partitioning clause in SHOW CREATE TABLE output
        
        Updated test result due to the new partitioning clause output format.
      mysql-test/r/partition_not_windows.result:
        Bug#14326: No formatting of partitioning clause in SHOW CREATE TABLE output
        
        Updated test result due to the new partitioning clause output format.
      mysql-test/r/partition_range.result:
        Bug#14326: No formatting of partitioning clause in SHOW CREATE TABLE output
        
        Updated test result due to the new partitioning clause output format.
      mysql-test/r/partition_symlink.result:
        Bug#14326: No formatting of partitioning clause in SHOW CREATE TABLE output
        
        Updated test result due to the new partitioning clause output format.
      mysql-test/suite/ndb/r/ndb_partition_key.result:
        Bug#14326: No formatting of partitioning clause in SHOW CREATE TABLE output
        
        Updated test result due to the new partitioning clause output format.
      mysql-test/suite/ndb/r/ndb_partition_range.result:
        Bug#14326: No formatting of partitioning clause in SHOW CREATE TABLE output
        
        Updated test result due to the new partitioning clause output format.
      mysql-test/suite/ndb_team/r/ndb_dd_backuprestore.result:
        Bug#14326: No formatting of partitioning clause in SHOW CREATE TABLE output
        
        Updated test result due to the new partitioning clause output format.
      mysql-test/suite/parts/inc/partition_directory.inc:
        Bug#14326: No formatting of partitioning clause in SHOW CREATE TABLE output
        
        Changed partitioning clause format for verifying the new output format.
      mysql-test/suite/parts/r/ndb_dd_backuprestore.result:
        Bug#14326: No formatting of partitioning clause in SHOW CREATE TABLE output
        
        Updated test result due to the new partitioning clause output format.
      mysql-test/suite/parts/r/part_supported_sql_func_innodb.result:
        Bug#14326: No formatting of partitioning clause in SHOW CREATE TABLE output
        
        Updated test result due to the new partitioning clause output format.
      mysql-test/suite/parts/r/part_supported_sql_func_myisam.result:
        Bug#14326: No formatting of partitioning clause in SHOW CREATE TABLE output
        
        Updated test result due to the new partitioning clause output format.
      mysql-test/suite/parts/r/part_supported_sql_func_ndb.result:
        Bug#14326: No formatting of partitioning clause in SHOW CREATE TABLE output
        
        Updated test result due to the new partitioning clause output format.
      mysql-test/suite/parts/r/partition_alter1_1_2_innodb.result:
        Bug#14326: No formatting of partitioning clause in SHOW CREATE TABLE output
        
        Updated test result due to the new partitioning clause output format.
      mysql-test/suite/parts/r/partition_alter1_1_2_myisam.result:
        Bug#14326: No formatting of partitioning clause in SHOW CREATE TABLE output
        
        Updated test result due to the new partitioning clause output format.
      mysql-test/suite/parts/r/partition_alter1_1_innodb.result:
        Bug#14326: No formatting of partitioning clause in SHOW CREATE TABLE output
        
        Updated test result due to the new partitioning clause output format.
      mysql-test/suite/parts/r/partition_alter1_1_myisam.result:
        Bug#14326: No formatting of partitioning clause in SHOW CREATE TABLE output
        
        Updated test result due to the new partitioning clause output format.
      mysql-test/suite/parts/r/partition_alter1_2_innodb.result:
        Bug#14326: No formatting of partitioning clause in SHOW CREATE TABLE output
        
        Updated test result due to the new partitioning clause output format.
      mysql-test/suite/parts/r/partition_alter1_2_myisam.result:
        Bug#14326: No formatting of partitioning clause in SHOW CREATE TABLE output
        
        Updated test result due to the new partitioning clause output format.
      mysql-test/suite/parts/r/partition_alter2_1_innodb.result:
        Bug#14326: No formatting of partitioning clause in SHOW CREATE TABLE output
        
        Updated test result due to the new partitioning clause output format.
      mysql-test/suite/parts/r/partition_alter2_1_myisam.result:
        Bug#14326: No formatting of partitioning clause in SHOW CREATE TABLE output
        
        Updated test result due to the new partitioning clause output format.
      mysql-test/suite/parts/r/partition_alter2_2_innodb.result:
        Bug#14326: No formatting of partitioning clause in SHOW CREATE TABLE output
        
        Updated test result due to the new partitioning clause output format.
      mysql-test/suite/parts/r/partition_alter2_2_myisam.result:
        Bug#14326: No formatting of partitioning clause in SHOW CREATE TABLE output
        
        Updated test result due to the new partitioning clause output format.
      mysql-test/suite/parts/r/partition_alter3_innodb.result:
        Bug#14326: No formatting of partitioning clause in SHOW CREATE TABLE output
        
        Updated test result due to the new partitioning clause output format.
      mysql-test/suite/parts/r/partition_alter3_myisam.result:
        Bug#14326: No formatting of partitioning clause in SHOW CREATE TABLE output
        
        Updated test result due to the new partitioning clause output format.
      mysql-test/suite/parts/r/partition_alter4_innodb.result:
        Bug#14326: No formatting of partitioning clause in SHOW CREATE TABLE output
        
        Updated test result due to the new partitioning clause output format.
      mysql-test/suite/parts/r/partition_alter4_myisam.result:
        Bug#14326: No formatting of partitioning clause in SHOW CREATE TABLE output
        
        Updated test result due to the new partitioning clause output format.
      mysql-test/suite/parts/r/partition_auto_increment_archive.result:
        Bug#14326: No formatting of partitioning clause in SHOW CREATE TABLE output
        
        Updated test result due to the new partitioning clause output format.
      mysql-test/suite/parts/r/partition_auto_increment_blackhole.result:
        Bug#14326: No formatting of partitioning clause in SHOW CREATE TABLE output
        
        Updated test result due to the new partitioning clause output format.
      mysql-test/suite/parts/r/partition_auto_increment_innodb.result:
        Bug#14326: No formatting of partitioning clause in SHOW CREATE TABLE output
        
        Updated test result due to the new partitioning clause output format.
      mysql-test/suite/parts/r/partition_auto_increment_memory.result:
        Bug#14326: No formatting of partitioning clause in SHOW CREATE TABLE output
        
        Updated test result due to the new partitioning clause output format.
      mysql-test/suite/parts/r/partition_auto_increment_myisam.result:
        Bug#14326: No formatting of partitioning clause in SHOW CREATE TABLE output
        
        Updated test result due to the new partitioning clause output format.
      mysql-test/suite/parts/r/partition_auto_increment_ndb.result:
        Bug#14326: No formatting of partitioning clause in SHOW CREATE TABLE output
        
        Updated test result due to the new partitioning clause output format.
      mysql-test/suite/parts/r/partition_basic_innodb.result:
        Bug#14326: No formatting of partitioning clause in SHOW CREATE TABLE output
        
        Updated test result due to the new partitioning clause output format.
      mysql-test/suite/parts/r/partition_basic_myisam.result:
        Bug#14326: No formatting of partitioning clause in SHOW CREATE TABLE output
        
        Updated test result due to the new partitioning clause output format.
      mysql-test/suite/parts/r/partition_basic_symlink_innodb.result:
        Bug#14326: No formatting of partitioning clause in SHOW CREATE TABLE output
        
        Updated test result due to the new partitioning clause output format.
      mysql-test/suite/parts/r/partition_basic_symlink_myisam.result:
        Bug#14326: No formatting of partitioning clause in SHOW CREATE TABLE output
        
        Updated test result due to the new partitioning clause output format.
      mysql-test/suite/parts/r/partition_bit_innodb.result:
        Bug#14326: No formatting of partitioning clause in SHOW CREATE TABLE output
        
        Updated test result due to the new partitioning clause output format.
      mysql-test/suite/parts/r/partition_bit_myisam.result:
        Bug#14326: No formatting of partitioning clause in SHOW CREATE TABLE output
        
        Updated test result due to the new partitioning clause output format.
      mysql-test/suite/parts/r/partition_bit_ndb.result:
        Bug#14326: No formatting of partitioning clause in SHOW CREATE TABLE output
        
        Updated test result due to the new partitioning clause output format.
      mysql-test/suite/parts/r/partition_char_innodb.result:
        Bug#14326: No formatting of partitioning clause in SHOW CREATE TABLE output
        
        Updated test result due to the new partitioning clause output format.
      mysql-test/suite/parts/r/partition_char_myisam.result:
        Bug#14326: No formatting of partitioning clause in SHOW CREATE TABLE output
        
        Updated test result due to the new partitioning clause output format.
      mysql-test/suite/parts/r/partition_datetime_innodb.result:
        Bug#14326: No formatting of partitioning clause in SHOW CREATE TABLE output
        
        Updated test result due to the new partitioning clause output format.
      mysql-test/suite/parts/r/partition_datetime_myisam.result:
        Bug#14326: No formatting of partitioning clause in SHOW CREATE TABLE output
        
        Updated test result due to the new partitioning clause output format.
      mysql-test/suite/parts/r/partition_decimal_innodb.result:
        Bug#14326: No formatting of partitioning clause in SHOW CREATE TABLE output
        
        Updated test result due to the new partitioning clause output format.
      mysql-test/suite/parts/r/partition_decimal_myisam.result:
        Bug#14326: No formatting of partitioning clause in SHOW CREATE TABLE output
        
        Updated test result due to the new partitioning clause output format.
      mysql-test/suite/parts/r/partition_engine_innodb.result:
        Bug#14326: No formatting of partitioning clause in SHOW CREATE TABLE output
        
        Updated test result due to the new partitioning clause output format.
      mysql-test/suite/parts/r/partition_engine_myisam.result:
        Bug#14326: No formatting of partitioning clause in SHOW CREATE TABLE output
        
        Updated test result due to the new partitioning clause output format.
      mysql-test/suite/parts/r/partition_engine_ndb.result:
        Bug#14326: No formatting of partitioning clause in SHOW CREATE TABLE output
        
        Updated test result due to the new partitioning clause output format.
      mysql-test/suite/parts/r/partition_float_innodb.result:
        Bug#14326: No formatting of partitioning clause in SHOW CREATE TABLE output
        
        Updated test result due to the new partitioning clause output format.
      mysql-test/suite/parts/r/partition_float_myisam.result:
        Bug#14326: No formatting of partitioning clause in SHOW CREATE TABLE output
        
        Updated test result due to the new partitioning clause output format.
      mysql-test/suite/parts/r/partition_int_innodb.result:
        Bug#14326: No formatting of partitioning clause in SHOW CREATE TABLE output
        
        Updated test result due to the new partitioning clause output format.
      mysql-test/suite/parts/r/partition_int_myisam.result:
        Bug#14326: No formatting of partitioning clause in SHOW CREATE TABLE output
        
        Updated test result due to the new partitioning clause output format.
      mysql-test/suite/parts/r/partition_int_ndb.result:
        Bug#14326: No formatting of partitioning clause in SHOW CREATE TABLE output
        
        Updated test result due to the new partitioning clause output format.
      mysql-test/suite/parts/r/partition_mgm_lc0_archive.result:
        Bug#14326: No formatting of partitioning clause in SHOW CREATE TABLE output
        
        Updated test result due to the new partitioning clause output format.
      mysql-test/suite/parts/r/partition_mgm_lc0_innodb.result:
        Bug#14326: No formatting of partitioning clause in SHOW CREATE TABLE output
        
        Updated test result due to the new partitioning clause output format.
      mysql-test/suite/parts/r/partition_mgm_lc0_memory.result:
        Bug#14326: No formatting of partitioning clause in SHOW CREATE TABLE output
        
        Updated test result due to the new partitioning clause output format.
      mysql-test/suite/parts/r/partition_mgm_lc0_myisam.result:
        Bug#14326: No formatting of partitioning clause in SHOW CREATE TABLE output
        
        Updated test result due to the new partitioning clause output format.
      mysql-test/suite/parts/r/partition_mgm_lc0_ndb.result:
        Bug#14326: No formatting of partitioning clause in SHOW CREATE TABLE output
        
        Updated test result due to the new partitioning clause output format.
      mysql-test/suite/parts/r/partition_mgm_lc1_archive.result:
        Bug#14326: No formatting of partitioning clause in SHOW CREATE TABLE output
        
        Updated test result due to the new partitioning clause output format.
      mysql-test/suite/parts/r/partition_mgm_lc1_innodb.result:
        Bug#14326: No formatting of partitioning clause in SHOW CREATE TABLE output
        
        Updated test result due to the new partitioning clause output format.
      mysql-test/suite/parts/r/partition_mgm_lc1_memory.result:
        Bug#14326: No formatting of partitioning clause in SHOW CREATE TABLE output
        
        Updated test result due to the new partitioning clause output format.
      mysql-test/suite/parts/r/partition_mgm_lc1_myisam.result:
        Bug#14326: No formatting of partitioning clause in SHOW CREATE TABLE output
        
        Updated test result due to the new partitioning clause output format.
      mysql-test/suite/parts/r/partition_mgm_lc1_ndb.result:
        Bug#14326: No formatting of partitioning clause in SHOW CREATE TABLE output
        
        Updated test result due to the new partitioning clause output format.
      mysql-test/suite/parts/r/partition_mgm_lc2_archive.result:
        Bug#14326: No formatting of partitioning clause in SHOW CREATE TABLE output
        
        Updated test result due to the new partitioning clause output format.
      mysql-test/suite/parts/r/partition_mgm_lc2_innodb.result:
        Bug#14326: No formatting of partitioning clause in SHOW CREATE TABLE output
        
        Updated test result due to the new partitioning clause output format.
      mysql-test/suite/parts/r/partition_mgm_lc2_memory.result:
        Bug#14326: No formatting of partitioning clause in SHOW CREATE TABLE output
        
        Updated test result due to the new partitioning clause output format.
      mysql-test/suite/parts/r/partition_mgm_lc2_myisam.result:
        Bug#14326: No formatting of partitioning clause in SHOW CREATE TABLE output
        
        Updated test result due to the new partitioning clause output format.
      mysql-test/suite/parts/r/partition_mgm_lc2_ndb.result:
        Bug#14326: No formatting of partitioning clause in SHOW CREATE TABLE output
        
        Updated test result due to the new partitioning clause output format.
      mysql-test/suite/parts/r/partition_special_innodb.result:
        Bug#14326: No formatting of partitioning clause in SHOW CREATE TABLE output
        
        Updated test result due to the new partitioning clause output format.
      mysql-test/suite/parts/r/partition_special_myisam.result:
        Bug#14326: No formatting of partitioning clause in SHOW CREATE TABLE output
        
        Updated test result due to the new partitioning clause output format.
      mysql-test/suite/parts/r/partition_syntax_innodb.result:
        Bug#14326: No formatting of partitioning clause in SHOW CREATE TABLE output
        
        Updated test result due to the new partitioning clause output format.
      mysql-test/suite/parts/r/partition_syntax_myisam.result:
        Bug#14326: No formatting of partitioning clause in SHOW CREATE TABLE output
        
        Updated test result due to the new partitioning clause output format.
      mysql-test/suite/parts/r/rpl_partition.result:
        Bug#14326: No formatting of partitioning clause in SHOW CREATE TABLE output
        
        Updated test result due to the new partitioning clause output format.
      mysql-test/suite/rpl/r/rpl_extraCol_innodb.result:
        Bug#14326: No formatting of partitioning clause in SHOW CREATE TABLE output
        
        Updated test result due to the new partitioning clause output format.
      mysql-test/suite/rpl/r/rpl_extraCol_myisam.result:
        Bug#14326: No formatting of partitioning clause in SHOW CREATE TABLE output
        
        Updated test result due to the new partitioning clause output format.
      mysql-test/suite/rpl/r/rpl_innodb_bug28430.result:
        Bug#14326: No formatting of partitioning clause in SHOW CREATE TABLE output
        
        Updated test result due to the new partitioning clause output format.
      mysql-test/suite/rpl/r/rpl_row_basic_8partition.result:
        Bug#14326: No formatting of partitioning clause in SHOW CREATE TABLE output
        
        Updated test result due to the new partitioning clause output format.
      mysql-test/suite/rpl_ndb/r/rpl_ndb_2innodb.result:
        Bug#14326: No formatting of partitioning clause in SHOW CREATE TABLE output
        
        Updated test result due to the new partitioning clause output format.
      mysql-test/suite/rpl_ndb/r/rpl_ndb_2myisam.result:
        Bug#14326: No formatting of partitioning clause in SHOW CREATE TABLE output
        
        Updated test result due to the new partitioning clause output format.
      mysql-test/suite/rpl_ndb/r/rpl_ndb_dd_partitions.result:
        Bug#14326: No formatting of partitioning clause in SHOW CREATE TABLE output
        
        Updated test result due to the new partitioning clause output format.
      mysql-test/suite/rpl_ndb/r/rpl_ndb_extraCol.result:
        Bug#14326: No formatting of partitioning clause in SHOW CREATE TABLE output
        
        Updated test result due to the new partitioning clause output format.
      mysql-test/suite/rpl_ndb/r/rpl_ndb_innodb2ndb.result:
        Bug#14326: No formatting of partitioning clause in SHOW CREATE TABLE output
        
        Updated test result due to the new partitioning clause output format.
      mysql-test/suite/rpl_ndb/r/rpl_ndb_myisam2ndb.result:
        Bug#14326: No formatting of partitioning clause in SHOW CREATE TABLE output
        
        Updated test result due to the new partitioning clause output format.
      mysql-test/t/partition.test:
        Bug#14326: No formatting of partitioning clause in SHOW CREATE TABLE output
        
        Added small tests for for the new partitioning clause output format.
      mysql-test/t/partition_mgm.test:
        Bug#14326: No formatting of partitioning clause in SHOW CREATE TABLE output
        
        Added small tests for for the new partitioning clause output format.
      sql/sql_partition.cc:
        Bug#14326: No formatting of partitioning clause in SHOW CREATE TABLE output
        
        Changed formatting of the partitioning clause from single line into
        multiple indented lines
      sql/sql_show.cc:
        Bug#14326: No formatting of partitioning clause in SHOW CREATE TABLE output
        
        Changed formatting of the partitioning clause from single line into
        multiple indented lines
      bb1ad9ce
  32. 10 Oct, 2008 1 commit
    • Mattias Jonsson's avatar
      Bug#37721: ORDER BY when WHERE contains non-partitioned · d3ea7430
      Mattias Jonsson authored
      index column
      
      There was actually two problems
      1) when clustered pk, order by non pk index should also
      compare with pk as last resort to differ keys from each
      other
      2) bug in the index search handling in ha_partition (was
      found when extending the test case
      
      Solution to 1 was to include the pk in key compare if
      clustered pk and search on other index.
      
      Solution for 2 was to remove the optimization from
      ordered scan to unordered scan if clustered pk.
      
      mysql-test/r/partition_innodb.result:
        Bug#37721: ORDER BY when WHERE contains non-partitioned
        index column
        
        updated test result.
      mysql-test/t/partition_innodb.test:
        Bug#37721: ORDER BY when WHERE contains non-partitioned
        index column
        
        Added test case for bug verification.
      sql/ha_partition.cc:
        Bug#37721: ORDER BY when WHERE contains non-partitioned
        index column
        
        using m_curr_key_info with both given index and PK
        if clustered PK.
        Also including PK in read_set.
        Added debug prints for easier verification.
      sql/ha_partition.h:
        Bug#37721: ORDER BY when WHERE contains non-partitioned
        index column
        
        Changed m_curr_key_info to a null terminated array
        with max 2 keys and a terminating null.
        For use with key_rec_cmp with both given index and PK.
      sql/key.cc:
        Bug#37721: ORDER BY when WHERE contains non-partitioned
        index column
        
        added handling of a null terminated array of keys for
        use in compare.
      d3ea7430
  33. 15 Jan, 2008 1 commit
    • unknown's avatar
      Apply innodb-5.1-ss2146 and innodb-5.1-ss2178 snapshots. · d39f2048
      unknown authored
      Fixes:
      
      Bug #18942: DROP DATABASE does not drop an orphan FOREIGN KEY constraint
        Fix Bug#18942 by dropping all foreign key constraints at the end of
        DROP DATABASE. Usually, by then, there are no foreign constraints
        left because all of them are dropped when the relevant tables are
        dropped. This code is to ensure that any orphaned FKs are wiped too.
      
      Bug #29157: UPDATE, changed rows incorrect
        Return HA_ERR_RECORD_IS_THE_SAME from ha_innobase::update_row() if no
        columns were updated.
      
      Bug #32440: InnoDB free space info does not appear in SHOW TABLE STATUS or I_S
        Put information about the free space in a tablespace in
        INFORMATION_SCHEMA.TABLES.DATA_FREE. This information was previously
        available in INFORMATION_SCHEMA.TABLES.TABLE_COMMENT, but MySQL has
        removed it from there recently.
        The stored value is in kilobytes.
        This can be considered as a permanent workaround to
        http://bugs.mysql.com/32440. "Workaround" becasue that bug is about the
        data missing from TABLE_COMMENT and this is actually not solved.
      
      
      mysql-test/r/innodb.result:
        New tests for bugs fixed as part of snapshots innodb-5.1-ss2146 and innodb-5.1-ss2178
      mysql-test/r/partition_innodb.result:
        Update results - InnoDB now sets Data_length (show table status)
      mysql-test/t/innodb.test:
        New tests for bugs fixed as part of snapshots innodb-5.1-ss2146 and innodb-5.1-ss2178
      mysql-test/t/partition_innodb.test:
        Mask out Data_Free in show table status, because it varies depending on
        which tests have been run.
      storage/innobase/handler/ha_innodb.cc:
        Apply innodb-5.1-ss2146 and innodb-5.1-ss2178 snapshots.
        
        
        Revision r2178:
        branches/5.1:
        
        Merge r2177 from trunk/:
        
        Fix Bug#29157 "UPDATE, changed rows incorrect":
        
        Return HA_ERR_RECORD_IS_THE_SAME from ha_innobase::update_row() if no
        columns were updated.
        
        
        Revision r2169:
        branches/5.1:
        
        Bug#32440:
        
        Put information about the free space in a tablespace in
        INFORMATION_SCHEMA.TABLES.DATA_FREE. This information was previously
        available in INFORMATION_SCHEMA.TABLES.TABLE_COMMENT, but MySQL has
        removed it from there recently.
        
        The stored value is in kilobytes.
        
        This can be considered as a permanent workaround to
        http://bugs.mysql.com/32440. "Workaround" becasue that bug is about the
        data missing from TABLE_COMMENT and this is actually not solved.
      storage/innobase/row/row0mysql.c:
        Apply innodb-5.1-ss2146 and innodb-5.1-ss2178 snapshots.
        
        
        Revision r2161:
        branches/5.1:
        
        Merge r2160 from trunk/:
        
        Fix Bug#18942 by dropping all foreign key constraints at the end of
        DROP DATABASE. Usually, by then, there are no foreign constraints
        left because all of them are dropped when the relevant tables are
        dropped. This code is to ensure that any orphaned FKs are wiped too.
      storage/innobase/trx/trx0trx.c:
        Apply innodb-5.1-ss2146 and innodb-5.1-ss2178 snapshots.
      d39f2048
  34. 09 Jan, 2008 1 commit
    • unknown's avatar
      Bug#31931 Partitions: unjustified 'mix of handlers' error message · d84a0e5c
      unknown authored
      Problem was that the mix of handlers was not consistent between
      CREATE and ALTER
      
      changed so that it works like:
          - All partitions must use the same engine
            AND it must be the same as the table.
          - if one does NOT specify an engine on the table level
            then one must either NOT specify any engine on any
            partition/subpartition OR for ALL partitions/subpartitions
      
      Note: that after a table have been created, the storage engine
      is specified for all parts of the table (table/partition/subpartition)
      and so when using alter, one does not need to specify it (unless one
      wants to change the storage engine, then one have to specify it on the
      table level)
      
      
      mysql-test/r/partition.result:
        Bug#31931 Partitions: unjustified 'mix of handlers' error message
        test result updated
      mysql-test/r/partition_innodb.result:
        Bug#31931 Partitions: unjustified 'mix of handlers' error message
        test result updated
      mysql-test/suite/ndb/r/ndb_partition_key.result:
        Bug#31931 Partitions: unjustified 'mix of handlers' error message
        test result updated
      mysql-test/suite/ndb/t/ndb_partition_key.test:
        Bug#31931 Partitions: unjustified 'mix of handlers' error message
        test case update
      mysql-test/suite/parts/inc/partition_engine.inc:
        Bug#31931 Partitions: unjustified 'mix of handlers' error message
        test case updated
      mysql-test/suite/parts/r/ndb_partition_key.result:
        Bug#31931 Partitions: unjustified 'mix of handlers' error message
        test result updated
      mysql-test/suite/parts/r/partition_engine_innodb.result:
        Bug#31931 Partitions: unjustified 'mix of handlers' error message
        test result updated
      mysql-test/suite/parts/r/partition_engine_myisam.result:
        Bug#31931 Partitions: unjustified 'mix of handlers' error message
        test result updated
      mysql-test/suite/parts/t/ndb_partition_key.test:
        Bug#31931 Partitions: unjustified 'mix of handlers' error message
        test case updated
      mysql-test/t/partition.test:
        Bug#31931 Partitions: unjustified 'mix of handlers' error message
        test case updated
      mysql-test/t/partition_innodb.test:
        Bug#31931 Partitions: unjustified 'mix of handlers' error message
        test case updated
      sql/partition_info.cc:
        Bug#31931 Partitions: unjustified 'mix of handlers' error message
        moved the check_engine_condition here from sql_partition.cc
        created a new check_engine_mix from check_native_partitioned in
        sql_partition.cc
      sql/partition_info.h:
        Bug#31931 Partitions: unjustified 'mix of handlers' error message
        non static function check_engine_mix (now used in sql_partition.cc)
      sql/sql_partition.cc:
        Bug#31931 Partitions: unjustified 'mix of handlers' error message
        moved check_engine_condition to partition_info.cc and moved out some
        common code in check_native_partitioned to check_engine_mix in
        partition_info.cc
      d84a0e5c
  35. 06 Dec, 2007 1 commit
    • unknown's avatar
      Bug#32948: FKs allowed to reference partitioned table · c3fceb40
      unknown authored
      Problem: when alter to partitioned table,
      it does not see it as change of engine.
      
      Solution: If alter includes partitioning, check if it is possible
      to change engines (eg. is the table referenced by a FK)
      
      
      mysql-test/r/partition_innodb.result:
        Bug#32948: FKs allowed to reference partitioned table
        test result
      mysql-test/t/partition_innodb.test:
        Bug#32948: FKs allowed to reference partitioned table
        test case
      sql/sql_table.cc:
        Bug#32948: FKs allowed to reference partitioned table
        
        if alter to partitioning, it is the same as changing engine.
      c3fceb40
  36. 13 Nov, 2007 1 commit
    • unknown's avatar
      test fixed · d742b9cb
      unknown authored
      mysql-test/r/partition_innodb.result:
        result fixed
      mysql-test/t/partition_innodb.test:
        number of subpartitions fixed
      d742b9cb
  37. 12 Nov, 2007 1 commit
    • unknown's avatar
      'no innodb engine' test failure fixed · f6e05571
      unknown authored
      mysql-test/r/partition.result:
        test result fixed
      mysql-test/r/partition_innodb.result:
        test result fixed
      mysql-test/t/partition.test:
        test moved to partition_innodb
      mysql-test/t/partition_innodb.test:
        test moved from partition.test
      f6e05571
  38. 13 Sep, 2007 1 commit
    • unknown's avatar
      BUG#30583 - Partition on DOUBLE key + INNODB + count(*) == crash · fc7a9058
      unknown authored
      Issuing SELECT COUNT(*) against partitioned InnoDB table may cause
      server crash.
      
      Fixed that not all required fields were included into read_set.
      
      
      mysql-test/r/partition_innodb.result:
        A test case for BUG#30583.
      mysql-test/t/partition_innodb.test:
        A test case for BUG#30583.
      sql/ha_partition.cc:
        Ensure that all fields of current key are included into read_set,
        as partitioning requires them for sorting
        (see ha_partition::handle_ordered_index_scan).
      fc7a9058
  39. 16 Apr, 2007 1 commit
    • unknown's avatar
      wl#2936 post-merge fixes · dcef028f
      unknown authored
      client/mysqltest.c:
        warnings
      extra/comp_err.c:
        warnings
      sql/event_queue.cc:
        warnings
      sql/handler.h:
        warnings
      sql/opt_range.cc:
        warnings
      sql/opt_range.h:
        warnings
      sql/rpl_mi.cc:
        warnings
      sql/sql_class.cc:
        wl#2936 post-merge fixes, warnings
      dcef028f
  40. 15 Apr, 2007 1 commit
    • unknown's avatar
      more wl#2936 fixes: removed implicit ha_thd() calls (too error-prone), · add37876
      unknown authored
      fixed an assert crash
      
      
      include/mysql/plugin.h:
        more wl#2936 fixes: no implicit ha_thd() calls
      mysql-test/mysql-test-run.pl:
        don't load system-wide plugins
      mysql-test/r/partition_innodb.result:
        fix the test
      mysql-test/t/partition_innodb.test:
        fix the test
      sql/handler.cc:
        more wl#2936 fixes: no implicit ha_thd() calls
      sql/handler.h:
        more wl#2936 fixes: no implicit ha_thd() calls
      sql/sql_class.cc:
        more wl#2936 fixes: no implicit ha_thd() calls
      sql/sql_plugin.cc:
        more wl#2936 fixes: assert crash
      storage/innobase/handler/ha_innodb.cc:
        more wl#2936 fixes: no implicit ha_thd() calls
      add37876