1. 10 Nov, 2007 1 commit
  2. 09 Nov, 2007 1 commit
    • unknown's avatar
      Fix for bug #32202: ORDER BY not working with GROUP BY · 55499d2b
      unknown authored
      The bug is a regression introduced by the fix for bug30596. The problem
      was that in cases when groups in GROUP BY correspond to only one row,
      and there is ORDER BY, the GROUP BY was removed and the ORDER BY
      rewritten to ORDER BY <group_by_columns> without checking if the
      columns in GROUP BY and ORDER BY are compatible. This led to
      incorrect ordering of the result set as it was sorted using the
      GROUP BY columns. Additionaly, the code discarded ASC/DESC modifiers
      from ORDER BY even if its columns were compatible with the GROUP BY
      ones.
      
      This patch fixes the regression by checking if ORDER BY columns form a
      prefix of the GROUP BY ones, and rewriting ORDER BY only in that case,
      preserving the ASC/DESC modifiers. That check is sufficient, since the
      GROUP BY columns contain a unique index.
      
      
      mysql-test/r/group_by.result:
        Added a test case for bug #32202.
      mysql-test/t/group_by.test:
        Added a test case for bug #32202.
      sql/sql_select.cc:
        In cases when groups in GROUP BY correspond to only one row and there
        is ORDER BY, rewrite the query to ORDER BY <group_by_columns> only if
        the columns in ORDER BY and GROUP BY are compatible, i.e. either one
        forms a prefix for another.
      55499d2b
  3. 08 Nov, 2007 2 commits
  4. 07 Nov, 2007 1 commit
    • unknown's avatar
      Fix for bug #32103: optimizer crash when join on int and mediumint with · 0a7a55d1
      unknown authored
      variable in where clause.
      
      Problem: the new_item() method of Item_uint used an incorrect
      constructor. "new Item_uint(name, max_length)" calls
      Item_uint::Item_uint(const char *str_arg, uint length) which assumes the
      first argument to be the string representation of the value, not the
      item's name. This could result in either a server crash or incorrect
      results depending on usage scenarios.
      
      Fixed by using the correct constructor in new_item():
      Item_uint::Item_uint(const char *str_arg, longlong i, uint length).
      
      
      mysql-test/r/select.result:
        Added a test case for bug #32103.
      mysql-test/t/select.test:
        Added a test case for bug #32103.
      sql/item.h:
        Use the correct constructor for Item_uint in Item_uint::new_item().
      0a7a55d1
  5. 05 Nov, 2007 2 commits
  6. 02 Nov, 2007 3 commits
    • unknown's avatar
      5.1-specific changes for bug #26215 after merging the patch from 5.0: · 2048ac02
      unknown authored
      - Added trigger tests back.
      - Fixed test cases to match the extended output format of SHOW CREATE ...
      - Replaced 'gptr' with 'uchar *'.
      
      
      client/mysql.cc:
        Replaced 'gptr' with 'uchar *'.
      mysql-test/r/mysql_comments.result:
        Fixed test cases to match the extended output format of SHOW CREATE ...
        Added trigger tests back.
      mysql-test/t/mysql_comments.sql:
        Added trigger tests back.
      2048ac02
    • unknown's avatar
      Merge polly.(none):/home/kaa/src/opt/bug26215/my50-bug26215 · 62f31fac
      unknown authored
      into  polly.(none):/home/kaa/src/opt/bug26215/my51-bug26215
      
      
      client/mysql.cc:
        Manual merge.
      62f31fac
    • unknown's avatar
      Fix for: · 1daa54d6
      unknown authored
        bug #26215: mysql command line client should not strip comments
                    from SQL statements
      and
        bug #11230: Keeping comments when storing stored procedures
      
      With the introduction of multiline comments support in the command line
      client (mysql) in MySQL 4.1, it became impossible to preserve
      client-side comments within single SQL statements or stored routines.
      This feature was useful for monitoring tools and maintenance.
      
      The patch adds a new option to the command line client
      ('--enable-comments', '-c') which allows to preserve SQL comments and
      send them to the server for single SQL statements, and to keep comments
      in the code for stored procedures / functions / triggers.
      
      The patch is a modification of the contributed patch from bug #11230
      with the following changes:
      - code style changes to conform to the coding guidelines
      - changed is_prefix() to my_strnncoll() to detect the DELIMITER
      command, since the first one is case-sensitive and not charset-aware
      - renamed t/comments-51.* to t/mysql_comments.*
      - removed tests for comments in triggers since 5.0 does not have SHOW
      CREATE TRIGGER (those tests will be added back in 5.1).
      
      The test cases are only for bug #11230. No automated test case for bug
      #26215 is possible due to the test suite deficiencies (though the cases
      from the bug report were tested manually).
      
      
      client/mysql.cc:
        Applied the contributed patch from bug11230 with the following changes:
        - code style changes to conform to the coding guidelines
        - changed is_prefix() to my_strnncoll() to detect the DELIMITER
        command, since the first one is case-sensitive and not charset-aware
        
        The patch adds a new option to the command line client which allows to
        preserve SQL comments and send them to the server to ensure better
        error reporting and to, keep comments in the code for stored procedures
        / functions / triggers.
      mysql-test/r/mysql_comments.result:
        Added test cases for bug11230.
      mysql-test/t/mysql_comments.sql:
        Added test cases for bug11230.
      mysql-test/t/mysql_comments.test:
        Added test cases for bug11230.
      1daa54d6
  7. 21 Oct, 2007 2 commits
    • unknown's avatar
      Merge polly.(none):/home/kaa/src/opt/bug28550/my50-bug28550 · e259d461
      unknown authored
      into  polly.(none):/home/kaa/src/opt/bug28550/my51-bug28550
      
      
      mysql-test/t/func_str.test:
        Auto merged
      sql/item.cc:
        Auto merged
      sql/item.h:
        Auto merged
      sql/item_strfunc.h:
        Auto merged
      mysql-test/r/func_str.result:
        Manual merge.
      e259d461
    • unknown's avatar
      Bug #28550 "Potential bugs related to the return type of the CHAR function". · 04311fab
      unknown authored
        
      Since, as of MySQL 5.0.15, CHAR() arguments larger than 255 are converted into multiple result bytes, a single CHAR() argument can now take up to 4 bytes. This patch fixes Item_func_char::fix_length_and_dec() to take this into account.
        
      This patch also fixes a regression introduced by the patch for bug21513. As now we do not always have the 'name' member of Item set for Item_hex_string and Item_bin_string, an own print() method has been added to Item_hex_string so that it could correctly be printed by Item_func::print_args().
      
      
      mysql-test/r/func_str.result:
        Import patch bug288550.patch
      mysql-test/t/func_str.test:
        Import patch bug288550.patch
      sql/item.cc:
        Import patch bug288550.patch
      sql/item.h:
        Import patch bug288550.patch
      sql/item_strfunc.h:
        Import patch bug288550.patch
      04311fab
  8. 17 Oct, 2007 3 commits
    • unknown's avatar
      Bug#31381 Error in retrieving Data from INFORMATION_SCHEMA · 666efa1c
      unknown authored
      move 'table_collation' field filling outside of if(file) condition
      because this field has 'OPEN_FRM_ONLY' attribute
      
      
      mysql-test/r/information_schema.result:
        test result
      mysql-test/t/information_schema.test:
        test case
      sql/sql_show.cc:
        move 'table_collation' field filling outside of if(file) condition
        because this field has 'OPEN_FRM_ONLY' attribute
      666efa1c
    • unknown's avatar
      Merge mysql.com:/home/gluh/MySQL/Merge/5.0-opt · 9f75b3cf
      unknown authored
      into  mysql.com:/home/gluh/MySQL/Merge/5.1-opt
      
      
      mysql-test/suite/funcs_1/r/innodb__datadict.result:
        manual merge
      mysql-test/suite/funcs_1/r/myisam__datadict.result:
        manual merge
      9f75b3cf
    • unknown's avatar
      Bug#31568 Some "information_schema" entries suddenly report a NULL default · 62a7e160
      unknown authored
      updated result files
      
      
      mysql-test/suite/funcs_1/r/innodb__datadict.result:
        updated result file
      mysql-test/suite/funcs_1/r/memory__datadict.result:
        updated result file
      mysql-test/suite/funcs_1/r/myisam__datadict.result:
        updated result file
      62a7e160
  9. 16 Oct, 2007 2 commits
  10. 15 Oct, 2007 3 commits
  11. 14 Oct, 2007 2 commits
  12. 13 Oct, 2007 4 commits
  13. 12 Oct, 2007 8 commits
  14. 11 Oct, 2007 6 commits
    • unknown's avatar
      Merge gleb.loc:/home/uchum/work/bk/PA/5.0-opt-31471 · f0fcc8c2
      unknown authored
      into  gleb.loc:/home/uchum/work/bk/5.1-opt
      
      
      mysql-test/r/create.result:
        Auto merged
      mysql-test/r/null.result:
        Auto merged
      sql/item_cmpfunc.cc:
        Auto merged
      f0fcc8c2
    • unknown's avatar
      Merge gleb.loc:/home/uchum/work/bk/PA/5.0-opt-31471 · 1fc06a1f
      unknown authored
      into  gleb.loc:/home/uchum/work/bk/5.0-opt
      
      
      1fc06a1f
    • unknown's avatar
      after merge fix · 048cb42d
      unknown authored
      048cb42d
    • unknown's avatar
      Merge mysql.com:/home/gluh/MySQL/Merge/5.0-opt · 937504e7
      unknown authored
      into  mysql.com:/home/gluh/MySQL/Merge/5.1-opt
      
      
      mysql-test/r/ctype_ucs.result:
        Auto merged
      mysql-test/r/ctype_utf8.result:
        Auto merged
      mysql-test/t/ctype_ucs.test:
        Auto merged
      mysql-test/t/ctype_utf8.test:
        Auto merged
      sql/item.cc:
        Auto merged
      sql/item.h:
        Auto merged
      sql/item_strfunc.cc:
        Auto merged
      sql/item_strfunc.h:
        Auto merged
      sql/sql_yacc.yy:
        manual merge
      937504e7
    • unknown's avatar
      Bug#30981 CHAR(0x41 USING ucs2) doesn't add leading zero · f30eacb2
      unknown authored
      Bug#30982 CHAR(..USING..) can return a not-well-formed string
      Bug#30986 Character set introducer followed by a HEX string can return bad result
      check_well_formed_result moved to Item from Item_str_func
      fixed Item_func_char::val_str for proper ucs symbols converting
      added check for well formed strings for correct conversion of constants with underscore
      charset
      
      
      mysql-test/r/ctype_ucs.result:
        test result
      mysql-test/r/ctype_utf8.result:
        test result
      mysql-test/t/ctype_ucs.test:
        test case
      mysql-test/t/ctype_utf8.test:
        test case
      sql/item.cc:
        check_well_formed_result() moved from Item_str_func
      sql/item.h:
        check_well_formed_result() moved from Item_str_func
      sql/item_strfunc.cc:
        check_well_formed_result moved to Item
        fixed Item_func_char::val_str for proper ucs symbols converting
      sql/item_strfunc.h:
        check_well_formed_result moved to Item
      sql/sql_yacc.yy:
        added check for well formed string
      f30eacb2
    • unknown's avatar
      Bug #31440: 'select 1 regex null' asserts debug server · 76af5717
      unknown authored
      The special case with NULL as a regular expression
      was handled at prepare time. But in this special case
      the item was not marked as fixed. This caused an assertion
      at execution time.
      Fixed my marking the item as fixed even when known to 
      return NULL at prepare time.
      
      
      mysql-test/r/func_regexp.result:
        Bug #31440: test case
      mysql-test/t/func_regexp.test:
        Bug #31440: test case
      sql/item_cmpfunc.cc:
        Bug #31440: mark the item as fixed even when 
        known to return NULL.
      76af5717