Commit graph

3 commits

Author SHA1 Message Date
Vicențiu Ciorbaru
aa74fef25e Fix 2 more bugs in item_windowfunc.
1. Item_windowfunc must check the nullness of the field if it returns the
   value from the result_field.
2. The decimal value must come from the window_func instead of the
   result_field when not fetching values from the result_field.

Added a more extensive test case that highlights if these bugs occur.
The 2 select statements check behaviour for decimal and real typed
fields respectively.
2016-03-16 01:42:45 +02:00
Sergei Petrunia
833304313d Continuation of "Implemented a counter within Item_sum_sum" a few commits before
Query result had 0 where it should have had NULLs:
- Make Item_window_func::val* functions honor NULL-handling conventions:
  1. set null_value to indicate whether we've returned a NULL value
  2. val_str and val_decimal should return NULL pointer when they're
     returning SQL NULL value.

Fix assertion failure when sending results to network.
- The assert was due to window func returing SQL NULL despite having
  maybe_null=false
- Fixed by settting Item_window_func::maybe_null correctly in fix_fields
2016-03-16 01:26:39 +03:00
Vicențiu Ciorbaru
a0c06ba1ed Preliminary implementation for the aggregate sum function as a window function
This implementation does not deal with the case where removal of
elements from the window frame causes the item to turn to a null value.
2016-03-14 15:42:00 +02:00