- 11 Apr, 2016 3 commits
-
-
Sergei Petrunia authored
-
Vicențiu Ciorbaru authored
The bug was caused by a weird behaviour in test_if_group_changed, not returning true when testing for the first time after initializing the Cached_item list.
-
Sergei Petrunia authored
-
- 10 Apr, 2016 4 commits
-
-
Sergei Petrunia authored
Implement the "DISTINCT must not be converted into GROUP BY when window functions are present" part.
-
Sergei Petrunia authored
n=0 in "ROWS 0 PRECEDING" is valid, add handling for it: - Adjust the assert - Bottom bound of 'ROW 0 PRECEDING' is actually looking at the current row, that is, it needs to process partition's first row directly in Frame_n_rows_preceding::next_partition(). - Added testcases
-
Sergei Petrunia authored
-
Sergei Petrunia authored
Window functions need to have their own column in the work (temp) table, like aggregate functions do. They don't need val_int() -> val_int_result() conversion though, so they should be wrapped with Item_direct_ref, not Item_aggregate_ref.
-
- 09 Apr, 2016 1 commit
-
-
Sergei Petrunia authored
-
- 08 Apr, 2016 2 commits
-
-
Sergei Petrunia authored
-
Sergei Petrunia authored
- When window functions are present, JOIN::simple_order should be set to FALSE. (Otherwise, the optimizer may attempt to do a "pre-sorting" on the first join_tab. Which can work in some cases, but generally isn't) - filesort tries to only read table fields that it requires. Window function requires its temp.table field. In order to pass this info to filesort, added an implementation of Item_window_func:: register_field_in_read_map.
-
- 06 Apr, 2016 10 commits
-
-
Sergei Petrunia authored
- Make Window Functions errors use the MariaDB's extra error range. - Fix a trivial bug in check_error_mesg
-
Sergei Petrunia authored
" The sort order for the sub-sequence of window functions starting from the element marked by SORTORDER_CHANGE_FLAG up to the next element marked by SORTORDER_CHANGE_FLAG must be taken from the last element of the sub-sequence (not from the first one)."
-
Sergei Petrunia authored
- Move filesort's sort_positions argument into class Filesort. - Make window function code construct Filesort with sort_positions=true.
-
Sergei Petrunia authored
length is now calculated in Filesort::make_sortorder.
-
Sergei Petrunia authored
As discussed on the call: - s/Window_funcs_computation_step/Window_funcs_computation/g - s/Window_func_sort/Window_funcs_sort/g
-
Sergei Petrunia authored
-
Sergei Petrunia authored
-
Vicențiu Ciorbaru authored
-
Alexander Barkov authored
- Moving the new my_charlen()-based code handling multi-byte characters from READ_INFO::field_field() to a new method READ_INFO::read_mbtail() - Reusing read_mbtail() in READ_INFO::read_value(), instead of the old my_mbcharlen()-based code which did not catch broken byte sequences
-
Alexander Barkov authored
-
- 05 Apr, 2016 6 commits
-
-
Vladislav Vaintroub authored
-
Monty authored
-
Sergei Petrunia authored
- Rename Window_funcs_computation to Window_funcs_computation_step - Introduce Window_func_sort which invokes filesort and then invokes computation of all window functions that use this ordering. - Expose Window functions' sort operations in EXPLAIN|ANALYZE FORMAT=JSON
-
Monty authored
- Removed some QQ markers - Removed some rows not compatible with valgrind 3.9.0 - Made mysql_install_db.sh more silent by default. --verbose now gives more information - Added assert that auto-increment doesn't generate 0 (safety) - Removed thd->set_time() in some places as it's set in init_for_queries() - Fixed some --big tests in tokudb - Fixed a bug in mysql_client_test.cc where sql_mode was not properly reset
-
Monty authored
This is done by splitting variables.errmsg and locale.errmsg to variables.errmsg_extra and locale.errmsg_extra The ER() macros in unireg.h now looks more complex than before, but this isn't critical as most usage of them are with constants and the compiler will remove most of the test code.
-
Alexander Barkov authored
-
- 04 Apr, 2016 6 commits
-
-
Igor Babaev authored
of compare_window_funcs_by_window_specs().
-
Vicențiu Ciorbaru authored
-
Vicențiu Ciorbaru authored
The current implementation does not allow for a dynamic expression within the sum function's parameter.
-
Vicențiu Ciorbaru authored
-
Vicențiu Ciorbaru authored
-
Alexander Barkov authored
The new class is used for: - FIELDS TERMINATED BY 'string' - LINES STARTING BY 'string' - LINES TERMINATED BY 'string' The implementation of "FIELDS ENCLOSED BY 'char'" and "FIELDS ESCAPED BY 'char'" should eventually also switch to this class to support multi-byte characters. Currently multi-byte ENCLOSED and ESCAPED characters are rejected at parse time.
-
- 01 Apr, 2016 5 commits
-
-
Igor Babaev authored
The problem popped up when running win_percent_cume.test with --ps-protocol.
-
Igor Babaev authored
Window names has to be resolved only once.
-
Alexander Barkov authored
buff, buff_length, end_of_buff. This unifies "LOAD DATA" and "LOAD XML", so they now both use String for a temporary value storage. This change will make further work for MDEV-6353 easier.
-
Alexander Barkov authored
-
Igor Babaev authored
that the call-back comparison function returns a positive number when arg1 < arg2, and a negative number when arg1 > arg2. This is not in line with other implementation of sorting algorithm. Changed bubble_sort: now a negative result from the comparison function means that arg1 < arg2, and positive result means that arg1 > arg2. Changed accordingly all call-back functions that are used as parameters in the call of bubble_sort. Added a test case to check the proper sorting of window functions.
-
- 31 Mar, 2016 3 commits
-
-
Alexander Barkov authored
MDEV-9824 LOAD DATA does not work with multi-byte strings in LINES TERMINATED BY when IGNORE is specified
-
Alexander Barkov authored
- Removing the "diff_if_only_endspace_difference" argument from MY_COLLATION_HANDLER::strnncollsp(), my_strnncollsp_simple(), as well as in the function template MY_FUNCTION_NAME(strnncollsp) in strcoll.ic - Removing the "diff_if_only_space_different" from ha_compare_text(), hp_rec_key_cmp(). - Adding a new function my_strnncollsp_padspace_bin() and reusing it instead of duplicate code pieces in my_strnncollsp_8bit_bin(), my_strnncollsp_latin1_de(), my_strnncollsp_tis620(), my_strnncollsp_utf8_cs(). - Adding more tests for better coverage of the trailing space handling. - Removing the unused definition of HA_END_SPACE_ARE_EQUAL
-
Sergey Vojtovich authored
-