1. 16 Jun, 2006 2 commits
    • unknown's avatar
      Manually merged · d0f39b6a
      unknown authored
      
      sql/item_timefunc.cc:
        Auto merged
      sql/item_timefunc.h:
        Auto merged
      d0f39b6a
    • unknown's avatar
      item_strfunc.cc: · ca22a81b
      unknown authored
        Fix for bug#16716 for --ps-protocol mode.
      item_cmpfunc.cc:
        Fix for a memory allocation/freeing problem in agg_cmp_type() after fix
      for bug#16377. Few language corrections.
      
      
      sql/item_cmpfunc.cc:
        Fix for a memory allocation/freeing problem in agg_cmp_type(). Few language corrections.
      sql/item_strfunc.cc:
        Fix for bug#16716 for --ps-protocol mode.
      ca22a81b
  2. 15 Jun, 2006 4 commits
  3. 14 Jun, 2006 12 commits
  4. 13 Jun, 2006 3 commits
    • unknown's avatar
      Merge epotemkin@bk-internal.mysql.com:/home/bk/mysql-4.1-opt · 9237d65d
      unknown authored
      into moonbone.local:/home/evgen/bk-trees/mysql-4.1-opt
      
      
      9237d65d
    • unknown's avatar
      Merge epotemkin@bk-internal.mysql.com:/home/bk/mysql-4.1-opt · 6297d1ab
      unknown authored
      into moonbone.local:/work/16377-bug-4.1-opt-mysql
      
      
      6297d1ab
    • unknown's avatar
      Fixed bug#16377: result of DATE/TIME functions were compared as strings which · 47311e8e
      unknown authored
      can lead to a wrong result.
      
      All date/time functions has the STRING result type thus their results are
      compared as strings. The string date representation allows a user to skip 
      some of leading zeros. This can lead to wrong comparison result if a date/time 
      function result is compared to such a string constant.
      
      The idea behind this bug fix is to compare results of date/time functions
      and data/time constants as ints, because that date/time representation is 
      more exact. To achieve this the agg_cmp_type() is changed to take in the
      account that a date/time field or an date/time item should be compared 
      as ints.
      
      This bug fix is partially back ported from 5.0.
      
      The agg_cmp_type() function now accepts THD as one of parameters. 
      In addition, it now checks if a date/time field/function is present in the
      list. If so, it tries to coerce all constants to INT to make date/time
      comparison return correct result. The field for the constant coercion is
      taken from the Item_field or constructed from the Item_func. In latter case
      the constructed field will be freed after conversion of all constant items.
      Otherwise the result is same as before - aggregated with help of the
      item_cmp_type() function.
      
      From the Item_func_between::fix_length_and_dec() function removed the part
      which was converting date/time constants to int if possible. Now this is 
      done by the agg_cmp_type() function.
      
      The new function result_as_longlong() is added to the Item class. 
      It indicates that the item is a date/time item and result of it can be
      compared as int. Such items are date/time fields/functions.
      
      Correct val_int() methods are implemented for classes Item_date_typecast, 
      Item_func_makedate, Item_time_typecast, Item_datetime_typecast. All these
      classes are derived from Item_str_func and Item_str_func::val_int() converts
      its string value to int without regard to the date/time type of these items.
      
      Arg_comparator::set_compare_func() and Arg_comparator::set_cmp_func()
      functions are changed to substitute result type of an item with the INT_RESULT
      if the item is a date/time item and another item is a constant. This is done
      to get a correct result of comparisons like date_time_function() = string_constant.
      
      
      mysql-test/r/cast.result:
        Fixed wrong test case result after bug fix#16377.
      sql/item_timefunc.h:
        Fixed bug#16377: result of DATE/TIME functions were compared as strings which
        can lead to a wrong result.
        The result_as_longlong() function is set to return TRUE for these classes:
        Item_date, Item_date_func, Item_func_curtime, Item_func_sec_to_time,
        Item_date_typecast, Item_time_typecast, Item_datetime_typecast,
        Item_func_makedate.
      sql/item_timefunc.cc:
        Fixed bug#16377: result of DATE/TIME functions were compared as strings which
        can lead to a wrong result.Correct val_int() methods are implemented for classes Item_date_typecast, 
        Item_func_makedate, Item_time_typecast, Item_datetime_typecast.
      sql/item_cmpfunc.h:
        Fixed bug#16377: result of DATE/TIME functions were compared as strings which
        can lead to a wrong result.
        Arg_comparator::set_compare_func() and Arg_comparator::set_cmp_func()
        functions are changed to substitute result type of an item with the INT_RESULT
        if the item is a date/time item and another item is a constant.
      sql/field.cc:
        Fixed bug#16377: result of DATE/TIME functions were compared as strings which
        can lead to a wrong result.
        Field::set_warning(), Field::set_datetime_warning() now use current_thd to get thd if table isn't set.
      sql/item_cmpfunc.cc:
        Fixed bug#16377: result of DATE/TIME functions were compared as strings which
        can lead to a wrong result.
        The agg_cmp_type() function now accepts THD as one of parameters. 
        In addition, it now checks if a date/time field/function is present in the
        list. If so, it tries to coerce all constants to INT to make date/time
        comparison return correct result. The field for the constant coercion is
        taken from the Item_field or constructed from the Item_func. In latter case
        the constructed field will be freed after conversion of all constant items.
        Otherwise the result is same as before - aggregated with help of the
        item_cmp_type() function.
      sql/item.h:
        The new function result_as_longlong() is added to the Item class. 
        It indicates that the item is a date/time item and result of it can be
        compared as int. Such items are date/time fields/functions.
      mysql-test/t/func_time.test:
        Added test case fot bug#16377: result of DATE/TIME functions were compared as strings which
        can lead to a wrong result.
      mysql-test/r/func_time.result:
        Added test case fot bug#16377: result of DATE/TIME functions were compared as strings which
        can lead to a wrong result.
      47311e8e
  5. 12 Jun, 2006 9 commits
  6. 09 Jun, 2006 2 commits
  7. 08 Jun, 2006 5 commits
    • unknown's avatar
      mysql-test/mysql-test-run.pl : Output the usage error if one is given.... · f32d05f5
      unknown authored
      mysql-test/mysql-test-run.pl  :  Output the usage error if one is given. (Found when fixing bug#20303)
      
      
      mysql-test/mysql-test-run.pl:
        Found when fixing bug#20303: The "usage()" function ignored the message it was given,
        so we got no real indication about the problem. Print it if one is given.
      f32d05f5
    • unknown's avatar
      Merge poseidon.ndb.mysql.com:/home/tomas/mysql-4.1 · 2bb4b344
      unknown authored
      into  poseidon.ndb.mysql.com:/home/tomas/mysql-4.1-main
      
      
      2bb4b344
    • unknown's avatar
      Bug #20336 CLUSTERLOG commands have no effect · 96fe14dd
      unknown authored
      
      ndb/src/kernel/blocks/cmvmi/Cmvmi.cpp:
        Bug #20336 CLUSTERLOG commands have no effect
        - with signal sender the clock issuing the command and the revceiver of the events are not the same
      ndb/src/mgmsrv/MgmtSrvr.cpp:
        Bug #20336 CLUSTERLOG commands have no effect
        - make sure to actually send the update to ndb nodes, and wait for the reply
      ndb/src/mgmsrv/Services.cpp:
        Bug #20336 CLUSTERLOG commands have no effect
        - make sure to compute max every time for log level
      96fe14dd
    • unknown's avatar
      Fix for Bug #18184 SELECT ... FOR UPDATE does not work..: implemented... · 20e54ae6
      unknown authored
      Fix for Bug #18184  SELECT ... FOR UPDATE does not work..: implemented ha_ndblcuster::unlock_row() and explicitly lock all rows that are not being unlocked
      
      
      
      20e54ae6
    • unknown's avatar
      mysql-test/mysql-test-run.pl : A fix for bug#20303 "mysql-test-run.pl:... · d0d69b76
      unknown authored
      mysql-test/mysql-test-run.pl  :    A fix for bug#20303 "mysql-test-run.pl: Does not recognize -- argument"
      
      
      mysql-test/mysql-test-run.pl:
        A fix for bug#20303 "mysql-test-run.pl: Does not recognize -- argument":
        Due to the use of 'pass_through' in option processing this lone '--' will remain
        as an argument, it must be ignored explicitly.
      d0d69b76
  8. 07 Jun, 2006 2 commits
    • unknown's avatar
      Merge rkalimullin@bk-internal.mysql.com:/home/bk/mysql-4.1 · 3cbf2eaf
      unknown authored
      into  mysql.com:/usr/home/ram/work/4.1.b6880
      
      
      3cbf2eaf
    • unknown's avatar
      Fix for bug #6880: LAST_INSERT_ID() within a statement · febe7eb6
      unknown authored
      
      mysql-test/r/auto_increment.result:
        Fix for bug #6880: LAST_INSERT_ID() within a statement
          - test result
      mysql-test/r/rpl_log.result:
        Fix for bug #6880: LAST_INSERT_ID() within a statement
          - test result
      mysql-test/t/auto_increment.test:
        Fix for bug #6880: LAST_INSERT_ID() within a statement
          - test case
      mysql-test/t/rpl_log.test:
        Fix for bug #6880: LAST_INSERT_ID() within a statement
          - test case
      sql/item_func.cc:
        Fix for bug #6880: LAST_INSERT_ID() within a statement
          - return the first thd->last_insert_id set (within a query)
      febe7eb6
  9. 06 Jun, 2006 1 commit
    • unknown's avatar
      Fixed some problems for Windows build · 5efb70d7
      unknown authored
      
      VC++Files/client/mysql.dsp:
        Fixed omission of mysys\my_conio.c.
      VC++Files/client/mysql_ia64.dsp:
        Fixed omission of mysys\my_conio.c.
      client/mysqldump.c:
        VS compiler does not accept variable declarations within blocks.
        Such a behaviour complies with the Standard C.
      5efb70d7