- 20 Feb, 2016 1 commit
-
-
Igor Babaev authored
Resolved window names. Checked some constraints for window frames. Added test cases for window name resolution.
-
- 17 Feb, 2016 1 commit
-
-
Sergei Petrunia authored
- Add temporary code: clone_read_record() clones READ_RECORD structure, as long as it is used for reading filesort() result that fits into memory. - Add frame bounds for ROWS-type frames. ROWS n PRECEDING|FOLLOWING, ROWS UNBOUNDED PRECEDING|FOLLOWING, CURRENT ROW are supported. - Add Item_sum_count::remove() which allows "streaming" computation of COUNT() over a moving frame.
-
- 15 Feb, 2016 5 commits
-
-
Vicențiu Ciorbaru authored
-
Vicențiu Ciorbaru authored
-
Sergei Petrunia authored
- Make queries that use multiple window functions not to leak memory - Code cleanup in sql_window.cc
-
Sergei Petrunia authored
-
Sergei Petrunia authored
These do not have any meaning after MDEV-8646. Their only valid values are - table_access_tabs= join_tab; - top_table_access_tabs_count= top_join_tab_count;
-
- 14 Feb, 2016 11 commits
-
-
Sergei Petrunia authored
-
Sergei Petrunia authored
-
Sergei Petrunia authored
-
Sergei Petrunia authored
-
Sergei Petrunia authored
-
Sergei Petrunia authored
-
Sergei Petrunia authored
-
Sergei Petrunia authored
Disable the code that attempts to group window functions together by their PARTITION BY / ORDER BY clauses, because 1. It doesn't work: when I issue a query with just one window function, and no indexes on the table, filesort is not invoked at all. 2. It is not possible to check that it works currently. Add my own code that does invoke filesort() for each window function. - Hopefully the sort criteria is right - Debugging shows that filesort operates on {sort_key, rowid} pairs (OK) - We can read the filesort rowid result in order.
-
Sergei Petrunia authored
a separate function, JOIN::process_window_functions().
-
Sergei Petrunia authored
-
Vicențiu Ciorbaru authored
-
- 13 Feb, 2016 3 commits
-
-
Sergei Petrunia authored
Debug printout should not attempt to print Ref_ptr_array value as %p.
-
Sergei Petrunia authored
"Distinct" optimization is not used by this query (both in this tree and in mainline 10.2). Verified this in debugger.
-
Igor Babaev authored
- All parsing problems look like resolved - Stub performing name resolution of window functions in simplest queries has been added.
-
- 09 Feb, 2016 1 commit
-
-
Igor Babaev authored
"Re-factor the code for post-join operations". The patch mainly contains the code ported from mysql-5.6 and created for two essential architectural changes: 1. WL#5558: Resolve ORDER BY execution method at the optimization stage 2. WL#6071: Inline tmp tables into the nested loops algorithm The first task was implemented for mysql-5.6 by Ole John Aske. It allows to make all decisions on ORDER BY operation at the optimization stage. The second task implemented for mysql-5.6 by Evgeny Potemkin adds JOIN_TAB nodes for post-join operations that require temporary tables. It allows to execute these operations within the nested loops algorithm that used to be used before this task only for join queries. Besides these task moves all planning on the execution of these operations from the execution phase to the optimization phase. Some other re-factoring changes of mysql-5.6 were pulled in, mainly because it was easier to pull them in than roll them back. In particular all changes concerning Ref_ptr_array were incorporated. The port required some changes in the MariaDB code that concerned the functionality of EXPLAIN and ANALYZE. This was done mainly by Sergey Petrunia.
-
- 16 Jan, 2016 1 commit
-
-
Alexander Barkov authored
MDEV-9408 CREATE TABLE SELECT MAX(int_column) creates different columns for table vs view There were three almost identical pieces of the code: - Field *Item_func::tmp_table_field(); - Field *Item_sum::create_tmp_field(); - Field *create_tmp_field_from_item(); with a difference in very small details (hence the bugs): Only Item_func::tmp_table_field() was correct, the other two were not. Removing the two incorrect pieces of the redundant code. Joining these three functions/methods into a single virtual method Item::create_tmp_field(). Additionally, moving Item::make_string_field() and Item::tmp_table_field_from_field_type() from the public into the protected section of the class declaration, as they are now not needed outside of Item.
-
- 14 Jan, 2016 1 commit
-
-
Alexander Barkov authored
-
- 12 Jan, 2016 1 commit
-
-
Alexander Barkov authored
MDEV-9220 Split filesort.cc:make_sortkey() and filesort.cc::sortlength() into virtual methods in Type_handler
-
- 11 Jan, 2016 1 commit
-
-
Alexander Barkov authored
Also fixes: MDEV-9391 InnoDB does not produce warnings when doing WHERE int_column=varchar_column MDEV-9337 ALTER from DECIMAL and INT to DATETIME returns a wrong result MDEV-9340 Copying from INT/DOUBLE to ENUM is inconsistent MDEV-9392 Copying from DECIMAL to YEAR is not consistent about warnings
-
- 30 Dec, 2015 2 commits
-
-
Vladislav Vaintroub authored
Fix process handle leak in buildbot. GenerateConsoleCtrlEvent sent to non-existing process will add a process handle to this non-existing process to console host process conhost.exe
-
Sergey Vojtovich authored
Fixed main.shutdown failure on Windows.
-
- 29 Dec, 2015 12 commits
-
-
Alexander Barkov authored
-
Alexander Barkov authored
-
Alexander Barkov authored
-
Alexander Barkov authored
as it's needed for Cassandra in 10.0.
-
Sergey Vojtovich authored
Perform database installation in one mysqld run. This makes mysql_install_db 3x faster.
-
Alexander Barkov authored
-
Alexander Barkov authored
-
Alexander Barkov authored
-
Sergey Vojtovich authored
Provided IBM System Z have outdated compiler version, which supports gcc sync builtins but not gcc atomic builtins. It also has weak memory model. InnoDB attempted to verify if __sync_lock_test_and_set() is available by checking IB_STRONG_MEMORY_MODEL. This macro has nothing to do with availability of __sync_lock_test_and_set(), the right one is HAVE_ATOMIC_BUILTINS.
-
Sergey Vojtovich authored
Provided IBM System Z have outdated compiler version, which supports gcc sync builtins but not gcc atomic builtins. It also has weak memory model. InnoDB attempted to verify if __sync_lock_test_and_set() is available by checking IB_STRONG_MEMORY_MODEL. This macro has nothing to do with availability of __sync_lock_test_and_set(), the right one is HAVE_ATOMIC_BUILTINS.
-
Alexander Barkov authored
-
Sergey Vojtovich authored
-