1. 14 Feb, 2016 6 commits
  2. 13 Feb, 2016 3 commits
  3. 09 Feb, 2016 1 commit
    • Igor Babaev's avatar
      This is the consolidated patch for mdev-8646: · 2cfc450b
      Igor Babaev authored
      "Re-factor the code for post-join operations".
      
      The patch mainly contains the code ported from mysql-5.6 and
      created for two essential architectural changes:
      1. WL#5558: Resolve ORDER BY execution method at the optimization stage
      2. WL#6071: Inline tmp tables into the nested loops algorithm
      
      The first task was implemented for mysql-5.6 by Ole John Aske.
      It allows to make all decisions on ORDER BY operation at the optimization
      stage.
      
      The second task implemented for mysql-5.6 by Evgeny Potemkin adds JOIN_TAB
      nodes for post-join operations that require temporary tables. It allows
      to execute these operations within the nested loops algorithm that used to
      be used before this task only for join queries. Besides these task moves
      all planning on the execution of these operations from the execution phase
      to the optimization phase.
      
      Some other re-factoring changes of mysql-5.6 were pulled in, mainly because
      it was easier to pull them in than roll them back. In particular all
      changes concerning Ref_ptr_array were incorporated.
      
      The port required some changes in the MariaDB code that concerned the
      functionality of EXPLAIN and ANALYZE. This was done mainly by Sergey
      Petrunia.
      2cfc450b
  4. 16 Jan, 2016 1 commit
    • Alexander Barkov's avatar
      MDEV-9407 Illegal mix of collation when using GROUP_CONCAT in a VIEW · 7b50447a
      Alexander Barkov authored
      MDEV-9408 CREATE TABLE SELECT MAX(int_column) creates different columns for table vs view
      
      There were three almost identical pieces of the code:
      - Field *Item_func::tmp_table_field();
      - Field *Item_sum::create_tmp_field();
      - Field *create_tmp_field_from_item();
      with a difference in very small details (hence the bugs):
      Only Item_func::tmp_table_field() was correct, the other two were not.
      Removing the two incorrect pieces of the redundant code.
      Joining these three functions/methods into a single virtual method
      Item::create_tmp_field().
      Additionally, moving Item::make_string_field() and
      Item::tmp_table_field_from_field_type() from the public into the
      protected section of the class declaration, as they are now not
      needed outside of Item.
      7b50447a
  5. 14 Jan, 2016 1 commit
  6. 12 Jan, 2016 1 commit
  7. 11 Jan, 2016 1 commit
  8. 30 Dec, 2015 2 commits
  9. 29 Dec, 2015 12 commits
  10. 28 Dec, 2015 1 commit
  11. 27 Dec, 2015 1 commit
    • Sergey Vojtovich's avatar
      MDEV-9128 - Compiling on IBM System Z fails · 30b2447f
      Sergey Vojtovich authored
      Provided IBM System Z have outdated compiler version, which supports gcc sync
      builtins but not gcc atomic builtins. It also has weak memory model.
      
      InnoDB attempted to verify if __sync_lock_test_and_set() is available by
      checking IB_STRONG_MEMORY_MODEL. This macro has nothing to do with availability
      of __sync_lock_test_and_set(), the right one is HAVE_ATOMIC_BUILTINS.
      30b2447f
  12. 26 Dec, 2015 2 commits
  13. 24 Dec, 2015 3 commits
  14. 23 Dec, 2015 5 commits