- 22 May, 2018 1 commit
-
-
Jacob Mathew authored
The failures with valgrind occur as a result of Spider sometimes using the wrong transaction for operations in background threads that send requests to the data nodes. The use of the wrong transaction caused the networking to the data nodes to use the wrong thread in some cases. Valgrind eventually detects this when such a thread is destroyed before it is used to disconnect from the data node by that wrong transaction when it is freed. I have fixed the problem by correcting the transaction used in each of these cases. Author: Jacob Mathew. Reviewer: Kentoku Shiba. Cherry-Picked: Commit afe5a51c on branch 10.2
-
- 19 May, 2018 3 commits
-
-
Sergei Golubchik authored
-
Sergei Golubchik authored
-
Sergei Golubchik authored
fix a typo that broke the main.view test followup for ef295c31
-
- 18 May, 2018 2 commits
-
-
Vladislav Vaintroub authored
It should work ok on all Unixes, but on Windows ,only worked by accident in the past, with client not being Unicode safe. It stopped working with Visual Studio 2017 15.7 update now.
-
Jacob Mathew authored
The crash occurs when a thread that is closing its connection attempts to access Spider transaction information when another thread has freed that memory while processing Spider plugin deinit. This occurs because Spider does not adjust the plugin's reference count when it sets a transaction information pointer for the plugin. The fix I implemented changes the way Spider sets the transaction information pointer to use thd_set_ha_data() so that Spider's plugin reference counter is adjusted as well. Author: Jacob Mathew. Reviewer: Kentoku Shiba. Merged From: Commit ab9d420d on branch 10.2
-
- 17 May, 2018 1 commit
-
-
Sergei Golubchik authored
When Item_insert_value needs a dummy field, use zero-length Field_string, not Field_null. The latter isn't compatible with CREATE ... SELECT.
-
- 16 May, 2018 3 commits
-
-
Monty authored
Fixed by extending unique_table() with a flag to not allow usage of the replaced table. I also cleaned up find_dup_table() to not use goto next. I also added more comments to the code in find_dup_table()
-
Sergey Vojtovich authored
Analyze core independently of max-save-datadir and max-save-core setting. Increment $num_saved_cores only if core was actually saved. "Move any core files from e.g. mysqltest" independently of max-save-datadir setting. Note: it may overwrite core from mysqld, which might not be desired (it did work this way even before).
-
Monty authored
- Added missing test case for MyISAM
-
- 15 May, 2018 3 commits
-
-
Monty authored
Problem was that if copy_data_between_tables() didn't do proper clean up in case of failures: - copy object was not properly freed - end_bulk_insert() was not called - mysql_trans_prepare_alter_copy_data() set THD->transaction.on to false which was not properly restored The last part caused a crash in Aria as Aria depends on that THD is correct. Other things: - Reset info->switched_transactional after usage (safety) - Reset bulk_insert_single_undo (safety)
-
Monty authored
MDEV-654 Assertion `share->now_transactional' failed in flush_log_for_bitmap on concurrent workload with Aria tables Problem was that we the bitmap needs to be flushed before disabling logging of redo entires, as writing the bitmap to disk by background checkpoint may cause redo entries.
-
Oleksandr Byelkin authored
Make each lex pointing to statement lex instead of global pointer in THD (no need store and restore the global pointer and put it on SP stack).
-
- 11 May, 2018 5 commits
-
-
Marko Mäkelä authored
-
Sachin Agarwal authored
Problem: When FTS index is added into a table which doesn't have 'FTS_DOC_ID' column, Innodb rebuilds table to add column 'FTS_DOC_ID'. when this FTS index is dropped from this table. Innodb doesn't not rebuild table to remove 'FTS_DOC_ID' column and deletes FTS index auxiliary tables. But it doesn't delete FTS common auxiliary tables. Later when the database having this table is renamed, FTS auxiliary tables are not renamed because table's flags2 (dict_table_t.flags2) has been resetted for DICT_TF2_FTS flag during FTS index drop operation. Now when we drop old database, it leads to an assert. Fix: During renaming of FTS auxiliary tables, ORed a condition to check if table has DICT_TF2_FTS_HAS_DOC_ID flag set. RB: 18769 Reviewed by : Jimmy.Yang@oracle.com
-
Thirunarayanan Balathandayuthapani authored
Problem: ======= Multiple insert statement in table contains FULLTEXT KEY and a FTS_DOC_ID column aborts the server if the FTS_DOC_ID exceeds FTS_DOC_ID_MAX_STEP. Solution: ======== Remove the exception for first committed insert statement. Reviewed-by: Jimmy Yang<jimmy.yang@oracle.com> RB: 18023
-
Marko Mäkelä authored
-
Marko Mäkelä authored
When Oracle fixed MDEV-13899 in their own way, they moved the condition to the only caller of PageConverter::update_records(). Thus, the merge of 5.6.40 into MariaDB added a redundant condition. PageConverter::update_records(): Move the page_is_leaf() condition to the only caller, PageConverter::update_index_page().
-
- 10 May, 2018 3 commits
-
-
Alexey Botchkov authored
QUERY_DML_NO_SELECT flag added.
-
Alexey Botchkov authored
QUERY_DML_NO_SELECT flag added.
-
Alexey Botchkov authored
QUERY_DML_NO_SELECT flag added.
-
- 09 May, 2018 5 commits
-
-
Daniel Bartholomew authored
-
Sergei Golubchik authored
-
Marko Mäkelä authored
-
Marko Mäkelä authored
The problem is hard to repeat, and I failed to create a deterministic test case. Online index creation creates stubs for to-be-created indexes. If index creation fails, we could remove these stubs while locks exist in the indexes. (This would require that the index creation was completed, and a concurrent DML operation acquired a lock on a record in the uncommitted index. If a duplicate key error occurs in an uncommitted index, the error will be reported for the CREATE UNIQUE INDEX, not for the DML operation that tried to insert the duplicate.) dict_table_try_drop_aborted(), row_merge_drop_indexes(): If transactional locks exist on the table, keep the table->indexes intact.
-
Jan Lindström authored
Remove the setup_ports function call. This is related to https://github.com/MariaDB/server/pull/717 Thanks to Daniel Black and Bart S.
-
- 08 May, 2018 6 commits
-
-
Vladislav Vaintroub authored
The reason is the missing HAVE_OPENSSL define for mariabackup.
-
Vicențiu Ciorbaru authored
The following variables are used in this project, but they are set to NOTFOUND. LZ4_LIBS The reason for the failure is that pkg_check_modules will not guarantee <prefix>_LIBRARY_DIRS variable to be set, according to documentation. When it's not set, we would force find_library to look in an empty path and thus fail to correctly find LZ4_LIBS, although pck_check_modules did previously discover that the library is installed. To fix the problem and still keep the logic of first following LIBLZ4_LIBRARY_DIRS and *then* look at other paths, we call find_library twice. This is the recommended approach, according to CMake 3.11 documentation.
-
Sergei Golubchik authored
-
Sergey Vojtovich authored
-fno-tree-loop-vectorize is only supported by gcc versions >5.
-
Sergei Golubchik authored
MDEV-15216 Assertion `! is_set() || m_can_overwrite_status' failed in Diagnostics_area::set_error_status upon operation inside XA don't implicitly commit or rollback in mysql_admin_table() unless the statement has CF_IMPLICIT_COMMIT_END flag.
-
Sergei Golubchik authored
-
- 07 May, 2018 4 commits
-
-
Elena Stepanova authored
-
Sergei Golubchik authored
-
Marko Mäkelä authored
-
Marko Mäkelä authored
ha_innobase::commit_inplace_alter_table(): Defer the freeing of ctx->trx until after the operation has been successfully committed. In this way, rollback on a partitioned table will be possible. rollback_inplace_alter_table(): Handle ctx->new_table == NULL when ctx->trx != NULL.
-
- 06 May, 2018 1 commit
-
-
Sergei Golubchik authored
-
- 05 May, 2018 2 commits
-
-
Sergei Golubchik authored
don't memcmp beyond the first argument's end Also: use my_strcasecmp(table_alias_charset), like elsewhere, not memcmp
-
Sergei Golubchik authored
-
- 04 May, 2018 1 commit
-
-
Marko Mäkelä authored
If the tablespace is dropped or truncated after the space->is_stopping() check in fil_crypt_get_page_throttle_func(), we would proceed to request the page, and eventually report a fatal error. buf_page_get_gen(): Do not retry reading if mode==BUF_GET_POSSIBLY_FREED. lock_rec_block_validate(): Be prepared for a NULL return value when invoking buf_page_get_gen() with mode=BUF_GET_POSSIBLY_FREED.
-