1. 09 May, 2017 1 commit
    • Igor Babaev's avatar
      Fixed the bugs mdev-12670 and mdev-12675. · 6b97fe06
      Igor Babaev authored
      The code that blocked conversion of a IN subselect pedicate to a semi-join
      if it occurred in the ON expression of an outer join did not do it correctly.
      As a result, the conversion was blocked for IN subselect predicates
      encountered in ON expressions of INNER joins or in WHERE conditions
      of mergeable views / derived tables. This patch fixes this problem.
      6b97fe06
  2. 05 May, 2017 1 commit
    • Igor Babaev's avatar
      Fixed the bug mdev-12673. · 15f9931f
      Igor Babaev authored
      This patch corrects the fix for the bug mdev-10693.
      It is critical for the function get_best_combination() not to call
      create_ref_for_key() for constant tables.
      This bug could manifest itself only in multi-table subqueries where
      one of the tables is accessed by a constant primary key.
      15f9931f
  3. 02 May, 2017 1 commit
  4. 30 Apr, 2017 1 commit
    • Daniel Black's avatar
      mysqld_safe_help - remove warning · dbe2c3c5
      Daniel Black authored
      /home/travis/build/MariaDB/server/extra/mysqld_safe_helper.c:62:21: warning: too many arguments in call to 'do_usage'
          do_usage(argv[0]);
          ~~~~~~~~        ^
      1 warning generated.
      dbe2c3c5
  5. 24 Apr, 2017 1 commit
    • Igor Babaev's avatar
      Fixed the bug mdev-10693. · 2e7ba70a
      Igor Babaev authored
      The code that chooses between materialization of a non-correlated
      IN subquery and its transformation into an EXISTS correlated
      subquery assumes that the execution plan for the outer select
      has been already built. However it was not always so if subqueries
      occurred in the expressions used for ref access to tables of
      the outer select. A call of the function create_ref_for_key() in
      get_best_combination() could trigger a premature execution of
      the above mentioned code when the execution plan structures for
      the outer select were not fully built. This could cause a crash
      of the server.
      
      The fix postpones the calls of create_ref_for_key() until the
      structures for the execution plan is fully built.
      2e7ba70a
  6. 20 Apr, 2017 6 commits
  7. 19 Apr, 2017 1 commit
    • Oleksandr Byelkin's avatar
      Fix use of `require` in mysql-test-run. · d185f1d6
      Oleksandr Byelkin authored
      The motivation for this is that Perl is moving towards not having
      current directory ./ in @INC by default. This is causing
      mysql-test-run.pl to fail in latest Debian Unstable:
      
        https://lists.debian.org/debian-devel-announce/2016/08/msg00013.html
      
      However, we have `use "lib"`, there is no need for current directory
      in @INC, except for a gross hack. In mtr_cases.pm, there is a
      `require "mtr_misc.pl"`, which hides mtr_misc.pl away in mtr_cases
      namespace. And things only work because mysql-test-run.pl loads it
      with a different name, `require "lib/mtr_misc.pl"`! (Perl will
      `require` only once for each unique filename).
      
      Fix this by only using `require` in main program, and referencing
      functions with :: scope from other namespaces. For multi-use in
      different namespaces, proper `use` modules should be used.
      Signed-off-by: default avatarKristian Nielsen <knielsen@knielsen-hq.org>
      d185f1d6
  8. 13 Apr, 2017 1 commit
  9. 11 Apr, 2017 1 commit
  10. 07 Apr, 2017 1 commit
  11. 04 Apr, 2017 1 commit
    • Igor Babaev's avatar
      Fixed the bug mdev-12429 and its duplicates mdev-12145 and mdev-9886. · b0395d87
      Igor Babaev authored
      Also fixed a wrong result for a test case for mdev-7691
      (the alternative one).
      The test  cases for all these bug have materialized semi-joins used
      inside dependent sub-queries.
      
      The patch actually reverts the change inroduced by Monty in 2003.
      It looks like this change is not valid anymore after the implementation
      of semi-joins.
      Adjusted output from EXPLAIN for many other test cases.
      b0395d87
  12. 24 Mar, 2017 1 commit
  13. 21 Mar, 2017 1 commit
  14. 18 Mar, 2017 1 commit
    • Bharathy Satish's avatar
      Bug #25717383: MYSQLDUMP MAY EXECUTE ANY ARBITRARY QUERY · 6fa5e081
      Bharathy Satish authored
      While writing comments if database object names has a new
      line character, then next line is considered a command, rather
      than a comment.
      This patch fixes the way comments are constructed in mysqldump.
      
      (cherry picked from commit 1099f9d17b1c697c2760f86556f5bae7d202b444)
      6fa5e081
  15. 17 Mar, 2017 1 commit
  16. 14 Mar, 2017 2 commits
  17. 13 Mar, 2017 1 commit
  18. 12 Mar, 2017 1 commit
  19. 10 Mar, 2017 1 commit
  20. 09 Mar, 2017 1 commit
  21. 08 Mar, 2017 6 commits
  22. 06 Mar, 2017 1 commit
  23. 05 Mar, 2017 1 commit
  24. 03 Mar, 2017 1 commit
    • Marko Mäkelä's avatar
      MDEV-11520: Retry posix_fallocate() after EINTR. · 6b8173b6
      Marko Mäkelä authored
      The function posix_fallocate() as well as the Linux system call
      fallocate() can return EINTR when the operation was interrupted
      by a signal. In that case, keep retrying the operation, except
      if InnoDB shutdown has been initiated.
      6b8173b6
  25. 28 Feb, 2017 1 commit
  26. 27 Feb, 2017 4 commits
    • Igor Babaev's avatar
      Fixed bug mdev-12099. · 5a0fff50
      Igor Babaev authored
      The function mysql_derived_merge() erroneously did not mark newly formed
      AND formulas in ON conditions with the flag abort_on_null. As a result
      not_null_tables() calculated incorrectly for these conditions. This
      could prevent conversion of embedded outer joins into inner joins.
      
      Changed a test case from table_elim.test to preserve the former execution
      plan.
      5a0fff50
    • Sergei Golubchik's avatar
      MDEV-5999 MySQL Bug#12766319 - 61865: RENAME USER DOES NOT WORK CORRECTLY -... · 199f88cb
      Sergei Golubchik authored
      MDEV-5999 MySQL Bug#12766319 - 61865: RENAME USER DOES NOT WORK CORRECTLY - REQUIRES FLUSH PRIVILEGES
      
      use update_hostname() to update the hostname.
      test case comes from
      
        commit 0abdeed1d6d
        Author: gopal.shankar@oracle.com <>
        Date:   Thu Mar 29 00:20:54 2012 +0530
      
          Bug#12766319 - 61865: RENAME USER DOES NOT WORK CORRECTLY -
                                REQUIRES FLUSH PRIVILEGES
      199f88cb
    • Dmitry Lenev's avatar
      Fix for bug#11759114 - '51401: GRANT TREATS NONEXISTENT · 494a9415
      Dmitry Lenev authored
      FUNCTIONS/PRIVILEGES DIFFERENTLY'.
      
      The problem was that attempt to grant EXECUTE or ALTER
      ROUTINE privilege on stored procedure which didn't exist
      succeed instead of returning an appropriate error like
      it happens in similar situation for stored functions or
      tables.
      
      The code which handles granting of privileges on individual
      routine calls sp_exist_routines() function to check if routine
      exists and assumes that the 3rd parameter of the latter
      specifies whether it should check for existence of stored
      procedure or function. In practice, this parameter had
      completely different meaning and, as result, this check was
      not done properly for stored procedures.
      
      This fix addresses this problem by bringing sp_exist_routines()
      signature and code in line with expectation of its caller.
      494a9415
    • Sergei Golubchik's avatar
      delete the installation warning for CentOS4/RHEL4 · 0a480f03
      Sergei Golubchik authored
      it went out of support five years ago
      0a480f03