1. 13 Jan, 2011 3 commits
    • Sergey Petrunya's avatar
    • Sergey Petrunya's avatar
      Backport testcase for: · 86637d12
      Sergey Petrunya authored
      Bug #45092: join buffer contains two blob columns one of which is used in the key employed to access the joined table
      86637d12
    • Sergey Petrunya's avatar
      Backport of (see below) + temporary measures to make SJ-Materialization work with join buffering. · ed2e3dae
      Sergey Petrunya authored
      Date: Mon, 01 Nov 2010 15:15:25 -0000
      3272 Roy Lyseng        2010-11-01
      Bug#52068: Optimizer generates invalid semijoin materialization plan
      
      When MaterializeScan semijoin strategy was used and there were one
      or more outer dependent tables before the semijoin tables, the scan
      over the materialized table was not properly reset for each row of
      the prefix outer tables.
      
      Example: suppose we have a join order:
      
        ot1 SJ-Mat-Scan(it2 it3)  ot4
      
      Notice that this is called a MaterializeScan, even though there is an
      outer table ahead of the materialized tables. Usually a MaterializeScan
      has the outer tables after the materialized table, but this is
      a special (but legal) case with outer dependent tables both before and
      after the materialized table.
      
      For each qualifying row from ot1, a new scan over the materialized
      table must be set up. The code failed to do that, so all scans after
      the first one returned zero rows from the materialized table.
      ed2e3dae
  2. 25 Dec, 2010 1 commit
  3. 21 Dec, 2010 2 commits
  4. 20 Dec, 2010 1 commit
  5. 19 Dec, 2010 1 commit
  6. 17 Dec, 2010 2 commits
  7. 16 Dec, 2010 3 commits
  8. 15 Dec, 2010 1 commit
  9. 14 Dec, 2010 1 commit
    • unknown's avatar
      Fix LP BUG#685411 · 766df925
      unknown authored
      Analysis:
      The assert failed because st_select_lex::print() was called for subqueries
      as follows:
      
      Item_subselect::print() ->
        subselect_single_select_engine::print() -> st_select_lex::print()
      
      It was Item_subselect::fix_fields() that set the thd by calling set_thd(),
      so when this print() was called before fix_fields(), subselect_engine::thd
      was NULL.
      
      Solution:
      The patch makes all constructors of all subselect_engine classes to take
      a THD parameter. The default subselect_single_select_engine engine is created
      early during parse time, in the Item_subselect::init call, so we pass the
      correct THD object already at this point.
      766df925
  10. 13 Dec, 2010 2 commits
  11. 11 Dec, 2010 2 commits
  12. 10 Dec, 2010 1 commit
  13. 08 Dec, 2010 2 commits
    • Sergey Petrunya's avatar
      BUG#671340: Diverging results in with mrr_sort_keys=ON|OFF and join_cache_level=5 · 019ccf14
      Sergey Petrunya authored
      - Make Mrr_ordered_index_reader() save the rowid across scan interruptions
      
      Also
      - Fix compiler warning for setup_buffer_sizes()
      - Add commented key_copy/key_restore for better handling of a similar issue
        with index record being destroyed by scan interruption (which causes 
        incorrect evaluation of pushed index condition later on).
      019ccf14
    • Michael Widenius's avatar
      Fixed test results for windows builds · 2fc79e2d
      Michael Widenius authored
      Fixed compiler warning
      
      mysql-test/r/named_pipe.result:
        Fixed test results for windows builds
      mysql-test/r/shm.result:
        Fixed test results for windows builds
      sql/item_cmpfunc.cc:
        Fixed compiler warning about uninitialized "first"
      2fc79e2d
  14. 06 Dec, 2010 12 commits
    • Vladislav Vaintroub's avatar
      merge LP Bug#686184 · 9574c71e
      Vladislav Vaintroub authored
      9574c71e
    • Vladislav Vaintroub's avatar
      merge LP Bug#686184 · 2ce6bea9
      Vladislav Vaintroub authored
      2ce6bea9
    • Vladislav Vaintroub's avatar
      Fix myisam_crash_before_flush_keys on Windows · a1abfb58
      Vladislav Vaintroub authored
      Problem : mtr reports test failure because it sees
      [ERROR] mysqld got exception 0x80000003 ;
      in the .err file
      
      The exception comes from DBUG_EXECUTE_IF (.. abort())
      
      Fix:  use DBUG_ABORT instead of abort() - it does not throw 
      any exceptions.
      a1abfb58
    • Vladislav Vaintroub's avatar
      Fix LP Bug#686184 - merge_debug test fails. · cd72b793
      Vladislav Vaintroub authored
      The reason for failure is that DBUG_EXECUTE_IF in mi_open()
      only worked for Unix-formatted file names, due to strstr(name, "/crashed")
      
      The fix change strstr() above to strstr(name, "crashed"), to it can work with 
      Windows file names as well.
      cd72b793
    • Sergey Petrunya's avatar
      f38711c1
    • Vladislav Vaintroub's avatar
      merge · 3c68030d
      Vladislav Vaintroub authored
      3c68030d
    • Vladislav Vaintroub's avatar
      merge · fdd009f1
      Vladislav Vaintroub authored
      fdd009f1
    • Vladislav Vaintroub's avatar
      merge · 1208fba6
      Vladislav Vaintroub authored
      1208fba6
    • Vladislav Vaintroub's avatar
      Bug#473914: mysql_client_test fail with in debug compilaton on windows x64 · 7a80fa96
      Vladislav Vaintroub authored
       
      Reason: inconsistent compilation, federatedx is compiled without SAFEMALLOC
      flag, while anything else is compiled with SAFEMALLOC.
      
      As a consequence, my_hash_init used inside federatedx initialization does not
      provide correct caller info parameters (file, line) , so they are initialized with 
      whatever is on stack. When info about allocated memory is output in
      COM_DEBUG command, the server crashes trying to output string starting at
      0xcccccccccccccccc.
      
      The fix is to remove SAFEMALLOC  preprocessor flags 
      from every CMakeLists.txt, except the top-level one.
      
      Also, SAFEMALLOC is not defined by default now, instead
      there is WITH_DEBUG_FULL CMake option which adds 
      -DSAFEMALLOC to C and C++ flags in debug compilation. 
      This option is off by  default, because 
      1) Debug C runtime already has heap debugging builtin with 
       overwrite and leak detection
      2)safemalloc considerably slows down the tests.
      
      
      Note also  that 
      - SAFEMALLOC is gone  in MySQL5.5
      - On Windows, heap related overflows can also be found using free pageheap utility
      (that is also part of application verifier). This is even more efficient if there are no other layers 
      on top of Windows heap allocator, e.g  it is most efficient with release version.
      7a80fa96
    • Michael Widenius's avatar
    • Michael Widenius's avatar
      Merge with 5.1-release · 7720092b
      Michael Widenius authored
      7720092b
    • Michael Widenius's avatar
      Merge with 5.1-release. · 4d8061cb
      Michael Widenius authored
      - Fixed problem with oqgraph and 'make dist'
      
      Note that after this merge we have a problem show in join_outer where we examine too many rows in one specific case (related to BUG#57024).
      This will be fixed when mwl#128 is merged into 5.3.
      4d8061cb
  15. 05 Dec, 2010 3 commits
    • Michael Widenius's avatar
      Removed compiler warning · 5c43e47b
      Michael Widenius authored
      5c43e47b
    • Michael Widenius's avatar
      merge with 5.1-release · 6ed1f88b
      Michael Widenius authored
      6ed1f88b
    • Michael Widenius's avatar
      Fixes to not trigger end-consistency testing of pagecache. · 420b6312
      Michael Widenius authored
      - Moved end_pagecache() to after maria_close()
      - Flush page cache before closing files (in maria_pack)
      Fixed test suite failure for PBXT
      
      mysql-test/suite/pbxt/r/select.result:
        We mask out the 'rows' column because it may differ from run to run
      mysql-test/suite/pbxt/t/select.test:
        We mask out the 'rows' column because it may differ from run to run
      storage/maria/maria_chk.c:
        Moved end_pagecache() to after maria_close() to not trigger end-consistency testing of pagecache.
      storage/maria/maria_pack.c:
        Moved end_pagecache() to after maria_close() to not trigger end-consistency testing of pagecache.
        flush page cache before closing files.
      420b6312
  16. 04 Dec, 2010 3 commits