1. 20 Jun, 2016 3 commits
    • Olivier Bertrand's avatar
    • Alexander Barkov's avatar
      MDEV-10020 InnoDB NOT IN Query Crash When One Item Is NULL · a80dbe06
      Alexander Barkov authored
      The problem was that the loop in get_func_mm_tree()
      accessed improperly initialized instances of String,
      which resided in the bzero'ed part of the in_vector::base array.
      
      Strings in in_vector::base are originally initialized
      in Item_func_in::fix_length_and_dec(),
      in in_vector::in_vector() using sql_calloc,
      rather than using a String constructor, so their str_charset
      members are originally equal to NULL.
      
      Strings in in_vector::base are later initialized
      to good values in Item_func_in::fix_length_and_dec(),
      using array->set(), in this code:
      
            uint j=0;
            for (uint i=1 ; i < arg_count ; i++)
            {
              array->set(j,args[i]);
              if (!args[i]->null_value)                      // Skip NULL values
                j++;
              else
                have_null= 1;
            }
            if ((array->used_count= j))
              array->sort();
      
      NULLs are not taken into account, so at the end
      array->used_count can be smaller than array->count.
      
      This patch fixes the loop in opt_range.cc, in get_func_mm_tree(),
      to access only properly initialized elements in in_vector::base,
      preventing access to its bzero'ed non-initialized tail.
      a80dbe06
    • Jan Lindström's avatar
      MDEV-8633: information_schema.index_statistics doesn't delete · 70ad689b
      Jan Lindström authored
      item when drop table indexes or drop table;
      
      Problem was that table and index statistics is removed from
      persistent tables but not from memory cache. Added functions
      to remove table and index statistics from memory cache.
      70ad689b
  2. 18 Jun, 2016 1 commit
  3. 16 Jun, 2016 3 commits
  4. 13 Jun, 2016 1 commit
    • Olivier Bertrand's avatar
      - Possibly fix MDEV-10179 Reset remote tables when re-opening · 0a96c9c4
      Olivier Bertrand authored
        modified:   storage/connect/tabtbl.cpp
      
      - Add trace and make m_Stmt conditional
        modified:   storage/connect/myconn.cpp
        modified:   storage/connect/myconn.h
      
      - Protect trace from null string (for Linux)
        modified:   storage/connect/tabcol.cpp
      
      - Record error changes
        modified:   storage/connect/mysql-test/connect/r/jdbc_new.result
      
      - Typo
        modified:   storage/connect/jdbconn.cpp
        modified:   storage/connect/jsonudf.cpp
      0a96c9c4
  5. 08 Jun, 2016 2 commits
  6. 02 Jun, 2016 1 commit
  7. 28 May, 2016 1 commit
  8. 27 May, 2016 2 commits
  9. 24 May, 2016 1 commit
  10. 23 May, 2016 1 commit
  11. 22 May, 2016 1 commit
  12. 21 May, 2016 3 commits
  13. 12 May, 2016 3 commits
  14. 30 Apr, 2016 1 commit
  15. 28 Apr, 2016 2 commits
    • Vladislav Vaintroub's avatar
      9eba34f0
    • Sergey Vojtovich's avatar
      MDEV-9988 - Insert cast to suppress -Wdynamic-class-memaccess · 94bad73d
      Sergey Vojtovich authored
      Clang warns on this code because it is memsetting over a vtable contained in a
      struct in the best_positions array. The diagnostic text is:
      
      mariadb/sql/sql_select.cc:24462:10: error: destination for this 'memset' call is
      a pointer to class containing a dynamic class 'Duplicate_weedout_picker'; vtable
      pointer will be overwritten [-Werror,-Wdynamic-class-memaccess]
        memset(best_positions, 0, sizeof(POSITION) * (table_count + 1));
        ~~~~~~ ^
      
      Patch contributed by David Gow.
      94bad73d
  16. 27 Apr, 2016 2 commits
  17. 26 Apr, 2016 12 commits