1. 02 Dec, 2007 2 commits
    • unknown's avatar
      Merge polly.(none):/home/kaa/src/maint/bug26788/my50-bug26788 · 416e1d9d
      unknown authored
      into  polly.(none):/home/kaa/src/maint/mysql-5.0-maint
      
      
      mysql-test/t/insert.test:
        Auto merged
      mysql-test/t/variables.test:
        Auto merged
      sql/field.cc:
        Auto merged
      416e1d9d
    • unknown's avatar
      Windows-specific fixes in floating point tests. · 5fd87aba
      unknown authored
      
      mysql-test/t/insert.test:
        Windows implements a different rounding rules in printf("%g"), thus we still need to do replace_result
      mysql-test/t/variables.test:
        We need to do replace_result because variables are printed by another procedure.
      sql/field.cc:
        Fixed the code to limit the precision to DBL_DIG.
      5fd87aba
  2. 01 Dec, 2007 6 commits
    • unknown's avatar
      Merge polly.(none):/home/kaa/src/maint/bug26788/my50-bug26788 · 187cfae6
      unknown authored
      into  polly.(none):/home/kaa/src/maint/mysql-5.0-maint
      
      
      mysql-test/r/insert.result:
        Auto merged
      mysql-test/t/insert.test:
        Auto merged
      sql/field.cc:
        Auto merged
      187cfae6
    • unknown's avatar
      Fixed the floating point number tests on Windows. · 1f22720c
      unknown authored
      
      mysql-test/r/insert.result:
        Fixed the test cases.
      mysql-test/t/cast.test:
        We need to do replace_result because warnings are printed by another procedure.
      mysql-test/t/insert.test:
        Windows implements a different rounding rules in printf("%g"), thus we still need to do replace_result.
      sql/field.cc:
        Limit the precision to avoid garbage past the significant digits.
      1f22720c
    • unknown's avatar
      Merge polly.(none):/home/kaa/src/maint/bug26788/my50-bug26788 · dfde8826
      unknown authored
      into  polly.(none):/home/kaa/src/maint/mysql-5.0-maint
      
      
      sql/field.cc:
        Auto merged
      dfde8826
    • unknown's avatar
      Fixed the build failure on Windows. It does not have trunc() defined in... · d8d07eff
      unknown authored
      Fixed the build failure on Windows. It does not have trunc() defined in math.h, so we should not use it code.
      
      
      
      d8d07eff
    • unknown's avatar
      Merge polly.(none):/home/kaa/src/maint/bug26788/my50-bug26788 · 4fc6d3b2
      unknown authored
      into  polly.(none):/home/kaa/src/maint/mysql-5.0-maint
      
      
      mysql-test/t/type_float.test:
        Auto merged
      mysql-test/t/variables.test:
        Auto merged
      sql/field.cc:
        Auto merged
      mysql-test/r/insert.result:
        SCCS merged
      mysql-test/t/insert.test:
        SCCS merged
      4fc6d3b2
    • unknown's avatar
      Fix for bug #26788 "mysqld (debug) aborts when inserting specific · 1615f838
      unknown authored
      numbers into char fields" and bug #12860 "Difference in zero padding of
      exponent between Unix and Windows"
      
      Rewrote the code that determines what 'precision' argument should be
      passed to sprintf() to fit the string representation of the input number
      into the field.
      We get finer control over conversion by pre-calculating the exponent, so
      we are able to determine which conversion format, 'e' or 'f', will be
      used by sprintf().
      We also remove the leading zero from the exponent on Windows to make it
      compatible with the sprintf() output on other platforms.
      
      
      mysql-test/r/insert.result:
        Added test cases for bug #26788 and bug #31152.
      mysql-test/t/cast.test:
        Removed --replace_result, since the result is now correct on Windows.
      mysql-test/t/insert.test:
        Added test cases for bug #26788 and bug #31152.
      mysql-test/t/type_float.test:
        Removed --replace_result, since the result is now correct on Windows.
      mysql-test/t/variables.test:
        Removed --replace_result, since the result is now correct on Windows.
      sql/field.cc:
        Rewrote the code that determines what 'precision' argument should be
        passed to sprintf() to fit the string representation of the input number
        into the field.
        We get finer control over conversion by pre-calculating the exponent, so
        we are able to determine which conversion format, 'e' or 'f', will be
        used by sprintf().
      1615f838
  3. 20 Nov, 2007 1 commit
  4. 17 Nov, 2007 2 commits
    • unknown's avatar
      Merge tnurnberg@bk-internal.mysql.com:/home/bk/mysql-5.0-maint · 8a3e1a55
      unknown authored
      into  mysql.com:/misc/mysql/24907/50-24907
      
      
      sql/sql_select.cc:
        Auto merged
      8a3e1a55
    • unknown's avatar
      Bug#24907: unpredictable (display) precission, if input precission increases · 748446b9
      unknown authored
      Server failed in assert() when we tried to create a DECIMAL() temp field
      with a scale of more than the allowed 30. Now we limit the scale to the
      allowed maximum. A truncation warning is thrown as necessary.
      
      
      mysql-test/r/type_newdecimal.result:
        Show that out of range DECIMAL temp fields will no longer
        stop the server with an assert.
      mysql-test/t/type_newdecimal.test:
        Show that out of range DECIMAL temp fields will no longer
        stop the server with an assert.
      sql/sql_select.cc:
        When creating DECIMAL() temp field, ascertain we stay within allowed
        limits. If not, truncate and warn.
      748446b9
  5. 10 Nov, 2007 4 commits
  6. 07 Nov, 2007 1 commit
    • unknown's avatar
      Fix for bug #32137: prepared statement crash with str_to_date in update clause · c7191f90
      unknown authored
      Problem: calling non-constant argument's val_xxx() methods 
      in the ::fix_length_and_dec() is inadmissible.
      
      Fix: call the method only for constant arguments.
      
      
      mysql-test/r/ps.result:
        Fix for bug #32137: prepared statement crash with str_to_date in update clause
          - test result.
      mysql-test/t/ps.test:
        Fix for bug #32137: prepared statement crash with str_to_date in update clause
          - test case.
      sql/item_timefunc.cc:
        Fix for bug #32137: prepared statement crash with str_to_date in update clause
          - call argument's val_str() only for constant items in the 
            Item_func_str_to_date::fix_length_and_dec().
      c7191f90
  7. 01 Nov, 2007 4 commits
  8. 31 Oct, 2007 3 commits
    • unknown's avatar
      Merge bk-internal:/home/bk/mysql-5.0-maint · a55b8d0d
      unknown authored
      into  loke.(none):/home/knielsen/devel/mysql-5.0-maint
      
      
      a55b8d0d
    • unknown's avatar
      BUG#31799: Scrambled number output due to integer overflow · f8b5a340
      unknown authored
      An integer overflow in number->string conversion caused completely
      wrong output of the number LONGLONG_MIN with gcc 4.2.1.
      
      Fixed by eliminating the overflow, using only operations that are
      well-defined in ANSI C.
      
      
      strings/ctype-simple.c:
        An integer overflow in number->string conversion caused completely
        wrong output of the number LONGLONG_MIN with gcc 4.2.1.
        
        Fixed by eliminating the overflow, using only operations that are
        well-defined in ANSI C.
      strings/ctype-ucs2.c:
        An integer overflow in number->string conversion caused completely
        wrong output of the number LONGLONG_MIN with gcc 4.2.1.
        
        Fixed by eliminating the overflow, using only operations that are
        well-defined in ANSI C.
      strings/int2str.c:
        An integer overflow in number->string conversion caused completely
        wrong output of the number LONGLONG_MIN with gcc 4.2.1.
        
        Fixed by eliminating the overflow, using only operations that are
        well-defined in ANSI C.
      strings/longlong2str.c:
        An integer overflow in number->string conversion caused completely
        wrong output of the number LONGLONG_MIN with gcc 4.2.1.
        
        Fixed by eliminating the overflow, using only operations that are
        well-defined in ANSI C.
      f8b5a340
    • unknown's avatar
      Merge mysql.com:/home/ram/work/mysql-5.0-maint · 71f9931d
      unknown authored
      into  mysql.com:/home/ram/work/b30654/b30654.5.0
      
      
      71f9931d
  9. 30 Oct, 2007 1 commit
    • unknown's avatar
      Fix for bug #30654: mysqlcheck fails during upgrade of tables whose · 2611e8ec
      unknown authored
      names include backticks or blank
      
      Problem: mysqlcheck doesn't escape backtick characters in the table names.
      
      Fix: escape them.
      
      
      client/mysqlcheck.c:
        Fix for bug #30654: mysqlcheck fails during upgrade of tables whose 
        names include backticks or blank
          - escape backtick characters in the table names.
      mysql-test/r/mysqlcheck.result:
        Fix for bug #30654: mysqlcheck fails during upgrade of tables whose 
        names include backticks or blank
          - test result.
      mysql-test/t/mysqlcheck.test:
        Fix for bug #30654: mysqlcheck fails during upgrade of tables whose 
        names include backticks or blank
          - test case.
      2611e8ec
  10. 29 Oct, 2007 3 commits
    • unknown's avatar
      Merge mysql.com:/home/ram/work/mysql-5.0-maint · 2fa9b3c9
      unknown authored
      into  mysql.com:/home/ram/work/b31137/b31137.5.0
      
      
      2fa9b3c9
    • unknown's avatar
      Merge mysql.com:/home/ram/work/mysql-5.0-maint · 016c6f61
      unknown authored
      into  mysql.com:/home/ram/work/b30782/b30782.5.0
      
      
      sql/item_cmpfunc.cc:
        Auto merged
      sql/item_cmpfunc.h:
        Auto merged
      016c6f61
    • unknown's avatar
      Fix for bug #30782: Truncated UNSIGNED BIGINT columns only in SELECT w/ CASE, · 42894ed0
      unknown authored
      JOIN, and ORDER BY
      
      Problem: improper maximum length calculation of the CASE function leads to 
      decimal value truncation (storing/retrieving decimal field values).
      
      Fix: accurately calculate maximum length/unsigned flag/decimals parameters 
      of the CASE function.
      
      
      mysql-test/r/case.result:
        Fix for bug #30782: Truncated UNSIGNED BIGINT columns only in SELECT w/ CASE, 
        JOIN, and ORDER BY
          - test result.
      mysql-test/t/case.test:
        Fix for bug #30782: Truncated UNSIGNED BIGINT columns only in SELECT w/ CASE, 
        JOIN, and ORDER BY
          - test case.
      sql/item_cmpfunc.cc:
        Fix for bug #30782: Truncated UNSIGNED BIGINT columns only in SELECT w/ CASE, 
        JOIN, and ORDER BY
          - accurately calculate Item_func_case::max_length/unsigned_flag/decimals.
      sql/item_cmpfunc.h:
        Fix for bug #30782: Truncated UNSIGNED BIGINT columns only in SELECT w/ CASE, 
        JOIN, and ORDER BY
          - accurately calculate Item_func_case::max_length/unsigned_flag/decimals.
      42894ed0
  11. 26 Oct, 2007 1 commit
    • unknown's avatar
      Fix for bug #31137: Assertion failed: primary_key_no == -1 || primary_key_no == 0, · d7d93cf5
      unknown authored
      file .\ha_innodb.
      
      Problem: if a partial unique key followed by a non-partial one we declare
      the second one as a primary key.
      
      Fix: sort non-partial unique keys before partial ones.
      
      
      include/my_base.h:
        Fix for bug #31137: Assertion failed: primary_key_no == -1 || primary_key_no == 0, 
        file .\ha_innodb.
          - sort unique keys that don't contain partial segments before other keys:
              set HA_KEY_HAS_PART_KEY_SEG flag for such keys in the mysql_prepare_table(),
              use it in the sort_keys();
      mysql-test/r/innodb_mysql.result:
        Fix for bug #31137: Assertion failed: primary_key_no == -1 || primary_key_no == 0, 
        file .\ha_innodb.
          - test result.
      mysql-test/r/key.result:
        Fix for bug #31137: Assertion failed: primary_key_no == -1 || primary_key_no == 0, 
        file .\ha_innodb.
          - test result.
      mysql-test/t/innodb_mysql.test:
        Fix for bug #31137: Assertion failed: primary_key_no == -1 || primary_key_no == 0, 
        file .\ha_innodb.
          - test case.
      mysql-test/t/key.test:
        Fix for bug #31137: Assertion failed: primary_key_no == -1 || primary_key_no == 0, 
        file .\ha_innodb.
          - test case.
      sql/sql_table.cc:
        Fix for bug #31137: Assertion failed: primary_key_no == -1 || primary_key_no == 0, 
        file .\ha_innodb.
          - sort unique keys that don't contain partial segments before other keys:
              set HA_KEY_HAS_PART_KEY_SEG flag for such keys in the mysql_prepare_table(),
              use it in the sort_keys();
      sql/structs.h:
        Fix for bug #31137: Assertion failed: primary_key_no == -1 || primary_key_no == 0, 
        file .\ha_innodb.
          - sort unique keys that don't contain partial segments before other keys:
              set HA_KEY_HAS_PART_KEY_SEG flag for such keys in the mysql_prepare_table(),
              use it in the sort_keys();
      d7d93cf5
  12. 25 Oct, 2007 2 commits
  13. 24 Oct, 2007 6 commits
  14. 23 Oct, 2007 4 commits