1. 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
  2. 09 Jul, 2010 10 commits
  3. 08 Jul, 2010 2 commits
  4. 07 Jul, 2010 1 commit
    • 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
  5. 06 Jul, 2010 2 commits
  6. 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
  7. 01 Jul, 2010 1 commit
  8. 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
  9. 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
  10. 03 Jul, 2010 1 commit
  11. 02 Jul, 2010 5 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
    • Georgi Kodinov's avatar
      merge · 5b7d130a
      Georgi Kodinov authored
      5b7d130a
    • Georgi Kodinov's avatar
      merge · 51870d25
      Georgi Kodinov authored
      51870d25
  12. 01 Jul, 2010 2 commits
    • Alexey Kopytov's avatar
      Automerge. · 988dc230
      Alexey Kopytov authored
      988dc230
    • Alexey Kopytov's avatar
      Bug#54667: Unnecessary signal handler redefinition · ac89d926
      Alexey Kopytov authored
      POSIX requires that a signal handler defined with sigaction()
      is not reset on delivering a signal unless SA_NODEFER or
      SA_RESETHAND is set. It is therefore unnecessary to redefine
      the handler on signal delivery on platforms where sigaction()
      is used without those flags.
      ac89d926
  13. 30 Jun, 2010 2 commits
    • Sergey Glukhov's avatar
      Bug#51431 Wrong sort order after import of dump file · a6220d82
      Sergey Glukhov authored
      The problem is that QUICK_SELECT_DESC behaviour depends
      on used_key_parts value which can be bigger than selected
      best_key_parts value if an engine supports clustered key.
      But used_key_parts is overwritten with best_key_parts
      value that prevents from correct selection of index
      access method. The fix is to preserve used_key_parts
      value for further use in QUICK_SELECT_DESC.
      a6220d82
    • Staale Smedseng's avatar
      Bug #53899 Wrong mysql_stmt_errno() after connection loss with · 3b3983a4
      Staale Smedseng authored
      automatic reconnect
      
      A client with automatic reconnect enabled will see the error
      message "Lost connection to MySQL server during query" if the
      connection is lost between mysql_stmt_prepare() and
      mysql_stmt_execute(). The mysql_stmt_errno() number, however,
      is 0 -- not the corresponding value 2013.
      
      This patch checks for the case where the prepared statement
      has been pruned due to a connection loss (i.e., stmt->mysql
      has been set to NULL) during a call to cli_advanced_command(),
      and avoids changing the last_errno to the result of the last
      reconnect attempt.
      3b3983a4
  14. 29 Jun, 2010 1 commit
  15. 28 Jun, 2010 3 commits