- 05 Jan, 2018 6 commits
-
-
Igor Babaev authored
using VIEW and WITH RECURSIVE. The cause of this crash was the same as of the crash reported in mdev-14755.
-
Igor Babaev authored
with condition_pushdown_for_derived=on This bug is a consequence of the bug mdev-14368 fixed in 5.5.59.
-
Igor Babaev authored
If the specification of a CTE contains a reference to a temporary table then THD::open_temporary_table() must be called for this reference for any occurrence of the CTE in the query. By mistake this was done only for the first occurrences of CTEs. The patch fixes this problem in With_element::clone_parsed_spec(). It also moves there the call of check_dependencies_in_with_clauses() to its proper place before the call of check_table_access(). Additionally the patch optimizes the number of calls of the function check_dependencies_in_with_clauses().
-
Marko Mäkelä authored
-
Marko Mäkelä authored
row_sel_get_clust_rec_for_mysql(): Look up the page from the buffer pool, similar to how MySQL 5.7 does it.
-
Aleksey Midenkov authored
debug_key_management encrypt_and_grep innodb_encryption If real table count is different from what is expected by the test, it just hangs on waiting to fulfill hardcoded number. And then exits with **failed** after 10 minutes of wait: quite unfriendly and hard to figure out what's going on.
-
- 04 Jan, 2018 8 commits
-
-
Marko Mäkelä authored
-
Marko Mäkelä authored
-
Marko Mäkelä authored
-
Marko Mäkelä authored
Fix and enable some of the tests; some remain disabled. The tests innodb_gis.rtree_old and innodb_gis.row_format duplicated some versions of the test main.gis-rtree. Instead of duplicating, source that test, in a new test innodb_gis.innodb_gis_rtree. Introduce innodb_row_format.combinations. Due to this, ROW_FORMAT=COMPRESSED will not be covered in some tests where it is covered in MySQL 5.7.
-
Marko Mäkelä authored
The function rtr_update_mbr_field_in_place() is generating MLOG_REC_UPDATE_IN_PLACE or MLOG_COMP_REC_UPDATE_IN_PLACE records on non-leaf pages, even though MLOG_WRITE_STRING would perfectly suffice for updating a fixed-length data field. btr_cur_parse_update_in_place(): If flags==7, the record may be from rtr_update_mbr_field_in_place(), and we must check if the page is a leaf page. Otherwise, assume that it is. btr_cur_update_in_place(): Assert that the page is a leaf page.
-
Daniel Bartholomew authored
-
Monty authored
Other things, mainly to get create_mysqld_error_find_printf_error tool to work: - Added protection to not include mysqld_error.h twice - Include "unireg.h" instead of "mysqld_error.h" in server - Added protection if ER_XX messages are already defined - Removed wrong calls to my_error(ER_OUTOFMEMORY) as my_malloc() and my_alloc will do this automatically - Added missing %s to ER_DUP_QUERY_NAME - Removed old and wrong calls to my_strerror() when using MY_ERROR_ON_RENAME (wrong merge) - Fixed deadlock error message from Galera. Before the extra information given to ER_LOCK_DEADLOCK was missing because ER_LOCK_DEADLOCK doesn't provide any extra information. I kept #ifdef mysqld_error_find_printf_error_used in sql_acl.h to make it easy to do this kind of check again in the future
-
Sergei Petrunia authored
-
- 03 Jan, 2018 7 commits
-
-
Marko Mäkelä authored
-
Marko Mäkelä authored
-
Marko Mäkelä authored
-
Marko Mäkelä authored
-
Marko Mäkelä authored
-
Marko Mäkelä authored
trx_undo_page_report_modify(): For SPATIAL INDEX, keep logging updated off-page columns twice, so that the minimum bounding rectangle (MBR) will be logged. Avoiding the redundant logging would require larger changes to the undo log format. row_build_index_entry_low(): Handle SPATIAL_UNKNOWN more robustly, by refusing to purge the record from the spatial index. We can get this code when processing old undo log from 10.2.10 or 10.2.11 (the releases affected by MDEV-14799, which was a regression from MDEV-14051).
-
Marko Mäkelä authored
The InnoDB background tasks can modify tables while LOCK TABLES...WRITE is in effect. The purge of InnoDB history always worked like this in MariaDB, but in MySQL 5.7 it sometimes yields to LOCK TABLES. Also, make gcol.innodb_virtual_index run the purge for an UPDATE before DROP TABLE is executed.
-
- 02 Jan, 2018 8 commits
-
-
Monty authored
This is to be able to better track where things goes wrong
-
Monty authored
-
Monty authored
Make rpl_ctype_latin1 more portable by printing names in hex Also only run if lower_case_table_names is 0, as this affects the result
-
Marko Mäkelä authored
-
Marko Mäkelä authored
-
Varun Gupta authored
up fix for MDEV-12458
-
Marko Mäkelä authored
trx_undo_rec_get_partial_row(): When the PRIMARY KEY includes a column prefix of an externally stored column, the already parsed part of the undo log record may contain a reference to an off-page column. This is the case in the bug58912 test in innodb.innodb.
-
Marko Mäkelä authored
This is a regression caused by MDEV-14051 'Undo log record is too big.' Purge in the secondary index is wrongly skipped in row_purge_upd_exist_or_extern() because node->row only does not contain all indexed columns. trx_undo_rec_get_partial_row(): Add the parameter for node->update so that the updated columns will be copied from the initial part of the undo log record.
-
- 01 Jan, 2018 5 commits
-
-
Monty authored
Disabled warnings for directory option as this is depending on compilation options.
-
Monty authored
-
Monty authored
Code in QUICK_RANGE_SELECT::init_ror_merged_scan() could theoretically have caused crashes if this was ever called from an update or delete This also found a bug in the vcol/range.result. file.
-
Monty authored
-
Monty authored
-
- 31 Dec, 2017 1 commit
-
-
Varun Gupta authored
Added a system variabe rocsdb_git_hash to MyRocks which tell us the version of RocksDB being used
-
- 30 Dec, 2017 1 commit
-
-
Varun Gupta authored
Currently explain format=json does not show the order direction of fields used during filesort. This patch would remove this limitation
-
- 29 Dec, 2017 3 commits
-
-
Elena Stepanova authored
-
Sergey Vojtovich authored
Locked_tables_list::unlock_locked_tables Similarly to regular DROP TABLE, don't leave locked tables mode if CREATE OR REPLACE dropped temporary table but failed to cerate new one. The problem is that there's no track of which temporary table was "locked" by LOCK TABLES.
-
Vicențiu Ciorbaru authored
-
- 28 Dec, 2017 1 commit
-
-
Vicențiu Ciorbaru authored
Window definitions are resolved during fix fields. Updating used tables for window functions must be done after all window functions have had a chance to be resolved. There was an additional problem with the implementation: expressions that contained window functions never updated the expression's used tables. To fix both these issues, make sure to call "update_used_tables" on all items that contain window functions after we have passed through all items.
-