1. 04 Mar, 2017 2 commits
  2. 03 Mar, 2017 2 commits
  3. 02 Mar, 2017 1 commit
  4. 28 Feb, 2017 15 commits
  5. 27 Feb, 2017 20 commits
    • Daniel Black's avatar
      MDEV-11619: mtr --mem {no argument of a directory} (#320) · b54566d7
      Daniel Black authored
      This removes functionality of where ./mtr --mem /tmp/dir could be a directory.
      
      Now MTR_MEM=/tmp/dir ./mtr is needed.
      
      The case where MTR_MEM=/tmp/dir ./mtr --mem has the equivalent effect.
      Signed-off-by: default avatarDaniel Black <daniel.black@au.ibm.com>
      
      --mem works better as a pure flag, because it can be followed by command-line arguments (test names). If the option is allowed to have a value, the test name which directly follows it will be treated as the option value instead. It is possible to implement workarounds to avoid this, but they would not be completely reliable, and there is no practical purpose of such extension of functionality to justify them.
      b54566d7
    • 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
    • Sergei Golubchik's avatar
    • Sergei Golubchik's avatar
      713d5136
    • Sergei Golubchik's avatar
      MDEV-10788 Not able to compile source with -DBUILD_CONFIG=mysql_release -DCMAKE_BUILD_TYPE=Debug · 831b5318
      Sergei Golubchik authored
      It's too plainful to require <my_config.h> to be included first
      for third-party storage engines. And anyway, some source files
      might not include <my_config.h> at all, so there is no guarantee
      that all parts of the binary will see identical definitions of system
      structures (e.g. struct stat).
      
      Define _FILE_OFFSET_BITS on the compiler's command line instead.
      831b5318
    • Sergei Golubchik's avatar
      MDEV-11505 wrong databasename in mysqldump comment · 44534487
      Sergei Golubchik authored
      fix_for_comment() uses a static buffer. cannot have two
      fix_for_comment() calls as arguments to one printf().
      44534487
    • Sergei Golubchik's avatar
      bugfix: remove my_delete_with_symlink() · d72dbb41
      Sergei Golubchik authored
      it was race condition prone. instead use either a pair of my_delete()
      calls with already resolved paths, or a safe high-level function
      my_handler_delete_with_symlink(), like MyISAM and Aria already do.
      d72dbb41
    • Sergei Golubchik's avatar
      race-condition safe implementation of test_if_data_home_dir() · 955f2f03
      Sergei Golubchik authored
      don't realpath() twice
      955f2f03
    • Sergei Golubchik's avatar
    • Sergei Golubchik's avatar
      support MY_NOSYMLINKS in my_delete() · 6d503245
      Sergei Golubchik authored
      6d503245
    • Sergei Golubchik's avatar
      compilation failure · f2d24ea6
      Sergei Golubchik authored
      At least it would be a compilation failure with -DDONT_ALLOW_SHOW_COMMANDS.
      Otherwise it only confuses ctags to ignore ~75% of sql_parse.cc
      f2d24ea6
    • Sergei Golubchik's avatar
      cleanup: remove now-unused argument · b6862c91
      Sergei Golubchik authored
      b6862c91
    • Sergei Golubchik's avatar
      MDEV-11902 mi_open race condition · b27fd90a
      Sergei Golubchik authored
      TOCTOU bug. The path is checked to be valid, symlinks are resolved.
      Then the resolved path is opened. Between the check and the open,
      there's a window when one can replace some path component with a
      symlink, bypassing validity checks.
      
      Fix: after we resolved all symlinks in the path, don't allow open()
      to resolve symlinks, there should be none.
      
      Compared to the old MyISAM/Aria code:
      * fastpath. Opening of not-symlinked files is just one open(),
        no fn_format() and lstat() anymore.
      * opening of symlinked tables doesn't do fn_format() and lstat() either.
        it also doesn't to realpath() (which was lstat-ing every path
        component), instead if opens every path component with O_PATH.
      * share->data_file_name stores realpath(path) not readlink(path). So,
        SHOW CREATE TABLE needs to do lstat/readlink() now (see ::info()),
        and certain error messages (cannot open file "XXX") show the real
        file path with all symlinks resolved.
      b27fd90a
    • Sergei Golubchik's avatar
      cleanup: NO_OPEN_3 was never defined · d78d0d45
      Sergei Golubchik authored
      d78d0d45
    • Sergei Golubchik's avatar
      cleanup: remove 16-year-old "TODO" · 8722d4b8
      Sergei Golubchik authored
      8722d4b8
    • Sergei Golubchik's avatar
      cleanup: mysys_test_invalid_symlink · c826ac9d
      Sergei Golubchik authored
      Remove maria_test_invalid_symlink() and myisam_test_invalid_symlink(),
      introduce mysys_test_invalid_symlink(). Other engines might need it too
      c826ac9d
    • Sergei Golubchik's avatar
      cleanup: my_register_filename() · 24d8bc70
      Sergei Golubchik authored
      Don't let my_register_filename() fail because strdup() failed. Better to
      have NULL for a filename, then to fail the already successful open().
      
      Filenames are only used for error reporting and there was already code
      to ignore OOMs (my_fdopen()) and to cope with missing filenames
      (my_filename()).
      24d8bc70