1. 01 Sep, 2010 1 commit
  2. 31 Aug, 2010 9 commits
    • Alexander Nozdrin's avatar
      b75958e6
    • Alexander Nozdrin's avatar
      Bug#55980 Character sets: supplementary character _bin ordering is wrong · 8da22a75
      Alexander Nozdrin authored
      Problem:
      - ORDER BY for utf8mb4_bin, utf16_bin and utf32_bin returned
        results in a wrong order, because old functions
        (supporting only BMP range) were used to handle these collations.
      - Additionally, utf16_bin did not sort supplementary characters
        between U+D700 and U+E000, as WL#1213 specification specified.
      8da22a75
    • Alexander Nozdrin's avatar
      Bug#27480 (Extend CREATE TEMPORARY TABLES privilege · d2159e37
      Alexander Nozdrin authored
      to allow temp table operations) -- prerequisite patch #3.
      
      Rename open_temporary_table() to open_table_uncached().
      open_temporary_table() will be introduced in following patches
      to open temporary tables for a statement.
      d2159e37
    • Alexander Nozdrin's avatar
      Remove check_merge_table_access(). · 53e566a4
      Alexander Nozdrin authored
      check_merge_table_access() used to do two things:
        - set proper database for every merge table child;
        - check SELECT | UPDATE | DELETE for merge table children.
      
      Setting database is not needed anymore, since it's done
      on the parsing stage.
      
      Thus, check_merge_table_access() can be removed;
      needed privileges can be checked using check_table_access().
      53e566a4
    • Alexander Nozdrin's avatar
      Polish check_grant(): name TABLE_LIST instance "tl", not "table". · 6b9371bd
      Alexander Nozdrin authored
      This allows to avoid mixing it up with pointer to TABLE object
      which will be introduced to this function in one of upcoming
      patches.
      6b9371bd
    • Alexander Nozdrin's avatar
      Remove unused enum (enum open_table_mode). · 1f1eba3c
      Alexander Nozdrin authored
      It was added by mistake during backport from 6.0.
      1f1eba3c
    • Alexander Nozdrin's avatar
      Bug#27480 (Extend CREATE TEMPORARY TABLES privilege · 2e462c8f
      Alexander Nozdrin authored
      to allow temp table operations) -- prerequisite patch #2.
      
      Introduce a new form of find_temporary_table() function:
      find_temporary_table() by a table key. It will be used
      in further patches.
      
      Replace find_temporary_table(table_list->db, table_list->name)
      by more appropiate find_temporary_table(table_list) across
      the codebase.
      2e462c8f
    • Alexander Nozdrin's avatar
      Fix TABLE::init() comment. · a92ca267
      Alexander Nozdrin authored
      a92ca267
    • Dmitry Lenev's avatar
      Bug #56137 "Assertion `thd->lock == 0' failed on upgrading · 26bc3b34
      Dmitry Lenev authored
      from 5.1.50 to 5.5.6".
      
      Debug builds of the server aborted due to an assertion
      failure when DROP DATABASE statement was run on an
      installation which had outdated or corrupt mysql.proc table.
      Particularly this affected the mysql_upgrade tool which is
      run as part of 5.1 to 5.5 upgrade.
      
      The problem was that sp_drop_db_routines(), which was invoked
      during dropping of the database, could have returned without
      closing and unlocking mysql.proc table in cases when this
      table was not up-to-date with the current server. As a result
      further attempt to open and lock the mysql.event table, which
      was necessary to complete dropping of the database, ended up
      with an assert.
      
      This patch solves this problem by ensuring that
      sp_drop_db_routines() always closes mysql.proc table and
      releases metadata locks on it. This is achieved by changing
      open_proc_table_for_update() function to close tables and
      release metadata locks acquired by it in case of failure.
      This step also makes behavior of the latter function
      consistent with behavior of open_proc_table_for_read()/
      open_and_lock_tables().
      
      
      Test case for this bug was added to sp-destruct.test.
      26bc3b34
  3. 30 Aug, 2010 2 commits
  4. 28 Aug, 2010 1 commit
  5. 27 Aug, 2010 4 commits
  6. 26 Aug, 2010 8 commits
    • Marc Alff's avatar
      local merge · fe3221d6
      Marc Alff authored
      fe3221d6
    • Christopher Powers's avatar
      Bug# 53874 "SETUP_INSTRUMENTS.TIMED='NO' should not change TIMER_WAIT · f84adb9e
      Christopher Powers authored
      Handle combined instrument states of ENABLED and/or TIMED:
      
      ENABLED TIMED
      1 1 Aggregate stats, increment counter
      1 0 Increment counter
      0 1 Do nothing
      0 0 Do nothing 
      f84adb9e
    • Marc Alff's avatar
      local merge · 81cdce4d
      Marc Alff authored
      81cdce4d
    • Marc Alff's avatar
      Implemented code review comments · 6d59a131
      Marc Alff authored
      6d59a131
    • Alexander Barkov's avatar
      Bug#42511 mysqld: ctype-ucs2.c:2044: my_strnncollsp_utf32: Assertion (tlen % 4) == 0' fai · 3509fecf
      Alexander Barkov authored
      Problem: trailing spaces were stripped using 8-bit code,
      so the truncation result length was incorrect, which led
      to an assertion failure.
      Fix: using multi-byte safe code.
      3509fecf
    • Jon Olav Hauglid's avatar
      Bug #44171 KILL ALTER EVENT can crash the server · bbd7277f
      Jon Olav Hauglid authored
      This assert could be triggered if ALTER EVENT failed to load the
      event after altering it. Failing to load the event could for 
      example happen because of KILL QUERY.
      
      The assert tested that the result of a failed load_named_event()
      was OP_LOAD_ERROR. However since load_named_event() returns bool,
      this assert did not make any sense. This patch therefore removes
      the assert, fixing the problem. The patch also removes 
      enum_events_error_code since it was unused.
      
      No test case added. The bug fix is trivial and this bug was
      easily detected by RQG tests. Further, adding a MTR test case
      for this bug would require adding sync points to make the
      test case repeatable.
      bbd7277f
    • Jon Olav Hauglid's avatar
      17b36879
    • Marc Alff's avatar
      Bug#55873 short startup options do not work in 5.5 · 4c2de881
      Marc Alff authored
      Before this fix, the server did not recognize 'short' (as in -a)
      options but only 'long' (as in --ansi) options
      in the startup command line, due to earlier changes in 5.5
      introduced for the performance schema.
      
      The root cause is that handle_options() did not honor the
      my_getopt_skip_unknown flag when parsing 'short' options.
      
      The fix changes handle_options(), so that my_getopt_skip_unknown is
      honored in all cases.
      
      Note that there are limitations to this,
      see the added doxygen documentation in handle_options().
      
      The current usage of handle_options() by the server to
      parse early performance schema options fits within the limitations.
      This has been enforced by an assert for PARSE_EARLY options, for safety.
      4c2de881
  7. 25 Aug, 2010 10 commits
  8. 24 Aug, 2010 5 commits