- 13 Sep, 2017 6 commits
-
-
Marko Mäkelä authored
In online table-rebuilding ALTER TABLE (LOCK=NONE), virtual column values are being written to the online_log. WL#8149 in MySQL 5.7 changed some low-level functions that are also being used outside row0log.cc, causing performance penalty to other code. We revert those changes, and introduce separate functions for writing the virtual column values. The only functional change should be the one that is mentioned in MDEV-13795: row_log_table_low_redundant() will no longer write virtual column values along with old_pk, just like row_log_table_low(). As noted in MDEV-13795, some forms of table-rebuilding ALTER with virtual columns is broken. At least DROP PRIMARY KEY, ADD PRIMARY KEY is broken. rec_get_converted_size_temp(), rec_convert_dtuple_to_temp(): Remove the parameter for passing virtual column values. rec_get_converted_size_temp_v(), rec_convert_dtuple_to_temp_v(): New functions for appending virtual column values to the online_log. rec_get_converted_size_comp_prefix_low(), rec_convert_dtuple_to_rec_comp(): Remove the v_entry parameter, and do not allow n_fields=0.
-
Marko Mäkelä authored
The InnoDB purge subsystem can be best stopped by opening a read view, for example by START TRANSACTION WITH CONSISTENT SNAPSHOT. To ensure that everything is purged, use wait_all_purged.inc, which waits for the History list length in SHOW ENGINE INNODB STATUS to reach 0. Setting innodb_purge_run_now never guaranteed this.
-
Marko Mäkelä authored
This also avoids hitting the hang at server shutdown. That hang should be fixed, of course.
-
Marko Mäkelä authored
-
Alexander Barkov authored
-
Alexey Botchkov authored
set_charset() calls added for Item_func_json_arran and Item_func_json_object::val_str-s.
-
- 12 Sep, 2017 13 commits
-
-
Alexey Botchkov authored
Set default charset for temporary paths so UDF call don't crash.
-
Alexey Botchkov authored
JSON_QUOTE return type set to be JSON.
-
Alexey Botchkov authored
Tests added.
-
Alexey Botchkov authored
'=0' added to meke the compiler happy.
-
Alexey Botchkov authored
An extra ',' added to the JSON_MERGE result making it invalid.
-
Alexey Botchkov authored
Superfluous ',' was added to the JSON_SET result so it became invalid.
-
Sergei Petrunia authored
Part#2: stabilize the test output
-
Alexey Botchkov authored
Condition was fixed.
-
Marko Mäkelä authored
This fixes several InnoDB bugs related to innodb_encrypt_log and two Mariabackup --backup bugs. log_crypt(): Properly derive the initialization vector from the start LSN of each block. Add a debug assertion. log_crypt_init(): Note that the function should only be used when creating redo log files and that the information is persisted in the checkpoint pages. xtrabackup_copy_log(): Validate data_len. xtrabackup_backup_func(): Always use the chosen checkpoint buffer. log_group_write_buf(), log_write_up_to(): Only log_crypt() the redo log payload, not the padding bytes. innobase_start_or_create_for_mysql(): Do not invoke log_crypt_init() or initiate a redo log checkpoint. recv_find_max_checkpoint(): Return the contents of LOG_CHECKPOINT_NO to xtrabackup_backup_func() in log_sys->next_checkpoint_no.
-
Marko Mäkelä authored
-
Alexey Botchkov authored
Implementation for the reverse spatial predicates was lost somehow.
-
Alexey Botchkov authored
Let's check the validity to the end of the JSON.
-
Vladislav Vaintroub authored
Implement lock-ddl-per-table option that locks tables before it is copied to backup, and helds the lock until backup finished The "DDL-lock" itself is implemented as "SELECT * from <table> LIMIT 0", inside a transaction, and "COMMIT" of this transaction is the DDL-unlock.
-
- 11 Sep, 2017 1 commit
-
-
Oleksandr Byelkin authored
Now we allow derived in the from clause of subqueries so set flag which prevent optimisation of subqueries during view creation before derived processing so subquery will be correctly printed in the view .frm.
-
- 08 Sep, 2017 5 commits
-
-
Marko Mäkelä authored
-
Marko Mäkelä authored
trx_undo_assign_undo(): Restore the fault injection.
-
Marko Mäkelä authored
Import the test innodb.alter_crash
-
Marko Mäkelä authored
The redo log is divided into 512-byte blocks. Sometimes, some of the strings end up at a block boundary and will not be found. Look for only one match.
-
Vladislav Vaintroub authored
-
- 07 Sep, 2017 6 commits
-
-
Vladislav Vaintroub authored
full server recovery is performed . We start "mysqld" with --bootstrap and pass bootstrap script consisting of several FLUSH TABLES FOR export/ UNLOCK TABLES
-
Marko Mäkelä authored
-
Marko Mäkelä authored
-
Marko Mäkelä authored
recv_reset_logs(): Initialize the redo log buffer, so that no data from the old redo log can be written to the new redo log. This bug has very little impact before MariaDB 10.2. The innodb_log_encrypt option that was introduced in MariaDB 10.1 increases the impact. If the redo log used to be encrypted, and it is being resized and encryption disabled, then previously encrypted data could end up being written to the new redo log in clear text. This resulted in encryption.innodb_encrypt_log test failures in MariaDB 10.2.
-
Marko Mäkelä authored
The SEARCH_ABORT logic was not working as intended (tests were not being aborted).
-
Marko Mäkelä authored
In XtraDB, buf_block_get_frame() can return NULL, and this value can be passed to buf_page_print(). Do not declare the parameter as nonnull.
-
- 06 Sep, 2017 9 commits
-
-
Marko Mäkelä authored
-
Marko Mäkelä authored
-
Marko Mäkelä authored
The files ibtmp1 and ib_buffer_pool are sometimes created, sometimes not. Remove them if they exist.
-
Marko Mäkelä authored
-
Oleksandr Byelkin authored
MDEV-13523: Group By in a View, called within a Stored Routine causes Error Code 1356 when a non-root user runs the routine for a second time it is actually test suite for second code chunk fix in MDEV-13439
-
Marko Mäkelä authored
The bug only affects ROW_FORMAT=DYNAMIC tables. It is reproducible already with 2 records in the table. Keep testing with ROW_FORMAT=REDUNDANT just in case.
-
Marko Mäkelä authored
The bug only affected innodb_page_size=64k. There is no point running the test with smaller page sizes.
-
Marko Mäkelä authored
-
Marko Mäkelä authored
buf_page_print(): Remove the parameter 'flags', and when a server abort is intended, perform that in the caller. In this way, page corruption reports due to different reasons can be distinguished better. This is non-functional code refactoring that does not fix any page corruption issues. The change is only made to avoid falsely grouping together unrelated causes of page corruption.
-