1. 10 Jan, 2008 1 commit
    • unknown's avatar
      filesort.cc: · e90add96
      unknown authored
        Bug#33675: Usage of an uninitialized memory by filesort in a subquery caused
        server crash.
        Free smaller buffer before allocating bigger one.
      
      
      sql/filesort.cc:
        Bug#33675: Usage of an uninitialized memory by filesort in a subquery caused
        server crash.
        Free smaller buffer before allocating bigger one.
      e90add96
  2. 09 Jan, 2008 3 commits
  3. 08 Jan, 2008 1 commit
    • unknown's avatar
      Bug#33675: Usage of an uninitialized memory by filesort in a subquery caused · 89cccc7c
      unknown authored
      server crash.
      
      The filesort implementation has an optimization for subquery execution which
      consists of reusing previously allocated buffers. In particular the call to
      the read_buffpek_from_file function might be skipped when a big enough buffer
      for buffer descriptors (buffpeks) is already allocated. Beside allocating
      memory for buffpeks this function fills allocated buffer with data read from
      disk. Skipping it might led to using an arbitrary memory as fields' data and
      finally to a crash.
      
      Now the read_buffpek_from_file function is always called. It allocates
      new buffer only when necessary, but always fill it with correct data.
      
      
      sql/filesort.cc:
        Bug#33675: Usage of an uninitialized memory by filesort in a subquery caused
        server crash.Now the read_buffpek_from_file function is always called. It allocates
        new buffer only when necessary, but always fill it with correct data.
      mysql-test/r/subselect.result:
        Added a test case for the bug#33675: Usage of an uninitialized memory by
        filesort in a subquery caused server crash.
      mysql-test/t/subselect.test:
        Added a test case for the bug#33675: Usage of an uninitialized memory by
        filesort in a subquery caused server crash.
      89cccc7c
  4. 07 Jan, 2008 1 commit
  5. 21 Dec, 2007 1 commit
    • unknown's avatar
      Bug #33256: CREATE ... SELECT creates obsolete table · cb3cfe74
      unknown authored
       w/ Field_date instead of Field_newdate
        
      Field_date was still used in temp table creation.
      Fixed by using Field_newdate consistently throughout the server
      except when reading tables defined with older MySQL version.
      No test suite is possible because both Field_date and Field_newdate
      return the same values in all the metadata calls. 
      
      
      mysql-test/r/type_decimal.result:
        Bug #33256: removed redundant warnings
      sql/field.h:
        Bug #33256: Add a constructor similar to Field_date::Field_date()
      sql/item.cc:
        Bug #33256: Use Field_newdate instead of Field_date 
        for all temp tables and CREATE .. SELECT
      sql/item_sum.cc:
        Bug #33256: Use Field_newdate instead of Field_date 
        for all temp tables and CREATE .. SELECT
      sql/item_timefunc.cc:
        Bug #33256: Use Field_newdate instead of Field_date 
        for all temp tables and CREATE .. SELECT
      sql/item_timefunc.h:
        Bug #33256: Use Field_newdate instead of Field_date 
        for all temp tables and CREATE .. SELECT
      cb3cfe74
  6. 20 Dec, 2007 4 commits
  7. 19 Dec, 2007 1 commit
    • unknown's avatar
      Merge mhansson@bk-internal:/home/bk/mysql-5.0-opt · 515a4649
      unknown authored
      into  linux-st28.site:/home/martin/mysql/src/bug32848/my50-bug32848
      
      
      sql/field.cc:
        Auto merged
      sql/field.h:
        Auto merged
      sql/item.cc:
        Auto merged
      sql/sql_select.cc:
        Auto merged
      mysql-test/r/union.result:
        Bug#32848: Manual merge
      mysql-test/t/union.test:
        Bug#32848: Manual merge
      515a4649
  8. 18 Dec, 2007 1 commit
  9. 17 Dec, 2007 9 commits
  10. 15 Dec, 2007 4 commits
  11. 14 Dec, 2007 2 commits
    • unknown's avatar
      Fixed bug #27848. · e8d00ea7
      unknown authored
      In a union without braces, the order by at the end is applied to the 
      overall union. It therefore should not interfere with the individual
      select parts of the union.
      
      Fixed by changing our parser rules appropriately.
      
      
      mysql-test/r/union.result:
        Added a test case for bug #27848.
      mysql-test/t/union.test:
        Added a test case for bug #27848.
      e8d00ea7
    • unknown's avatar
      Bug#32798: DISTINCT in GROUP_CONCAT clause fails when ordering by a column · 94962b96
      unknown authored
      with null values
      
      For queries containing GROUP_CONCAT(DISTINCT fields ORDER BY fields), there 
      was a limitation that the DISTINCT fields had to be the same as ORDER BY 
      fields, owing to the fact that one single sorted tree was used for keeping 
      track of tuples, ordering and uniqueness. Fixed by introducing a second 
      structure to handle uniqueness so that the original structure has only to 
      order the result.
      
      
      mysql-test/r/func_gconcat.result:
        Bug#32798:
        - Wrong test result turned correct after fix.
        - Correct test result
      mysql-test/t/func_gconcat.test:
        Bug#32798: Test case
      sql/item_sum.cc:
        Bug#32798: Implementation of fix. Dead code removal.
        
        - removed comment describing this bug
        - replaced body of function group_concat_key_cmp_with_distinct
        - removed function group_concat_key_cmp_with_distinct_and_order
        - Added a Unique object to maintain uniqueness of values.
      sql/item_sum.h:
        Bug#32798: Declarations and comments.
      94962b96
  12. 13 Dec, 2007 9 commits
    • unknown's avatar
      additional fix · 25119578
      unknown authored
      25119578
    • unknown's avatar
      valgrind error fix · f104ab2d
      unknown authored
      f104ab2d
    • unknown's avatar
      after merge fix · 72bdad35
      unknown authored
      72bdad35
    • unknown's avatar
      Merge mysql.com:/home/gluh/MySQL/Merge/4.1-opt · 74edf075
      unknown authored
      into  mysql.com:/home/gluh/MySQL/Merge/5.0-opt
      
      
      include/mysql_com.h:
        Auto merged
      myisam/mi_check.c:
        Auto merged
      74edf075
    • unknown's avatar
      Merge mysql.com:/home/gluh/MySQL/Merge/5.0 · 16e05a49
      unknown authored
      into  mysql.com:/home/gluh/MySQL/Merge/5.0-opt
      
      
      client/mysql.cc:
        Auto merged
      client/mysqltest.c:
        Auto merged
      include/mysql_com.h:
        Auto merged
      libmysql/CMakeLists.txt:
        Auto merged
      myisam/mi_check.c:
        Auto merged
      mysql-test/r/delayed.result:
        Auto merged
      mysql-test/r/innodb.result:
        Auto merged
      mysql-test/r/myisam.result:
        Auto merged
      mysql-test/r/ps.result:
        Auto merged
      mysql-test/t/merge.test:
        Auto merged
      mysql-test/t/myisam.test:
        Auto merged
      mysql-test/t/subselect.test:
        Auto merged
      mysql-test/t/type_datetime.test:
        Auto merged
      mysql-test/t/variables.test:
        Auto merged
      sql/field.cc:
        Auto merged
      sql/ha_myisam.cc:
        Auto merged
      sql/item.cc:
        Auto merged
      sql/item.h:
        Auto merged
      sql/item_cmpfunc.cc:
        Auto merged
      sql/item_func.cc:
        Auto merged
      sql/item_func.h:
        Auto merged
      sql/mysql_priv.h:
        Auto merged
      sql/mysqld.cc:
        Auto merged
      sql/opt_range.cc:
        Auto merged
      sql/set_var.cc:
        Auto merged
      sql/set_var.h:
        Auto merged
      sql/sql_class.h:
        Auto merged
      sql/sql_select.cc:
        Auto merged
      sql/sql_table.cc:
        Auto merged
      sql/sql_yacc.yy:
        Auto merged
      mysql-test/r/func_misc.result:
        manual merge
      mysql-test/r/innodb_mysql.result:
        manual merge
      mysql-test/t/func_misc.test:
        manual merge
      mysql-test/t/innodb_mysql.test:
        manual merge
      sql/sql_insert.cc:
        manual merge
      16e05a49
    • unknown's avatar
      Merge spetrunia@bk-internal.mysql.com:/home/bk/mysql-5.0-opt · c79da1d2
      unknown authored
      into  mysql.com:/home/psergey/mysql-5.0-bug32198
      
      c79da1d2
    • unknown's avatar
      BUG#32198: Comparison of DATE with DATETIME still not using indexes correctly · 4c56d1af
      unknown authored
      - Make conditions like "date_col $CMP$ 'datetime-const'" range-sargable
      
      
      mysql-test/r/range.result:
        BUG#32198: Comparison of DATE with DATETIME still not using indexes correctly
        - Testcase
      mysql-test/t/range.test:
        BUG#32198: Comparison of DATE with DATETIME still not using indexes correctly
        - Testcase
      sql/field.cc:
        BUG#32198: Comparison of DATE with DATETIME still not using indexes correctly
        - Added comments
      4c56d1af
    • unknown's avatar
      Merge mysql.com:/home/gluh/MySQL/Merge/4.1 · 06122a05
      unknown authored
      into  mysql.com:/home/gluh/MySQL/Merge/4.1-opt
      
      
      include/mysql_com.h:
        Auto merged
      myisam/mi_check.c:
        Auto merged
      06122a05
    • unknown's avatar
      Bug #32858: Erro: "Incorrect usage of UNION and INTO" does not take · e1df0fbc
      unknown authored
      subselects into account
      
      It is forbidden to use the SELECT INTO construction inside UNION statements
      unless on the last SELECT of the union. The parser records whether it 
      has seen INTO or not when parsing a UNION statement. But if the INTO was
      legally used in an outer query, an error is thrown if UNION is seen in a
      subquery. Fixed in 5.0 by remembering the nesting level of INTO tokens and 
      mitigate the error unless it collides with the UNION.
      
      
      mysql-test/r/union.result:
        Bug#32858: Test result
      mysql-test/t/union.test:
        Bug#32858: Test case
      sql/sql_class.cc:
        Bug#32858: Initializing new member
      sql/sql_class.h:
        Bug#32858: Added property nest_level to select_result class.
      sql/sql_yacc.yy:
        Bug#32858: The fix.
      e1df0fbc
  13. 12 Dec, 2007 1 commit
  14. 11 Dec, 2007 2 commits
    • unknown's avatar
      Merge stella.local:/home2/mydev/mysql-5.0-amain · 69113376
      unknown authored
      into  stella.local:/home2/mydev/mysql-5.0-axmrg
      
      69113376
    • unknown's avatar
      Bug#32848: Data type conversion bug in union subselects in MySQL 5.0.38 · 8870d015
      unknown authored
      There were two problems when inferring the correct field types resulting from
      UNION queries.
      - If the type is NULL for all corresponding fields in the UNION, the resulting 
        type would be NULL, while the type is BINARY(0) if there is just a single 
        SELECT NULL.
      - If one SELECT in the UNION uses a subselect, a temporary table is created
        to represent the subselect, and the result type defaults to a STRING type,
        hiding the fact that the type was unknown(just a NULL value).
      Fixed by remembering whenever a field was created from a NULL value and pass
      type NULL to the type coercion if that is the case, and creating a string field
      as result of UNION only if the type would otherwise be NULL.
      
      
      mysql-test/r/union.result:
        Bug#32848: Test result
      mysql-test/t/union.test:
        Bug#32848: Test case
      sql/field.cc:
        Bug#32848: Initialization of new field
      sql/field.h:
        Bug#32848: New member to record when a field was created from a NULL value.
      sql/item.cc:
        Bug#32848: 
        A field created from a NULL value will submit NULL as type to the 
        type coercion procedure.
        If Item_type_holder has not inferred the correct type after processing all
        SELECTs in a UNION, a string field is created.
      sql/sql_select.cc:
        Bug#32848: Recording when a field is created from a NULL value.
      8870d015