1. 15 Jul, 2010 4 commits
  2. 14 Jul, 2010 13 commits
    • Davi Arnaut's avatar
      67771595
    • Davi Arnaut's avatar
      Bug#42733: Type-punning warnings when compiling MySQL -- · 3f1dc0f0
      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.
      
      include/my_compiler.h:
        Drop aligned attribute support from Sun Studio C++ compiler
        as its not clear exactly which version of it supports the
        attribute.
      3f1dc0f0
    • Davi Arnaut's avatar
      41c62a2a
    • Davi Arnaut's avatar
      34d583be
    • Davi Arnaut's avatar
      Bug#48327: Some crashes specific to FreeBSD ("embedded") · eca410d5
      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.
      eca410d5
    • Davi Arnaut's avatar
      Bug#42733: Type-punning warnings when compiling MySQL -- · ccea4c3d
      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.
      
      include/Makefile.am:
        Add new header.
      include/my_compiler.h:
        Add new header.
      include/my_global.h:
        Remove now-unnecessary macros.
      sql/spatial.cc:
        Make object creation functions return the object whose type
        was dynamically changed by the new placement.
        
        Move static method from the header in order to avoid having
        to access a forward declaration.
      sql/spatial.h:
        Object creation callbacks now take a array of chars as the
        storage area.
        
        Move create_by_typeid to a source file as to not access the
        forward declaration of Geometry_buffer.
        
        Ensure that Geometry_buffer is properly aligned.
      sql/sql_show.cc:
        Use newly added aligned storage helper.
      ccea4c3d
    • Georgi Kodinov's avatar
      merge · f4025aa8
      Georgi Kodinov authored
      f4025aa8
    • Georgi Kodinov's avatar
      Bug #51876: crash/memory underrun when loading data with ucs2 · 4c519b48
      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). 
      4c519b48
    • Georgi Kodinov's avatar
      merge · bdfcb8bc
      Georgi Kodinov authored
      bdfcb8bc
    • Georgi Kodinov's avatar
      merge · 209c7723
      Georgi Kodinov authored
      209c7723
    • Georgi Kodinov's avatar
      Bug #54004 : mysql_secure_installation identifies "local host" incorrectly · 90c451e8
      Georgi Kodinov authored
      The removal of non-local root users is overzealous in
      mysql_secure_installation. (Bug #54004)
      90c451e8
    • Georgi Kodinov's avatar
      merge · 4c9aa5b4
      Georgi Kodinov authored
      4c9aa5b4
    • Georgi Kodinov's avatar
      Bug #53493 : add_to_status does not handle the longlong fields in STATUS_VAR · 19f1ace1
      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.
      19f1ace1
  3. 12 Jul, 2010 1 commit
    • Davi Arnaut's avatar
      Add the cmake option MYSQL_MAINTAINER_MODE which is equivalent · ab9d31cc
      Davi Arnaut authored
      to the autotools option mysql-maintainer-mode. This option is
      intended to set a few flags that should be activated by anyone
      doing MySQL development, regardless of the build type. Also, the
      flags are only set by the very end of the platform checks as
      to not disturb fragile checks.
      ab9d31cc
  4. 09 Jul, 2010 15 commits
  5. 08 Jul, 2010 3 commits
    • Mattias Jonsson's avatar
      Bug#52455: Subpar INSERT ON DUPLICATE KEY UPDATE performance with many partitions · 78963439
      Mattias Jonsson authored
      The handler function for reading one row from a specific index
      was not optimized in the partitioning handler since it
      used the default implementation.
      
      No test case since it is performance only, verified by hand.
      
      sql/ha_partition.cc:
        Implemented a optimized version of index_read_idx_map
        for the case when find flag == HA_READ_KEY_EXACT,
        which is the common case.
      sql/ha_partition.h:
        Declared ha_partition::index_read_idx_map
      78963439
    • unknown's avatar
      Auto merge · d7b49db8
      unknown authored
      d7b49db8
    • unknown's avatar
      Postfix bug#48321 · 7edf2a80
      unknown authored
      Fix the memory leak
      7edf2a80
  6. 07 Jul, 2010 3 commits
    • Vasil Dimov's avatar
      Merge the fix for Bug#49238 from SVN · 2dc8e3da
      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().
        
        
        ------------------------------------------------------------------------
      2dc8e3da
    • Georgi Kodinov's avatar
      merge · 2bd0dd81
      Georgi Kodinov authored
      2bd0dd81
    • Georgi Kodinov's avatar
      Addendum to the fix for bug #53095 (failing information_schema.test on windows) · 7bd0c00c
      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.
      7bd0c00c
  7. 06 Jul, 2010 1 commit