1. 12 Jan, 2013 1 commit
    • Igor Babaev's avatar
      Fixed bug mdev-4025. · 12bf6fe8
      Igor Babaev authored
      The bug could lead to a wrong estimate of the number of expected rows
      in the output of the EXPLAIN commands for queries with GROUP BY.
      This could be observed in the test case for LP bug 934348.
      12bf6fe8
  2. 11 Jan, 2013 1 commit
    • Vladislav Vaintroub's avatar
      MDEV-4020 : Make sure strmov symbol is exported by client library on Linux... · d8acafcb
      Vladislav Vaintroub authored
      MDEV-4020 : Make sure strmov symbol is exported by client library  on Linux (even if the server and libraries itself use stpcpy instead of it)
      
      It is a workaround that allows myodbc built by certain distributions' (CentOS,Fedora) to peacefully coexist with mariadb client libraries.
      The problem is that MyODBC in these distros needs strmov() to be exported by mysql client shared library, or else myodbc fails to load.
      d8acafcb
  3. 10 Jan, 2013 2 commits
  4. 09 Jan, 2013 1 commit
  5. 08 Jan, 2013 1 commit
  6. 28 Dec, 2012 1 commit
    • unknown's avatar
      MDEV-3873 & MDEV-3876 & MDEV-3912 : Wrong result (extra rows) with ALL subquery · 6f26aac9
      unknown authored
      from a MERGE view.
      
      The problem was in the lost ability to be null for the table of a left join if it
      is a view/derived table.
      
      It hapenned because setup_table_map(), was called earlier then we merged
      the view or derived.
      
      Fixed by propagating new maybe_null flag during Item::update_used_tables().
      
      Change in join_outer.test and join_outer_jcl6.test appeared because
      IS NULL reported no used tables (i.e. constant) for argument which could not be
      NULL and new maybe_null flag was propagated for IS NULL argument (Item_field)
      because table the Item_field belonged to changed its maybe_null status.
      6f26aac9
  7. 21 Dec, 2012 3 commits
  8. 19 Dec, 2012 1 commit
    • unknown's avatar
      MDEV-3928: Assertion `example' failed in Item_cache::is_expensive_processor... · e99aa91e
      unknown authored
      MDEV-3928: Assertion `example' failed in Item_cache::is_expensive_processor with a 2-level IN subquery
      
      Analysis:
      The following call stack shows that it is possible to set Item_cache::value_cached, and the relevant value
      without setting Item_cache::example.
      
      #0 Item_cache_temporal::store_packed at item.cc:8395
      #1 get_datetime_value at item_cmpfunc.cc:915
      #2 resolve_const_item at item.cc:7987
      #3 propagate_cond_constants at sql_select.cc:12264
      #4 propagate_cond_constants at sql_select.cc:12227
      #5 optimize_cond at sql_select.cc:13026
      #6 JOIN::optimize at sql_select.cc:1016
      #7 st_select_lex::optimize_unflattened_subqueries at sql_lex.cc:3161
      #8 JOIN::optimize_unflattened_subqueries at opt_subselect.cc:4880
      #9 JOIN::optimize at sql_select.cc:1554
      
      The fix is to set Item_cache_temporal::example even when the value is
      set directly by Item_cache_temporal::store_packed. This makes the
      Item_cache_temporal object consistent.
      e99aa91e
  9. 11 Dec, 2012 1 commit
  10. 07 Dec, 2012 1 commit
    • Joerg Bruehe's avatar
      Last-minute fix to 5.1.67, · d07b5f1c
      Joerg Bruehe authored
      taking a change done to main 5.1 by Dmitri Lenev.
      
      This is the original comment:
      
      > committer: Dmitry Lenev <Dmitry.Lenev@oracle.com>
      > branch nick: mysql-5.1-15954896
      > timestamp: Wed 2012-12-05 19:26:56 +0400
      > message:
      >   Bug #15954896 "SP, MULTI-TABLE DELETE AND LONG ALIAS".
      
        Using too long table aliases in stored routines might
        have caused server crashes.
      
        Code in sp_head::merge_table_list() which is responsible
        for collecting information about tables used in stored
        routine was not aware of the fact that table alias might
        have arbitrary length. I.e. it assumed that table alias
        can't be longer than NAME_LEN bytes and allocated buffer
        for a key identifying table accordingly.
      
        This patch fixes the issue by ensuring that we use
        dynamically allocated buffer for table key when table
        alias is too long. By default stack based buffer is used
        in which NAME_LEN bytes are reserved for table alias.
      d07b5f1c
  11. 05 Dec, 2012 2 commits
    • Vladislav Vaintroub's avatar
      MDEV-3918: myisamchk bogus error for files larger than 4GB. · c4b35f92
      Vladislav Vaintroub authored
      The failure is caused by failing stat() call . C Runtime function stat() uses old struct with 32bit st_size member,
      and since Visual Studio 2010 , it returns an error on st_size overflow (i.e on files larger than 4GB)
      
      Fix replaces stat() by my_stat(), the later is backed by 64bit-able stat64().
      c4b35f92
    • unknown's avatar
      MDEV-3914 fix. · 0aad592f
      unknown authored
      Fixed algorithm of detecting of first real table in view/subquery-in-the-FROM-clase.
      0aad592f
  12. 04 Dec, 2012 1 commit
  13. 29 Nov, 2012 1 commit
  14. 26 Nov, 2012 1 commit
  15. 23 Nov, 2012 2 commits
  16. 22 Nov, 2012 4 commits
  17. 20 Nov, 2012 3 commits
  18. 19 Nov, 2012 3 commits
  19. 17 Nov, 2012 2 commits
  20. 12 Nov, 2012 1 commit
  21. 10 Nov, 2012 2 commits
    • Vladislav Vaintroub's avatar
      MDEV-3849 - 1 bytes stack overwrite in normalize_dirname(). · 35313020
      Vladislav Vaintroub authored
      Take into account that length of strings passed down to this function can be up to FN_REFLEN+1 bytes. including terminating zero.
      The overwrite was caused by incomplete fix to MySQL Bug # 44834
      35313020
    • Igor Babaev's avatar
      Fixed bug mdev-3845. · 094f4cf7
      Igor Babaev authored
      If triggers are used for an insert/update/delete statement than the values of
      all virtual columns must be computed as any of them may be used by the triggers.
      094f4cf7
  22. 09 Nov, 2012 5 commits