1. 12 Mar, 2010 1 commit
  2. 10 Mar, 2010 7 commits
    • Davi Arnaut's avatar
      Bug#33669: Transactional temporary tables do not work under --read-only · b1174089
      Davi Arnaut authored
      The problem was that in read only mode (read_only enabled),
      the server would mistakenly deny data modification attempts
      for temporary tables which belong to a transactional storage
      engine (eg. InnoDB).
      
      The solution is to allow transactional temporary tables to be
      modified under read only mode. As a whole, the read only mode
      does not apply to any kind of temporary table.
      
      
      mysql-test/r/read_only_innodb.result:
        Add test case result for Bug#33669
      mysql-test/t/read_only_innodb.test:
        Add test case for Bug#33669
      sql/lock.cc:
        Rename mysql_lock_tables_check to lock_tables_check and make
        it static. Move locking related checks from get_lock_data to
        lock_tables_check. Allow write locks to temporary tables even
        under read-only.
      b1174089
    • Alexander Nozdrin's avatar
      Auto-merge from mysql-trunk. · e58f200a
      Alexander Nozdrin authored
      e58f200a
    • Alexander Nozdrin's avatar
      Auto-merge from mysql-next-mr. · cfeee858
      Alexander Nozdrin authored
      cfeee858
    • Alexander Nozdrin's avatar
      c9db455c
    • Joerg Bruehe's avatar
    • Joerg Bruehe's avatar
      Part of the fixes for bug#49022 · fcd11906
      Joerg Bruehe authored
          Plugins included into bin release cannot be
          installed on debug version of server
      
      IF    the build process was split into separate "debug" and
            "optimized" builds
         AND
            the plugin files of the debug build got copied into
            "plugin/debug/"
      (both is done for MySQL release builds starting from 5.5.3),
      THEN these debug plugin files are to be included in the
           final binary package.
      
      This change deals with the inclusion only,
      the other parts are done in different changesets.
      
      
      plugin/Makefile.am:
        The "install" rule must not assume that "debug" files are
        present, this depends on the preceding steps in the build.
        
        If they are present, we cannot copy them by simply using
        "libtool install" (as we could do during an ordinary build)
        because they are already kept in "plugin/debug/".
        
        When doing the copy to the destination hierarchy, we must
        ensure that symlinks are not expanded but rather copied
        as symlinks.
        "cp -d" is specific to GNU, the portable way would use
        "cp -P", but that is not fully specified with recursion.
        So we fall back on "tar c | tar x", which is known to
        keep symlinks unchanged (and un-expanded).
        
        Using "$(TAR)" is just a precaution in case of weird path
        settings or other portability issues.
      fcd11906
    • Mats Kindahl's avatar
      Merging with mysql-next-mr-bugfixing · ec82cbb2
      Mats Kindahl authored
      ec82cbb2
  3. 09 Mar, 2010 9 commits
  4. 07 Mar, 2010 6 commits
  5. 06 Mar, 2010 11 commits
  6. 05 Mar, 2010 6 commits
    • Marc Alff's avatar
      Bug#45194 mysql_upgrade deletes existing data in performance_schema database/schema · ed3a57fe
      Marc Alff authored
      Before this fix, mysql_upgrade would always drop and re create
      the performance_schema database.
      This in theory could destroy user data created using 5.1 or older versions.
      
      With this fix, mysql_upgrade checks the content of the
      performance_schema database before droping it.
      ed3a57fe
    • Guilhem Bichot's avatar
      Fix for BUG#51215 "log-error partially works with version 5.5": WL 4738... · 7bb4e5b4
      Guilhem Bichot authored
      Fix for BUG#51215 "log-error partially works with version 5.5": WL 4738 (reengineering of server variables)
      had broken the 5.1 behaviour of --log-error: --log-error without argument sent to stderr instead of writing
      to a file with an autogenerated name.
      
      mysql-test/suite/sys_vars/t/log_error_func.test:
        test that error log is created and shown in SHOW VARIABLES.
        Interestingly the error log's path is apparently relative if --log-error=argument is used, but
        may be absolute or relative if --log-error(no argument) is used (because then the path is derived from
        that of pidfile_name, which can be absolute or relative, depending on if autogenerated or not).
      mysql-test/suite/sys_vars/t/log_error_func2.test:
        test that error log is created and shown in SHOW VARIABLES
      mysql-test/suite/sys_vars/t/log_error_func3.test:
        test that error log is empty in SHOW VARIABLES
      sql/mysql_priv.h:
        id for option --log-error
      sql/mysqld.cc:
        No --log-error means "write errors to stderr", whereas --log-error
        without argument means "write errors to a file". So we cannot use the default logic
        of class sys_var_charptr, which treats "option not used" the same as "option used
        without argument" and uses the same default for both. We need to catch "option used",
        in mysqld_get_one_option(), and then "without argument". Setting to "" makes sure
        that init_server_components() will create the log, with an autogenerated name.
      sql/sys_vars.cc:
        need to give the option a numeric id so that we can catch it in mysqld_get_one_option()
      7bb4e5b4
    • Alexander Nozdrin's avatar
    • Alexander Barkov's avatar
      Fixing non-determenistic results. · 56dc1bd2
      Alexander Barkov authored
      56dc1bd2
    • Marc Alff's avatar
      Bug#51738 Unit test pfs_instr-t crashes · 01b19dbb
      Marc Alff authored
      The unit test pfs_instr-t:
      - generates a very long (10,000) bytes file name
      - calls find_or_create_file.
      
      This leads to a buffer overflow in mysys in my_realpath(),
      because my_realpath and mysys file APIs in general do not
      test for input parameters: mysys assumes every file name
      is less that FN_REFLEN in length.
      
      Calling find_or_create_file with a very long file name is likely
      to happen when instrumenting third party code that does not use mysys,
      so this test is legitimate.
      
      The fix is to make find_or_create_file in the performance schema
      more robust in this case.
      01b19dbb
    • Marc Alff's avatar
      Bug#51741 Unit test pfs-t failing in mysql-next-mr-bugfixing · 18884b02
      Marc Alff authored
      The root cause of the failure is that when
      Bug#51447 performance schema evil twin files
      was fixed, instrumented file names got normalized.
      
      The pfs-t unit test depends on this file normalization,
      but it was not updated.
      
      This fix aligns pfs-t.cc lookup_file_by_name()
      with the logic in pfs_instr.cc find_or_create_file().
      18884b02