1. 21 Oct, 2015 4 commits
  2. 19 Oct, 2015 1 commit
  3. 11 Oct, 2015 2 commits
  4. 10 Oct, 2015 1 commit
  5. 09 Oct, 2015 15 commits
  6. 08 Oct, 2015 9 commits
  7. 06 Oct, 2015 8 commits
    • Sergei Petrunia's avatar
      MDEV-8903: Buildbot valgrind failure: Invalid read of size 1 in sql_memdup... · 4a602046
      Sergei Petrunia authored
      When we calculate max_key_len for RANGE_OPT_PARAM::min_key/max_key, take
      into account that QUICK_RANGE::QUICK_RANGE for some reason assumes
      that there is one more byte there:
      
            max_key((uchar*) sql_memdup(max_key_arg,max_length_arg+1)),
      4a602046
    • Sergei Petrunia's avatar
      Fix for MDEV-8321, MDEV-6223 · 12897947
      Sergei Petrunia authored
      EXPLAIN INSERT ... SELECT tried to use SELECT's execution path. This
      caused a collection of problems:
      - SELECT_DESCRIBE flag was not put into select_lex->options, which
        means it was not in JOIN::select_options either (except for the first
        member of the UNION).
      - This caused UNION members to be executed. They would attempt to write
        join output rows to the output.
      - (Actual cause of the crash) second join sibling would call
        result->send_eof() when finished execution. Then,
        Explain_query::print_explain would attempt to write to query output
        again, and cause an assertion due to non-empty query output.
      12897947
    • Oleksandr Byelkin's avatar
      MDEV-7846: postreview fix · 504802f3
      Oleksandr Byelkin authored
      504802f3
    • Oleksandr Byelkin's avatar
      MDEV-7846: Server crashes in Item_subselect::fix_fields or fails with Thread stack overrun · 54b99817
      Oleksandr Byelkin authored
      Substitute into transformed subselects original left expression and than register its change in case it was substituted.
      54b99817
    • Oleksandr Byelkin's avatar
      MDEV-7445:Server crash with Signal 6 · 0ab93fd6
      Oleksandr Byelkin authored
      MDEV-7565: Server crash with Signal 6 (part 2)
      
      followup test suite and its fix.
      0ab93fd6
    • Oleksandr Byelkin's avatar
      MDEV-7445: Server crash with Signal 6 · 2e3e8180
      Oleksandr Byelkin authored
      Problem was in rewriting left expression which had 2 references on it. Solved with making subselect reference main.
      
      Item_in_optimized can have not Item_in_subselect reference in left part so type casting with no check is dangerous.
      
      Item::cols() should be checked after Item::fix_fields().
      2e3e8180
    • Oleksandr Byelkin's avatar
      MDEV-7565: Server crash with Signal 6 (part 2) · 7ccde2cb
      Oleksandr Byelkin authored
      Preparation of subselect moved earlier (before checks which needs it prepared).
      7ccde2cb
    • Sergei Petrunia's avatar
      MDEV-8299: MyISAM or Aria table gets corrupted after EXPLAIN INSERT and INSERT · a7dd24cd
      Sergei Petrunia authored
      [EXPLAIN] INSERT .. SELECT creates a select_insert object.
      select_insert calls handler->start_bulk_insert() during
      initialization.
      
      For MyISAM/Aria this requires that a matching call to
      handler->end_bulk_insert() call is made.
      
      Regular INSERT .. SELECT accomplishes this by calling either
      select_result->send_eof() or select_result->abort_result_set().
      
      EXPLAIN INSERT ... SELECT didn't call either, which resulted in
      improper de-initializaiton of handler object. Make it call
      abort_result_set(), which invokes handler->end_bulk_insert().
      a7dd24cd