summaryrefslogtreecommitdiff
path: root/sql/item_windowfunc.h
diff options
context:
space:
mode:
authorSergei Petrunia <psergey@askmonty.org>2016-02-26 02:08:45 +0300
committerSergei Petrunia <psergey@askmonty.org>2016-02-26 02:08:45 +0300
commitd290a6655385cb45cd68e763e8aa8e2b30637469 (patch)
treea411b70f98068df73c18c8c3cf51123ee3bbe2ad /sql/item_windowfunc.h
parent0c6d753708dfe07607ab6879b4832fe6ec5ddefb (diff)
downloadmariadb-git-d290a6655385cb45cd68e763e8aa8e2b30637469.tar.gz
MDEV-9634: Window function produces incorrect value
- Item_sum_count::remove() should check if the argument's value is NULL. - Window Function item must have its Item_window_func::split_sum_func called, - and it must call split_sum_func for aggregate's arguments (see the comment near Item_window_func::split_sum_func for explanation why)
Diffstat (limited to 'sql/item_windowfunc.h')
-rw-r--r--sql/item_windowfunc.h2
1 files changed, 2 insertions, 0 deletions
diff --git a/sql/item_windowfunc.h b/sql/item_windowfunc.h
index e9a2d6936f2..d6e88e7c2d1 100644
--- a/sql/item_windowfunc.h
+++ b/sql/item_windowfunc.h
@@ -378,6 +378,8 @@ public:
window_func->val_decimal(dec);
}
+ void split_sum_func(THD *thd, Ref_ptr_array ref_pointer_array,
+ List<Item> &fields, uint flags);
void fix_length_and_dec()
{
window_func->fix_length_and_dec();