1. 26 Jul, 2010 4 commits
  2. 24 Jul, 2010 3 commits
  3. 23 Jul, 2010 3 commits
  4. 22 Jul, 2010 2 commits
  5. 21 Jul, 2010 11 commits
  6. 20 Jul, 2010 13 commits
  7. 19 Jul, 2010 4 commits
    • Davi Arnaut's avatar
      Merge into mysql-trunk-merge.. · ce2403e6
      Davi Arnaut authored
      ce2403e6
    • Davi Arnaut's avatar
      Merge of mysql-5.1 into mysql-5.1-bugteam. · 13f856f5
      Davi Arnaut authored
      13f856f5
    • Evgeny Potemkin's avatar
      Bug#49771: Incorrect MIN/MAX for date/time values. · 589027b2
      Evgeny Potemkin authored
      This bug is a design flaw of the fix for the bug#33546. It assumed that an
      item can be used only in one comparison context, but actually it isn't the
      case. Item_cache_datetime is used to store result for MIX/MAX aggregate
      functions. Because Arg_comparator always compares datetime values as INTs when
      possible the Item_cache_datetime most time caches only INT value. But
      since all datetime values has STRING result type MIN/MAX functions are asked
      for a STRING value when the result is being sent to a client. The
      Item_cache_datetime was designed to avoid conversions and get INT/STRING
      values from an underlying item, but at the moment the values is asked
      underlying item doesn't hold it anymore thus wrong result is returned.
      Beside that MIN/MAX aggregate functions was wrongly initializing cached result
      and this led to a wrong result.
      
      The Item::has_compatible_context helper function is added. It checks whether
      this and given items has the same comparison context or can be compared as
      DATETIME values by Arg_comparator. The equality propagation optimization is
      adjusted to take into account that items which being compared as DATETIME
      can have different comparison contexts.
      The Item_cache_datetime now converts cached INT value to a correct STRING
      DATETIME value by means of number_to_datetime & my_TIME_to_str functions.
      The Arg_comparator::set_cmp_context_for_datetime helper function is added. 
      It sets comparison context of items being compared as DATETIMEs to INT if
      items will be compared as longlong.
      The Item_sum_hybrid::setup function now correctly initializes its result
      value.
      In order to avoid unnecessary conversions Item_sum_hybrid now states that it
      can provide correct longlong value if the item being aggregated can do it
      too.
      589027b2
    • Georgi Kodinov's avatar
      fix tree names · 32dcc26b
      Georgi Kodinov authored
      32dcc26b