- 14 May, 2019 4 commits
-
-
Marko Mäkelä authored
-
Marko Mäkelä authored
-
Daniel Bartholomew authored
-
Oleksandr Byelkin authored
-
- 13 May, 2019 12 commits
-
-
Elena Stepanova authored
-
Marko Mäkelä authored
-
Marko Mäkelä authored
In MySQL 5.7.8 an extra level of pointer indirection was added to dict_operation_lock and some other rw_lock_t without solid justification, in mysql/mysql-server@52720f1772f9f424bf3dd62fa9c214dd608cd036. Let us revert that change and remove the rather useless rw_lock_t constructor and destructor and the magic_n field. In this way, some unnecessary pointer dereferences and heap allocation will be avoided and debugging might be a little easier.
-
Vladislav Vaintroub authored
-
Marko Mäkelä authored
-
Vladislav Vaintroub authored
String is not guaranteed to be null-terminated, thus push_warning_printf also needs to specify the length.
-
Marko Mäkelä authored
Try to fix the race conditions between SET GLOBAL innodb_ft_aux_table = ...; and access to the INFORMATION_SCHEMA tables that depend on this variable. innodb_ft_aux_table: Replaces fts_internal_tbl_name,fts_internal_tbl_name2. Just store the user-specified parameter as is. innodb_ft_aux_table_id: The table_id corresponding to SET GLOBAL innodb_ft_aux_table, or 0 if the table does not exist or does not contain FULLTEXT INDEX. If the table is renamed later, the INFORMATION_SCHEMA tables will continue to refer to the table. If the table is dropped or rebuilt, the INFORMATION_SCHEMA tables will not find the table.
-
Marko Mäkelä authored
With SET GLOBAL innodb_optimize_fulltext_only=1 in effect, OPTIMIZE TABLE would output words from the fulltext index to the server error log, even in non-debug builds. fts_optimize_words(): Remove the unwanted output.
-
Vladislav Vaintroub authored
-
Marko Mäkelä authored
-
Marko Mäkelä authored
row_insert_for_mysql(): Correct the grammar error, and display the table name in both messages.
-
Marko Mäkelä authored
In the merge c51f85f8 the files row0trunc.cc and read0read.cc were not supposed to be changed in MariaDB 10.3. The row0trunc.cc code that was changed in MariaDB 10.2 commit 3db94d24 does not exist, because it was removed earlier in 10.3 commit 5a1868b5. When it comes to read0read.cc, as explained in the 10.2 commit e0271a7b the code had been moved to trx0sys.h in 10.3. In 10.3 commit 380069c2 appproriate mutex protection was added to checking the transaction system state. The assertion expression was properly updated in the earlier merge commit acf6f92a.
-
- 12 May, 2019 1 commit
-
-
Oleksandr Byelkin authored
-
- 11 May, 2019 5 commits
-
-
Vicențiu Ciorbaru authored
-
Vicențiu Ciorbaru authored
* Update wrong zip-code
-
Vicențiu Ciorbaru authored
-
Vicențiu Ciorbaru authored
-
Vicențiu Ciorbaru authored
Some places didn't match the previous rules, making the Floor address wrong. Additional sed rules: sed -i -e 's/Place.*Suite .*, Boston/Street, Fifth Floor, Boston/g' sed -i -e 's/Suite .*, Boston/Fifth Floor, Boston/g'
-
- 10 May, 2019 10 commits
-
-
Michal Schorm authored
This commit is based on the work of Michal Schorm, rebased on the earliest MariaDB version. Th command line used to generate this diff was: find ./ -type f \ -exec sed -i -e 's/Foundation, Inc., 59 Temple Place, Suite 330, Boston, /Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, /g' {} \; \ -exec sed -i -e 's/Foundation, Inc. 59 Temple Place.* Suite 330, Boston, /Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, /g' {} \; \ -exec sed -i -e 's/MA.*.....-1307.*USA/MA 02110-1335 USA/g' {} \; \ -exec sed -i -e 's/Foundation, Inc., 59 Temple/Foundation, Inc., 51 Franklin/g' {} \; \ -exec sed -i -e 's/Place, Suite 330, Boston, MA.*02111-1307.*USA/Street, Fifth Floor, Boston, MA 02110-1335 USA/g' {} \; \ -exec sed -i -e 's/MA.*.....-1307/MA 02110-1335/g' {} \;
-
Monty authored
-
Marko Mäkelä authored
row_purge_upd_exist_or_extern_func(): Check for node->vcol_op_failed() after row_purge_remove_sec_if_poss(), like row_purge_del_mark() did. This avoids us dereferencing the node->table=NULL pointer. The test case, submitted by Elena Stepanova, is not deterministic and does not repeat the bug on 10.2. With the added loop, for me, it reliably crashes 10.3 without the fix. I was unable to create a deterministic test case for either 10.2 or 10.3. Reviewed by Thirunarayanan Balathandayuthapani
-
Marko Mäkelä authored
-
Thirunarayanan Balathandayuthapani authored
buf_dblwr_process(): Remove the useless warning that a copy of a page in the doublewrite buffer is corrupted. We already report an error if a corrupted page cannot be recovered from the doublewrite buffer. Note: In MariaDB 10.1, the original bug reported in MDEV-13893 could still be easily repeatable. In MariaDB 10.2.24, MDEV-12699 should have reduced the probability considerably.
-
Marko Mäkelä authored
fts_get_table_name(): Add the parameter bool dict_locked=false.
-
Marko Mäkelä authored
fts_get_table_name(): Output to a caller-allocated buffer. fts_get_table_name_prefix(): Use the lower-overhead allocation ut_malloc() instead of mem_alloc(). This is based on mysql/mysql-server@d1584b9f38ff0bcf609d181db35f74108e022168 in MySQL 5.7.4.
-
Marko Mäkelä authored
fts_table_t::parent: Remove the redundant field. Refer to table->name.m_name instead. fts_update_sync_doc_id(), fts_update_next_doc_id(): Remove the redundant parameter table_name. fts_get_table_name_prefix(): Access the dict_table_t::name. FIXME: Ensure that this access is always covered by dict_sys->mutex.
-
Marko Mäkelä authored
fts_state_t, fts_slot_t::state: Remove. Replaced by fts_slot_t::running and fts_slot_t::table_id as follows. FTS_STATE_SUSPENDED: Removed (unused). FTS_STATE_EMPTY: Removed. table_id=0 will denote empty slots. FTS_STATE_RUNNING: Equivalent to running=true. FTS_STATE_LOADED, FTS_STATE_DONE: Equivalent to running=false. fts_slot_t::table: Remove. Tables will be identified by table_id. After opening a table, we will check fil_table_accessible() before accessing the data. fts_optimize_new_table(), fts_optimize_del_table(), fts_optimize_how_many(), fts_is_sync_needed(): Remove the parameter tables, and use the static variable fts_slots (which was introduced in MariaDB 10.2) instead.
-
Eugene Kosov authored
No functional change. Call my_timer_init() only once and then reuse it from InnoDB and perfschema storage engines. This patch speeds up empty test for me like this: ./mtr -mem innodb.kevg,xtradb 1.21s user 0.84s system 34% cpu 5.999 total ./mtr -mem innodb.kevg,xtradb 1.12s user 0.60s system 31% cpu 5.385 total
-
- 09 May, 2019 7 commits
-
-
Daniel Bartholomew authored
-
Vladislav Vaintroub authored
The crash happens when writing into log file. The reason is likely that the call to WriteFile() was missing a valid parameter for lpNumberOfBytesWritten. This seems only to happen on ancient version of Windows. Since the fix to MDEV-16430 in 141bc58a, null pointer was passed instead of valid pointer. The fix is to provide a valid lpNumberOfBytesWritten parameter.
-
Marko Mäkelä authored
Avoid accessing the table cache while the ALTER TABLE statement is blocked by DEBUG_SYNC. Use explicit COMMIT for forcing the redo log flush (whose main purpose is to ensure that the incomplete state of the blocked ALTER TABLE statement is persisted).
-
Marko Mäkelä authored
Ensure that the 'auxiliary transactions' that are there for flushing the incomplete undo log of the to-be-recovered DDL transactions are actually making modifications. This is a backport of 2fe40a7a from MariaDB 10.4.
-
Rasmus Johansson authored
-
Sergey Vojtovich authored
-
Sergey Vojtovich authored
A sequel to 9180e866 and 149b7547. ALTER TABLE ... ADD FOREIGN KEY may crash if parent table is updated concurrently. Block FK parent table updates even earlier, before intermediate child table is created. Use proper charset info for my_casedn_str() and don't update original identifiers so that lower_cast_table_names == 2 is honoured.
-
- 08 May, 2019 1 commit
-
-
Jan Lindström authored
-