An error occurred fetching the project authors.
  1. 25 Oct, 2006 1 commit
    • unknown's avatar
      bug #19491 (CAST do DATETIME wrong result) · 01a0be19
      unknown authored
      mysql-test/r/type_datetime.result:
        result fixed
      mysql-test/r/type_newdecimal.result:
        result fixed
      mysql-test/t/type_datetime.test:
        testcase
      mysql-test/t/type_newdecimal.test:
        testcase
      sql/field.cc:
        Field_new_decimal::store_time implemented
      sql/field.h:
        Field_new_decimal::store_time added
      sql/item.cc:
        auxiliary methods implemented to operate with datatimes
      sql/item.h:
        auxiliary methods declared in Item to operate with datatimes
      sql/item_timefunc.cc:
        Item_date::save_in_field old implementation removed
      sql/item_timefunc.h:
        my_decimal and save_in_field methods implemented for datetime items
      sql/my_decimal.cc:
        date2my_decimal implemented
      sql/my_decimal.h:
        date2my_decimal declared
      01a0be19
  2. 15 Oct, 2005 1 commit
    • unknown's avatar
      Fix for bug #13573 (wrong data inserted for too big decimals) · a1db4567
      unknown authored
      mysql-test/r/type_newdecimal.result:
        result fixed
      mysql-test/t/type_newdecimal.test:
        test case added
      sql/item_func.cc:
        conditions fixed
      sql/my_decimal.cc:
        overflow handling added
      sql/my_decimal.h:
        overflow handling added - so the result of operation gets maximum possible
        decimal value
      a1db4567
  3. 06 May, 2005 1 commit
  4. 05 May, 2005 1 commit
    • unknown's avatar
      A lot of fixes to Precision math · 6de14a23
      unknown authored
      Mostly about precision/decimals of the results of the operations
      
      
      include/decimal.h:
        decimal interface changed a little
      sql/field.cc:
        a lot of precision/decimals related changes to the Field_new_decimal
      sql/field.h:
        Field_new_decimal interface changed
      sql/ha_ndbcluster.cc:
        f->precision should be used here
      sql/item.cc:
        precision/decimals counting related changes
      sql/item.h:
        precision/decimals counting related changes
      sql/item_cmpfunc.cc:
        precision/decimals counting related changes
      sql/item_cmpfunc.h:
        precision/decimals counting related changes
      sql/item_func.cc:
        precision/decimals counting related changes
      sql/item_func.h:
        precision/decimals counting related changes
      sql/item_sum.cc:
        precision/decimals counting related changes
      sql/item_sum.h:
        precision/decimals counting related changes
      sql/my_decimal.cc:
        precision/decimals counting related changes
      sql/my_decimal.h:
        precision/decimals counting related changes
      sql/mysqld.cc:
        precision/decimals counting related changes
      sql/set_var.cc:
        precision/decimals counting related changes
      sql/sp_head.cc:
        dbug_decimal_print was replaced with dbug_decimal_as_string
      sql/sql_class.h:
        div_precincrement variable added
      sql/sql_parse.cc:
        precision/decimals counting related changes
      sql/sql_select.cc:
        precision/decimals counting related changes
      sql/sql_show.cc:
        Field::representation_length was removed
      strings/decimal.c:
        decimal_actual_fraction was introduced
      BitKeeper/etc/logging_ok:
        Logging to logging@openlogging.org accepted
      6de14a23
  5. 01 Apr, 2005 1 commit
    • unknown's avatar
      Invalid DEFAULT values for CREATE TABLE now generates errors. (Bug #5902) · db7561ec
      unknown authored
      CAST() now produces warnings when casting a wrong INTEGER or CHAR values. This also applies to implicite string to number casts. (Bug #5912)
      ALTER TABLE now fails in STRICT mode if it generates warnings.
      Inserting a zero date in a DATE, DATETIME or TIMESTAMP column during TRADITIONAL mode now produces an error. (Bug #5933)
      
      
      mysql-test/r/bigint.result:
        New warning added
      mysql-test/r/cast.result:
        Added testing of wrong CAST's of strings to numbers and numbers to strings
      mysql-test/r/create.result:
        Added test for wrong default values (#5902)
      mysql-test/r/func_if.result:
        Changed tests to produce less warnings
      mysql-test/r/func_misc.result:
        New warning
      mysql-test/r/func_str.result:
        Added missing drop table
        Changed test to produce less warnings
        New warnings
      mysql-test/r/ndb_index_unique.result:
        Removed wrong default usage
      mysql-test/r/ps_1general.result:
        Changed tests to produce less warnings
      mysql-test/r/row.result:
        New warnings
      mysql-test/r/rpl_session_var.result:
        Changed tests to produce less warnings
      mysql-test/r/strict.result:
        New tests for CAST() and zero date handling
      mysql-test/r/subselect.result:
        Changed tests to produce less warnings
      mysql-test/r/type_ranges.result:
        Changed tests to produce less warnings
      mysql-test/t/cast.test:
        Added testing of wrong CAST's of strings to numbers and numbers to strings
      mysql-test/t/create.test:
        Added test for wrong default values (#5902)
      mysql-test/t/func_if.test:
        Changed tests to produce less warnings
      mysql-test/t/func_str.test:
        Added missing drop table
        Changed test to produce less warnings
        New warnings
      mysql-test/t/ndb_index_unique.test:
        Removed wrong default usage
      mysql-test/t/ps_1general.test:
        Changed tests to produce less warnings
      mysql-test/t/rpl_session_var.test:
        Changed tests to produce less warnings
      mysql-test/t/strict.test:
        New tests for CAST() and zero date handling
      mysql-test/t/subselect.test:
        Changed tests to produce less warnings
      mysql-test/t/type_ranges.test:
        Changed tests to produce less warnings
      sql/Makefile.am:
        Added new include file
      sql/field.cc:
        Added warnings for zero dates for DATE, DATETIME and TIMESTAMP
        Moved Field_blob::max_length() to a more appropriate position
        Changed type for 'level' in set_warning() to avoid casts
      sql/field.h:
        Changed type for 'level' in set_warning() to avoid casts
      sql/field_conv.cc:
        Copy date and datetime fields through string in 'traditional' mode to detect zero dates
      sql/item.cc:
        Removed compiler warnings
        Give warnings for wrong CAST of strings -> number
      sql/item.h:
        Moved Item_string::val_real() and ::val_int() to item.cc
      sql/item_row.cc:
        Better detection of null values (which doesn't produce warnings)
      sql/item_sum.cc:
        Better detection of null values (which doesn't produce warnings)
      sql/item_timefunc.cc:
        Give warnings for wrong CAST of number -> string
      sql/my_decimal.cc:
        Fixed typo in comment
      sql/mysql_priv.h:
        Removed prototype for static function
        Moved defines for error handling to sql_error.h (to be able to use these in field.h)
      sql/mysqld.cc:
        Simplify code
      sql/sql_class.h:
        Moved to sql_error.h
      sql/sql_load.cc:
        Removed wrong cast
      sql/sql_parse.cc:
        Fixed wrong printf()
      sql/sql_table.cc:
        Made mysql_prepare_table() static
        Changed references to pointers to make code more readable
        ALTER TABLE now aborts if one gets warnings in STRICT mode
      sql/time.cc:
        Fixed possible wrong call
      sql/unireg.cc:
        Removed one call to current_thd
        Give errors if one uses a wrong DEFAULT value
      db7561ec
  6. 21 Mar, 2005 1 commit
  7. 19 Feb, 2005 2 commits
    • unknown's avatar
      use dbug_print_decimal instead of DBUG_EXECUTE · 3805001f
      unknown authored
      Portability fix
      Note: rpl_trunc_binlog fails, but Sergei has promised to fix it, so I will ignore it for now
      
      
      sql/field.cc:
        use dbug_print_decimal instead of DBUG_EXECUTE
      sql/item.h:
        Portability fix
      sql/my_decimal.cc:
        Fix error in last changeset (not pushed)
      3805001f
    • unknown's avatar
      Fixed BUILD script to use --with-berkeley-db instead of --with-bdb · 64cc538b
      unknown authored
      Lots of small fixes to multi-precision-math path
      Give Note for '123.4e'
      Added helper functions type 'val_string_from_real()
      Don't give warnings for end space for string2decimal()
      Changed storage of values for SP so that we can detect length of argument without strlen()
      Changed interface for str2dec() so that we must supple the pointer to the last character in the buffer
      
      
      
      BUILD/SETUP.sh:
        with-bdb ->with-berkeley-db
      include/decimal.h:
        Make string2decimal and string2decimal_fixed inline
      mysql-test/r/func_group.result:
        More tests (to find bugs in precision math fixes)
      mysql-test/r/func_set.result:
        Test to cover more Item_func_field::val_xxx() code
      mysql-test/r/ps_6bdb.result:
        update results
      mysql-test/r/type_decimal.result:
        New tests
        Give note for '123.4e'
      mysql-test/r/type_newdecimal.result:
        Number of decimal changes (probably right, but hard to verify)
      mysql-test/t/func_group.test:
        More tests (to find bugs in precision math fixes)
      mysql-test/t/func_set.test:
        Test to cover more Item_func_field::val_xxx() code
      mysql-test/t/type_decimal.test:
        New tests to cover more cases in decimal.c
      sql/item.cc:
        Added helper functions type 'val_string_from_real()'
        Use new interfase to str2my_decimal()
        Moved nr_of_decimals() here (and made it static)
      sql/item.h:
        Added helper functions type 'val_string_from_real()'
      sql/item_func.cc:
        Style fixes
        Trivial optimizations
        Ensure null_value is set if my_decimal_add/sub/mul/div returns error
        Remove not needed Item_func_int_div::val_str()
        Join Item_func_signproc and Item_func_neg
        Fix that FIELD() works when first argument is NULL or one if it's arguments are NULL
        new str2my_decimal interface
      sql/item_func.h:
        Make Item_func_int_div inherit from Item_int_func (allows us to remove some virtual functions)
        Join Item_func_signproc & Item_func_neg
      sql/item_strfunc.cc:
        Move nr_of_decmails() to Item.cc (as it was only used here)
      sql/item_sum.cc:
        Style fixes
        Change a lot of code to use new helper converter functions in item.cc
        Moved Item_sum::val_decimal() to Item_sum_int::val_decimal()
        Fixed calls to wrong functions (Item_sum_num::val_int())
        Ensure that all hybrid functions checks hybrid_type in val_xxx() (As there is no gurantee that they are called in the right context)
        Simplify key_length allocation in Item_sum_sum_distinct()
        Simplified create_tmp_field() and reset_field()
        Fixed potential error in Item_sum_hybrid::reset_field()
        Optimize Item_sum_avg::update_field()
        Item_std_field() functions musted be fully coded becasue Item_variance_field::val_xxx functions called helper functions
        Coded missing Item_sum_ufd_xxx::val_decimal() functions
      sql/item_sum.h:
        Moved Item_sum::val_decimal() to Item_sum_int::val_decimal()
        Added missing Item_sum_ufd_xxx::val_decimal() functions
        Removed not used scale() function.
        Fixed that Item_std_field() works with decimal arguments
        Fixed that CREATE ... STD() will create a REAL field
      sql/log_event.cc:
        Ensure that we use same format for all types
      sql/my_decimal.cc:
        Don't give warnings for end space for string2decimal()
        Added dbug_print_decimal()
      sql/my_decimal.h:
        Style fixes
        Prototypes for new functions
        New interface for str2my_decimal()
      sql/mysql_priv.h:
        Made nr_of_decimals() static
      sql/protocol.cc:
        Simplify code (by assume that decimal can't be bigger than DECIMAL_MAX_STR_LENGTH]
      sql/protocol_cursor.cc:
        Changed storage of values for SP so that we can detect length of argument without strlen()
      sql/sp_head.cc:
        Simplify code for decimal handling by letting item handling conversion to decimal
      sql/sp_rcontext.cc:
        Use new method to get length of arguments
      sql/sql_analyse.cc:
        if -> switch
        Increase 'empty' if decimal value=0
        Remove usage of strcat()
      sql/sql_base.cc:
        Remove unnecessary checks
      sql/sql_class.cc:
        Remove not needed 'else'
        Removed not used variables
      sql/sql_select.cc:
        remove test for impossible condtion
      strings/decimal.c:
        Made two trivial functions macros
        Changed interface for str2dec() so that we must supple the pointer to the last character in the buffer
        This safer than before as we don't require an end \0 anymore (old code gave wrong answers in MySQL for some internals strings that where not \0 terminated)
        Detect error numbers of type '12.55e'
        str2dec() will now set 'to' to zero in case of errors
      64cc538b
  8. 16 Feb, 2005 1 commit
  9. 15 Feb, 2005 1 commit
    • unknown's avatar
      Fixed failing test cases 'row.test' when running with --ps-protocol · 67b16d20
      unknown authored
      Simple optimzations done while reviewing code
      
      
      client/mysqltest.c:
        Added options --enable-ps-warnings and --disable-ps-warnings
        (to fix failing test case)
      mysql-test/t/row.test:
        Disable warnings that comes from 'parse' parth
      sql/field.cc:
        Removed calls to is_null() in field functions.
        (Not needed as NULL handling is done on the level above fields)
        Indentation fixes
        Removed calls to alloca() as buffer needed was quite small.
      sql/field.h:
        Indentation changes and comment fixes
      sql/filesort.cc:
        Simple optimization during code review
      sql/item.cc:
        Indentation fixes
        Removed some unnecessary tests (added DBUG_ASSERTS() instead)
      sql/item_buff.cc:
        Indentation fixes
      sql/my_decimal.cc:
        Indentation fixes
        Simple optimization
        Fixed compiler warning
      sql/sql_update.cc:
        Removed unnessessary assignment
      67b16d20
  10. 09 Feb, 2005 1 commit
    • unknown's avatar
      fixed C++ syntax in C code · 8daa5188
      unknown authored
      fixed end of string detection in string->decimal conversion to avoid false alarm about some string part left unconverted (string can be not null terminated)
      ignore my_decimal.cc in libmysqld directory
      
      
      BitKeeper/etc/ignore:
        Added libmysqld/my_decimal.cc to the ignore list
      sql/my_decimal.cc:
        fixed end of string detection in string->decimal conversion to avoid false alarm about some string part left unconverted (string can be not null terminated)
      strings/decimal.c:
        fixed C++ syntax in C code
      8daa5188
  11. 08 Feb, 2005 1 commit
    • unknown's avatar
      Precision Math implementation · 91db48e3
      unknown authored
      BitKeeper/etc/ignore:
        Added client/decimal.c client/my_decimal.cc client/my_decimal.h to the ignore list
      91db48e3