1. 05 Dec, 2010 2 commits
    • Igor Babaev's avatar
      Fixed LP bug#684086. · 1684c3e9
      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.
        
      1684c3e9
    • Igor Babaev's avatar
      Fixed LP bug #684117. · bfb77275
      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".
      bfb77275
  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. · 1a3bb0c5
      Igor Babaev authored
      Fixed a bug in the new code for WL#24 that caused generation of
      an invalid index-merge access plan.
      1a3bb0c5
    • Igor Babaev's avatar
      Merge · af834a42
      Igor Babaev authored
      af834a42
    • Michael Widenius's avatar
      Automatic merge · b4b64946
      Michael Widenius authored
      b4b64946
    • Michael Widenius's avatar
      mysqltest now gives error messages with error code for my_delete, my_rename, my_copy etc. · f4820ea6
      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.
      f4820ea6
  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 · 93c22e06
      Igor Babaev authored
      93c22e06
    • Igor Babaev's avatar
      WL#24: post review fixes. · 3a61fbe9
      Igor Babaev authored
      3a61fbe9
    • Igor Babaev's avatar
      Fixed bug #49600. · 577b7345
      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.
      577b7345
    • Sergei Golubchik's avatar
      to simpliy and unify the code · 966661c8
      Sergei Golubchik authored
      966661c8
  13. 10 Sep, 2010 2 commits
    • Michael Widenius's avatar
      Fix for LP#634943 "marked as crashed", "zerofilling" and "wrong data in... · b9890b05
      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
      b9890b05
    • Igor Babaev's avatar
      Fixed bug #49322. · b3cd40e0
      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.  
      b3cd40e0
  14. 09 Sep, 2010 3 commits
    • Michael Widenius's avatar
      Fixed bug LP#605798 "wrong data in bitmap" after recovery. · b7158601
      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
      b7158601
    • Michael Widenius's avatar
      Updated failure text for maria_install_db · 6f59c41d
      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.
      6f59c41d
    • Sergei Golubchik's avatar
      build dynamic plugins with the -shared libtool option to avoid · 44fec70b
      Sergei Golubchik authored
      double compilation
      44fec70b
  15. 08 Sep, 2010 2 commits
    • Michael Widenius's avatar
      f7a701ae
    • Michael Widenius's avatar
      Write message to stderr if recovery is not likely to succeed because we don't... · 1a0315f1
      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.
      1a0315f1
  16. 07 Sep, 2010 1 commit