1. 29 Aug, 2012 3 commits
  2. 28 Aug, 2012 1 commit
  3. 24 Aug, 2012 1 commit
  4. 25 Aug, 2012 1 commit
    • unknown's avatar
      fix for MDEV-367 · 5ef51722
      unknown authored
      The problem was that was_null and null_value variables was reset in each reexecution of IN subquery, but engine rerun only for non-constant subqueries.
      
      Fixed checking constant in Item_equal sort.
      Fix constant reporting in Item_subselect.
      5ef51722
  5. 24 Aug, 2012 14 commits
  6. 23 Aug, 2012 1 commit
  7. 22 Aug, 2012 5 commits
  8. 21 Aug, 2012 1 commit
  9. 14 Aug, 2012 2 commits
    • Igor Babaev's avatar
    • Igor Babaev's avatar
      Fixed bug mdev-449. · 3063c47d
      Igor Babaev authored
      The bug could caused a crash when the server executed a query with
      ORDER by and sort_buffer_size was set to a small enough number.
      It happened because the small sort buffer did not allow to allocate
      all merge buffers in it.
      Made sure that the allocated sort buffer would be big enough
      to contain all possible merge buffers.  
      3063c47d
  10. 01 Aug, 2012 1 commit
    • Elena Stepanova's avatar
      MDEV-369 (Mismatches in MySQL engines test suite) · 327e4c93
      Elena Stepanova authored
      Following reasons caused mismatches:
        - different handling of invalid values;
        - different CAST results with fractional seconds;
        - microseconds support in MariaDB;
        - different algorithm of comparing temporal values;
        - differences in error and warning texts and codes;
        - different approach to truncating datetime values to time;
        - additional collations;
        - different record order for queries without ORDER BY;
        - MySQL bug#66034.
      More details in MDEV-369 comments.
      327e4c93
  11. 30 Jul, 2012 1 commit
    • Elena Stepanova's avatar
      MDEV-369 (Mismatches in MySQL engines test suite) · 244acf7a
      Elena Stepanova authored
      Following reasons caused mismatches:
        - different handling of invalid values;
        - different CAST results with fractional seconds;
        - microseconds support in MariaDB;
        - different algorithm of comparing temporal values;
        - differences in error and warning texts and codes;
        - different approach to truncating datetime values to time;
        - additional collations;
        - different record order for queries without ORDER BY;
        - MySQL bug#66034.
      More details in MDEV-369 comments.
      244acf7a
  12. 26 Jul, 2012 1 commit
  13. 18 Jul, 2012 1 commit
    • Sergey Petrunya's avatar
      MDEV-398: Sergv related to spacial queries · 78b83425
      Sergey Petrunya authored
      - index_merge/intersection is unable to work on GIS indexes, because:
        1. index scans have no Rowid-Ordered-Retrieval property
        2. When one does an index-only read over a GIS index, they do not 
           get the index tuple, because index only contains bounding box of the geometry.
           This is why key_copy() call crashed.
      This patch fixes #1, which makes the problem go away. Theoretically, it would 
      be nice to check #2, too, but SE API semantics is not sufficiently precise to do it.
      78b83425
  14. 12 Jul, 2012 1 commit
  15. 10 Jul, 2012 6 commits
    • unknown's avatar
      No commit message · ed568c27
      unknown authored
      No commit message
      ed568c27
    • Andrei Elkin's avatar
      merge from 5.1 repo. · 6d850e4a
      Andrei Elkin authored
      6d850e4a
    • Andrei Elkin's avatar
      merge from 5.1 repo. · 01c536f1
      Andrei Elkin authored
      01c536f1
    • Bjorn Munch's avatar
      98fe47b2
    • Andrei Elkin's avatar
      merge from 5.1 repo. · 1f91cb18
      Andrei Elkin authored
      1f91cb18
    • Sujatha Sivakumar's avatar
      BUG#11762670:MY_B_WRITE RETURN VALUE IGNORED · 0577d729
      Sujatha Sivakumar authored
      Problem:
      =======
      The return value from my_b_write is ignored by: `my_b_write_quoted',
      `my_b_write_bit',`Query_log_event::print_query_header'
      
      Most callers of `my_b_printf' ignore the return value. `log_event.cc' 
      has many calls to it. 
      
      Analysis:
      ========
      `my_b_write' is used to write data into a file. If the write fails it
      sets appropriate error number and error message through my_error()
      function call and sets the IO_CACHE::error == -1.
      `my_b_printf' function is also used to write data into a file, it
      internally invokes my_b_write to do the write operation. Upon
      success it returns number of characters written to file and on error
      it returns -1 and sets the error through my_error() and also sets
      IO_CACHE::error == -1.  Most of the event specific print functions
      for example `Create_file_log_event::print', `Execute_load_log_event::print'
      etc are the ones which make several calls to the above two functions and
      they do not check for the return value after the 'print' call. All the above 
      mentioned abuse cases deal with the client side.
      
      Fix:
      ===
      As part of bug fix a check for IO_CACHE::error == -1 has been added at 
      a very high level after the call to the 'print' function.  There are 
      few more places where the return value of "my_b_write" is ignored
      those are mentioned below.
      
      +++ mysys/mf_iocache2.c    2012-06-04 07:03:15 +0000
      @@ -430,7 +430,8 @@
                 memset(buffz, '0', minimum_width - length2);
               else
                 memset(buffz, ' ', minimum_width - length2);
      -        my_b_write(info, buffz, minimum_width - length2);
      
      +++ sql/log.cc	2012-06-08 09:04:46 +0000
      @@ -2388,7 +2388,12 @@
           {
             end= strxmov(buff, "# administrator command: ", NullS);
             buff_len= (ulong) (end - buff);
      -      my_b_write(&log_file, (uchar*) buff, buff_len);
      
      At these places appropriate return value handlers have been added.
      
      client/mysqlbinlog.cc:
        check for IO_CACHE::error == -1 has been added after the call to
        the event specific print functions
      mysys/mf_iocache2.c:
        Added handler to check the written value of `my_b_write'
      sql/log.cc:
        Added handler to check the written value of `my_b_write'
      sql/log_event.cc:
        Added error simulation statements in `Create_file_log_event::print`
        and `Execute_load_query_log_event::print'
      sql/rpl_utility.h:
        Removed the extra ';'
      0577d729