1. 05 Dec, 2010 2 commits
    • Igor Babaev's avatar
      Fixed LP bug#684086. · 77eafab5
      Igor Babaev authored
      If a primary key was used in the index intersection for
      an InnoDB database the size of the memory allocated
      for the best index intersection plan was one element less
      than it was needed. That could cause a memory overwrite
      and a crash as a result of it.
        
      77eafab5
    • Igor Babaev's avatar
      Fixed LP bug #684117. · 3bf6e7ba
      Igor Babaev authored
      A crash may happenin the cases when the range optimizer tried to OR
      two index merge such that the second one contained less range trees
      than the first one.
      The bug was introduced by the patch of MWL#24: 
      "index_merge: fair choice between index_merge union and range access".
      3bf6e7ba
  2. 04 Dec, 2010 2 commits
  3. 02 Dec, 2010 1 commit
  4. 28 Sep, 2010 1 commit
  5. 23 Sep, 2010 1 commit
  6. 20 Sep, 2010 3 commits
  7. 18 Sep, 2010 1 commit
  8. 15 Sep, 2010 4 commits
    • Igor Babaev's avatar
      Fixed bug #637978. · 4153259e
      Igor Babaev authored
      Fixed a bug in the new code for WL#24 that caused generation of
      an invalid index-merge access plan.
      4153259e
    • Igor Babaev's avatar
      Merge · 9ee08757
      Igor Babaev authored
      9ee08757
    • Michael Widenius's avatar
      Automatic merge · 5ca65d0d
      Michael Widenius authored
      5ca65d0d
    • Michael Widenius's avatar
      mysqltest now gives error messages with error code for my_delete, my_rename, my_copy etc. · 0f6fb883
      Michael Widenius authored
      Fixed crashing bug when doing ALTER TABLE RENAME with transactional tables.
      
      client/mysqltest.cc:
        Added errno to error message for system calls (delete, rename etc)
        Write error message for failures of system calls
      mysql-test/include/cleanup_fake_relay_log.inc:
        Disable warnings for remove_file
      mysql-test/include/diff_tables.inc:
        Disable warnings for remove_file
      mysql-test/include/maria_empty_logs.inc:
        Disable warnings for remove_file
      mysql-test/include/maria_make_snapshot.inc:
        Disable warnings for remove_file
      mysql-test/include/maria_make_snapshot_for_feeding_recovery.inc:
        Disable warnings for remove_file
      mysql-test/include/mysqlhotcopy.inc:
        Disable warnings for remove_file
      mysql-test/include/ndb_backup.inc:
        Disable warnings for remove_file
      mysql-test/include/ndb_backup_print.inc:
        Disable warnings for remove_file
      mysql-test/r/alter_table_trans.result:
        Test of crashing ALTER TABLE RENAME bug
      mysql-test/t/alter_table_trans.test:
        Test of crashing ALTER TABLE RENAME bug
      mysql-test/t/mysqltest.test:
        Disable warnings for remove_file and move_file
      mysys/my_copy.c:
        Fixed wrong error message
      sql/sql_table.cc:
        Fixed crashing bug when doing ALTER TABLE RENAME with transactional tables.
      0f6fb883
  9. 14 Sep, 2010 4 commits
  10. 13 Sep, 2010 6 commits
  11. 12 Sep, 2010 3 commits
  12. 11 Sep, 2010 4 commits
    • Igor Babaev's avatar
      Pulled in the ltest changes of 5.1 · f3433b9e
      Igor Babaev authored
      f3433b9e
    • Igor Babaev's avatar
      WL#24: post review fixes. · 8dbdb863
      Igor Babaev authored
      8dbdb863
    • Igor Babaev's avatar
      Fixed bug #49600. · 02ee96f0
      Igor Babaev authored
      The problem could be demonstrated with an outer join of two single-row
      tables where the values of the join attributes were null. Any query
      with such a join could return a wrong result set if the where
      condition of the query was not empty. For queries with empty
      where conditions the result sets were correct.
      This was the consequence of two bugs in the code:
       - Item_equal objects for on conditions of outer joins were
         not built if the processed query had no where condition
       - the check for null values in the code that evaluated constant 
         Item_equal objects was incorrect.
      Fixed both above problems.
      Added a test case for the bug and adjusted results for some other
      test cases.
      02ee96f0
    • Sergei Golubchik's avatar
      to simpliy and unify the code · 17f3a094
      Sergei Golubchik authored
      17f3a094
  13. 10 Sep, 2010 2 commits
    • Michael Widenius's avatar
      Fix for LP#634943 "marked as crashed", "zerofilling" and "wrong data in... · 06e6244e
      Michael Widenius authored
      Fix for LP#634943 "marked as crashed", "zerofilling" and "wrong data in bitmap" when recovering Aria tables
      This was an interaction of several bugs:
      - Tables marked as opened was not properly unmarked on recovery if there was not changes since checkpoint
      - zerofill of tables put wrong data in bitmap if directory for page was full
      - Tables was thought as 'moved' during recovery if they had a create_lsn bigger than the lsn in the control file.
      
      
      storage/maria/ha_maria.cc:
        If table is moved and crashed, threat it as crashed.
        (Not a related to this bug, but still good to have fixed)
      storage/maria/ma_blockrec.c:
        Make enough_free_entries_on_page() global
      storage/maria/ma_blockrec.h:
        Make enough_free_entries_on_page() global
      storage/maria/ma_check.c:
        If directory is full, mark page full. Fixes bug in zerofill
      storage/maria/ma_open.c:
        Don't marke files as MOVED during recovery if create_trid > trnman_max_trid, as this fails for tables created after checkpoint.
      storage/maria/ma_recovery.c:
        Reset open_count in file that was open during crash and was part of checkpoint.
        Fixed wrong warning of 'open count' after recovery of files that was not touched since checkpoint.
      storage/maria/maria_chk.c:
        Changed not documented option --log-dir to --logdir
        Document more of the options.
        Clean up output for --help
      storage/maria/trnman.c:
        Added DBUG_PRINT
      06e6244e
    • Igor Babaev's avatar
      Fixed bug #49322. · a025ea38
      Igor Babaev authored
      When not-exists optimization was applied to a table that
      happened to be an inner table of two outer joins, one
      embedded into another, then setting the match flag for
      the embedding outer join on could be skipped. This caused
      generation of extra null complemented rows.
      Made sure that the match flags are set correctly in all cases
      when not-exists optimization is used.  
      a025ea38
  14. 09 Sep, 2010 3 commits
    • Michael Widenius's avatar
      Fixed bug LP#605798 "wrong data in bitmap" after recovery. · 74e8cea8
      Michael Widenius authored
      Extend remove_function_from_trace.pl to work with many threads (patch from Sergei)
      
      
      dbug/remove_function_from_trace.pl:
        Extend remove_function_from_trace.pl to work with many threads (patch from Sergei)
      storage/maria/ma_bitmap.c:
        Added marker that table had changed since last checkpoint.
        This ensures that we will flush all bitmap pages from cache at checkpoint.
        This fixes bug LP#605798 "wrong data in bitmap" after recovery.
      storage/maria/ma_check.c:
        Cleaned up error output
      storage/maria/ma_recovery.c:
        Cleaned up error output
      storage/maria/maria_def.h:
        Added changed_not_flushed
      74e8cea8
    • Michael Widenius's avatar
      Updated failure text for maria_install_db · 9bec8763
      Michael Widenius authored
      Don't give warning about block_insert if table is crashed.
      
      scripts/mysql_install_db.sh:
        Added link to KB.
      storage/maria/ma_recovery.c:
        Don't give warning about block_insert if table is crashed.
      9bec8763
    • Sergei Golubchik's avatar
      build dynamic plugins with the -shared libtool option to avoid · eb2636c4
      Sergei Golubchik authored
      double compilation
      eb2636c4
  15. 08 Sep, 2010 2 commits
    • Michael Widenius's avatar
      05336ac9
    • Michael Widenius's avatar
      Write message to stderr if recovery is not likely to succeed because we don't... · e9fb3095
      Michael Widenius authored
      Write message to stderr if recovery is not likely to succeed because we don't log records for batch inserts.
      Don't do UNDO or REDO on a crashed table.
      More DBUG_PRINT
      
      sql/sql_parse.cc:
        Remove display of 'packet' which is not useful
      storage/maria/ma_blockrec.c:
        More DBUG_PRINT()
      storage/maria/ma_key_recover.c:
        Write page number instead of page position
      storage/maria/ma_recovery.c:
        Write message to stderr if recovery is not likely to succeed because we don't log records for batch inserts.
        In normal cases this should never be an issue as we would recreate an empty table if MariaDB dies under batch insert.
        This warning will be given if you remove all tables and try to recreate them with maria_read_log, which can't be done as
        the log doesn't contain all data.
        Don't do UNDO or REDO on a crashed table.
      storage/maria/ma_write.c:
        Write page number instead of page position.
      e9fb3095
  16. 07 Sep, 2010 1 commit