1. 16 Jul, 2010 3 commits
  2. 23 Jun, 2010 1 commit
  3. 15 Jul, 2010 3 commits
    • Alexey Kopytov's avatar
      Manual merge. · 08600155
      Alexey Kopytov authored
      08600155
    • Alexey Kopytov's avatar
      Null merge. · b5f79c39
      Alexey Kopytov authored
      b5f79c39
    • Alexey Kopytov's avatar
      Backport of the fix for bug#25421 to 5.0. · a42108c2
      Alexey Kopytov authored
      Calculating the estimated number of records for a range scan
      may take a significant time, and it was impossible for a user
      to interrupt that process by killing the connection or the
      query.
      
      Fixed by checking the thread's 'killed' status in
      check_quick_keys() and interrupting the calculation process if
      it is set to a non-zero value.
      a42108c2
  4. 14 Jul, 2010 6 commits
    • Davi Arnaut's avatar
      Bug#42733: Type-punning warnings when compiling MySQL -- · d5e8508f
      Davi Arnaut authored
                 strict aliasing violations.
      
      Post-merge fix: include my_compiler.h before my_attribute.h
      as the latter will undef __attribute__ if the compiler is not
      GCC. Based on the compiler version, in my_compiler.h we know
      for sure whether the aligned attribute is supported. Furthermore,
      undefining attribute might cause bugs if some system header
      uses it.
      d5e8508f
    • Davi Arnaut's avatar
      Bug#42733: Type-punning warnings when compiling MySQL -- · 21f63caf
      Davi Arnaut authored
                 strict aliasing violations.
      
      Another rather noisy violation of strict aliasing rules
      is the spatial code which makes use of stack-based memory
      (of type Geometry_buffer) to provide placement for Geometry
      objects. Although a placement new is allowed to dynamically
      change the type of a object, the object returned by the
      new placement was being ignored and the original stack-based
      object was being casted to the new type, thus violating strict
      aliasing rules.
      
      The solution is to reorganize the code so that the object
      returned by the new placement is used instead of casting the
      original object. Also, to ensure that the stack-based object
      is properly aligned with respect to the objects it provides
      placement for, a set of compiler-dependent macros and types
      are introduced so that the alignment of objects can be inquired
      and specified.
      21f63caf
    • Davi Arnaut's avatar
      Bug#48327: Some crashes specific to FreeBSD ("embedded") · dbef812a
      Davi Arnaut authored
      Backport fixes from ndb: Rework the constructors of some static
      object's to not call dbug functions since the constructors will
      be called before main, and consequently, before the dbug library
      is initialized.
      dbef812a
    • Georgi Kodinov's avatar
      Bug #51876: crash/memory underrun when loading data with ucs2 · b4766fc3
      Georgi Kodinov authored
      and reverse() function
            
      3 problems fixed : 
      1. The reported problem : caused by incorrect parsing of 
      the file as ucs data resulting in wrong length of the parsed
      string. Fixed by truncating the invalid trailing bytes 
      (non-complete multibyte characters) when reading from the file
      2. LOAD DATA when reading from a proper UCS2 file wasn't 
      recognizing the new line characters. Fixed by first looking 
      if a byte is a new line (or any other special) character before
      reading it as a part of a multibyte character.
      3. When using user variables to hold the column data in LOAD
      DATA the character set of the user variable was set incorrectly
      to the database charset. Fixed by setting it to the charset
      specified by LOAD DATA (if any). 
      b4766fc3
    • Georgi Kodinov's avatar
      Bug #53493 : add_to_status does not handle the longlong fields in STATUS_VAR · 16a73088
      Georgi Kodinov authored
      bytes_received/bytes_sent are ulonglong so they cannot be handled by the 
      ulong handling code in add_to_status/add_diff_to_status().
      
      Fixed by adding code to handle these two variables in 
      add_to_status()/add_diff_to_status() and making sure they are not a subject
      to the ulong handling code.
      16a73088
    • Georgi Kodinov's avatar
      Bug #54004 : mysql_secure_installation identifies "local host" incorrectly · edf16dbe
      Georgi Kodinov authored
      The removal of non-local root users is overzealous in
      mysql_secure_installation. (Bug #54004)
      edf16dbe
  5. 09 Jul, 2010 10 commits
  6. 08 Jul, 2010 2 commits
  7. 07 Jul, 2010 2 commits
    • Vasil Dimov's avatar
      Merge the fix for Bug#49238 from SVN · 7c6ba7b4
      Vasil Dimov authored
      (without the unrelated whitespace changes):
      
        ------------------------------------------------------------------------
        r7009 | jyang | 2010-04-29 20:44:56 +0300 (Thu, 29 Apr 2010) | 6 lines
        
        branches/5.0: Port fix for bug #49238 (Creating/Dropping a temporary
        table while at 1023 transactions will cause assert) from 5.1 to
        branches/5.1. Separate action for return value DB_TOO_MANY_CONCURRENT_TRXS
        from that of DB_MUST_GET_MORE_FILE_SPACE in row_drop_table_for_mysql().
        
        
        ------------------------------------------------------------------------
      7c6ba7b4
    • Georgi Kodinov's avatar
      Addendum to the fix for bug #53095 (failing information_schema.test on windows) · 28004bd5
      Georgi Kodinov authored
      Since the original fix for this bug lowercases the search pattern it's not a 
      good idea to copy the search pattern to the output instead of the real table 
      name found (since, depending on the case mode these two names may differ in 
      case).
      Fixed the infrmation_schema.test failure by making sure the actual table 
      name of an inoformation schema table is passed instead of the lookup pattern
      even when the pattern doesn't contain wildcards.
      28004bd5
  8. 06 Jul, 2010 2 commits
  9. 05 Jul, 2010 1 commit
    • Davi Arnaut's avatar
      Bug#22320: my_atomic-t unit test fails · 46a3afb3
      Davi Arnaut authored
      The atomic operations implementation on 5.1 has a few problems,
      which might cause tests to abort randomly. Since no code in 5.1
      uses atomic operations, simply remove the code.
      46a3afb3
  10. 02 Jul, 2010 1 commit
  11. 01 Jul, 2010 1 commit
  12. 28 Jun, 2010 1 commit
    • Davi Arnaut's avatar
      Bug#54041: MySQL 5.0.92 fails when tests from Connector/C suite run · 07767edc
      Davi Arnaut authored
      The problem was that a user could supply supply data in chunks
      via the COM_STMT_SEND_LONG_DATA command to prepared statement
      parameter other than of type TEXT or BLOB. This posed a problem
      since other parameter types aren't setup to handle long data,
      which would lead to a crash when attempting to use the supplied
      data.
      
      Given that long data can be supplied at any stage of a prepared
      statement, coupled with the fact that the type of a parameter
      marker might change between consecutive executions, the solution
      is to validate at execution time each parameter marker for which
      a data stream was provided. If the parameter type is not TEXT or
      BLOB (that is, if the type is not able to handle a data stream),
      a error is returned.
      07767edc
  13. 25 Jun, 2010 1 commit
    • Georgi Kodinov's avatar
      Bug #53095: SELECT column_name FROM INFORMATION_SCHEMA.STATISTICS · dd6d026f
      Georgi Kodinov authored
      returns nothing
            
      When looking for table or database names inside INFORMATION_SCHEMA
      we must convert the table and database names to lowercase (just as it's
      done in the rest of the server) when lowercase_table_names is non-zero.
      This will allow us to find the same tables that we would find if there
      is no condition.
      
      Fixed by converting to lower case when extracting the database and 
      table name conditions.
      Test case added.
      dd6d026f
  14. 04 Jul, 2010 2 commits
    • 's avatar
      Postfix for bug#48321 · 363a2ccc
      authored
      Some test cases set ANSI_QUOTES in sql_mode.
      So we have to use single quotes to quote literal strings.
      363a2ccc
    • 's avatar
      The following statements support the CURRENT_USER() where a user is needed. · 42eecc53
      authored
      DROP USER 
      RENAME USER CURRENT_USER() ...
      GRANT ... TO CURRENT_USER()
      REVOKE ... FROM CURRENT_USER()
      ALTER DEFINER = CURRENT_USER() EVENTbut, When these statements are binlogged, CURRENT_USER() just is binlogged
      as 'CURRENT_USER()', it is not expanded to the real user name. When slave 
      executes the log event, 'CURRENT_USER()' is expand to the user of slave 
      SQL thread, but SQL thread's user name always NULL. This breaks the replication.
      
      After this patch, session's user will be written into query log events 
      if these statements call CURREN_USER() or 'ALTER EVENT' does not assign a definer.
      42eecc53
  15. 03 Jul, 2010 1 commit
  16. 02 Jul, 2010 3 commits
    • Davi Arnaut's avatar
      Bug#53445: Build with -Wall and fix warnings that it generates · 082036ac
      Davi Arnaut authored
      If bzero is not available, resort to memset. Also, remove dead
      bzero.c
      082036ac
    • Davi Arnaut's avatar
      Bug#53445: Build with -Wall and fix warnings that it generates · 93fb8bb2
      Davi Arnaut authored
      Apart strict-aliasing warnings, fix the remaining warnings
      generated by GCC 4.4.4 -Wall and -Wextra flags.
      
      One major source of warnings was the in-house function my_bcmp
      which (unconventionally) took pointers to unsigned characters
      as the byte sequences to be compared. Since my_bcmp and bcmp
      are deprecated functions whose only difference with memcmp is
      the return value, every use of the function is replaced with
      memcmp as the special return value wasn't actually being used
      by any caller.
      
      There were also various other warnings, mostly due to type
      mismatches, missing return values, missing prototypes, dead
      code (unreachable) and ignored return values.
      93fb8bb2
    • Georgi Kodinov's avatar
      merge · 6d5b4401
      Georgi Kodinov authored
      6d5b4401