- 07 Jan, 2020 10 commits
-
-
Eugene Kosov authored
-
Marko Mäkelä authored
-
Marko Mäkelä authored
The test encryption.innodb-redo-badkey will by design cause access to pages that appear corrupted (due to incorrect encryption key). Let us disable the page dumps by requiring the test to be run on a debug server. Page dumps on debug builds were already disabled in MDEV-19766.
-
Elena Stepanova authored
-
Marko Mäkelä authored
-
Thirunarayanan Balathandayuthapani authored
- For partition table, tbl_name_len is calculated wrongly. So it leads to this uninitialised value warnings
-
Marko Mäkelä authored
-
Marko Mäkelä authored
By default (innodb_strict_mode=ON), InnoDB attempts to guarantee at DDL time that any INSERT to the table can succeed. MDEV-19292 recently revised the "row size too large" check in InnoDB. The check still is somewhat inaccurate; that should be addressed in MDEV-20194. Note: If a table contains multiple long string columns so that each column is part of a column prefix index, then an UPDATE that attempts to modify all those columns at once may fail, because the undo log record might not fit in a single undo log page (of innodb_page_size). In the worst case, the undo log record would grow by about 3KiB of for each updated column. The DDL-time check (since the InnoDB Plugin for MySQL 5.1) is optional in the sense that when the maximum B-tree record size or undo log record size would be exceeded, the DML operation will fail and the transaction will be properly rolled back. create_table_info_t::row_size_is_acceptable(): Add the parameter 'bool strict' so that innodb_strict_mode=ON can be overridden during TRUNCATE, OPTIMIZE and ALTER TABLE...FORCE (when the storage format is not changing). create_table_info_t::create_table(): Perform a sloppy check for TRUNCATE TABLE (create_fk=false). prepare_inplace_alter_table_dict(): Perform a sloppy check for simple operations. trx_is_strict(): Remove. The function became unused in commit 98694ab0 (MDEV-20949).
-
Jan Lindström authored
Modify configuration so that all nodes are part of galera cluster i.e. wsrep_on=ON. Add missing wait conditions. test changes only.
-
Marko Mäkelä authored
-
- 06 Jan, 2020 1 commit
-
-
Monty authored
-
- 05 Jan, 2020 1 commit
-
-
Eugene Kosov authored
log_t::files::fdatasync(): syncs only data for every log file os_file_flush_data() pfs_os_file_flush_data_func(): syncs only data for a given file
-
- 04 Jan, 2020 1 commit
-
-
Eugene Kosov authored
Features: * STL-like interface * Fast modification: no branches on insertion or deletion * Fast iteration: one pointer dereference and one pointer comparison * Your class can be a part of several lists Modeled after std::list<T> but currently has fewer methods (not complete yet) For even more performance it's possible to customize list with templates so it won't have size counter variable or won't NULLify unlinked node. How existing lists differ? No existing lists support STL-like interface. I_List: * slower iteration (one more branch on iteration) * element can't be a part of two lists simultaneously I_P_List: * slower modification (branches, except for the fastest push_back() case) * slower iteration (one more branch on iteration) UT_LIST_BASE_NODE_T: * slower modification (branches) Three UT_LISTs were replaced: two in fil_system_t and one in dyn_buf_t.
-
- 03 Jan, 2020 9 commits
-
-
Varun Gupta authored
-
Eugene Kosov authored
-
Marko Mäkelä authored
We missed this in commit 89633995.
-
Marko Mäkelä authored
-
Oleksandr Byelkin authored
-
Oleksandr Byelkin authored
-
Oleksandr Byelkin authored
-
Oleksandr Byelkin authored
-
Oleksandr Byelkin authored
Moved to the next problematic year (2038).
-
- 02 Jan, 2020 3 commits
-
-
Marko Mäkelä authored
mtr_t::commit_files(): Renamed from mtr_t::commit_checkpoint(). Remove the redundant bool parameter, and instead use checkpoint_lsn=0 to indicate that no checkpoint marker should be written.
-
Jan Lindström authored
Modify configuration so that all nodes are part of galera cluster i.e. wsrep_on=ON.
-
Varun Gupta authored
For Item_direct_view_ref , get value from val_* methods instead of result* family The val_* methods gets value from the item on which it is referred.
-
- 01 Jan, 2020 1 commit
-
-
Eugene Kosov authored
Redo log subsystem was decoupled from tablespace subsystem. It now manages file descriptors for redo log files by itself. FIL_TYPE_LOG: removed, code in various places was simplified SRV_LOG_SPACE_FIRST_ID: renamed to SRV_SPACE_ID_UPPER_BOUND to better match its purpose. Code in various places was simplified fil_n_log_flushes: replaced with log_sys::flushes fil_n_pending_log_flushes: replaced with log_sys::pending_flushes log_t::files::files: redo log file descriptors log_t::files::file_names: redo log file names log_t::files::set_file_names(): set file names without opening them log_t::files::open_files(): opens redo log files log_t::files::read(): treats several files as one big log_t::files::write(): treats several files as one big log_t::files::fsync(): flushes page cache to disk log_t::files::close_files(): closes redo log files fil_open_log_and_system_tablespace_files(): renamed to fil_open_system_tablespace_files() and obviously it now doesn't open redo log files global files[1000]: removed. Why it was needed at all?
-
- 31 Dec, 2019 2 commits
-
-
Jan Lindström authored
galera_parallel_autoinc_largetrx to stabilize it.
-
Teemu Ollakka authored
Assertion failed in wsrep-lib after transaction replay which failed due to conflict in certification. - Implemented reproducible test case MDEV-20793 to reproduce the crash. - Fixed wsrep-lib to deal with certification error during replay.
-
- 30 Dec, 2019 5 commits
-
-
Marko Mäkelä authored
buf_flush_init_for_writing(): If innodb_checksum_algorithm=full_crc32, return even earlier. The logic to reset garbage FIL_PAGE_TYPE fields applies to data pages in old data files that were last written before commit 3926673c was introduced. When innodb_checksum_algorithm=full_crc32 is in effect, it only applies to newly created data files. A file that was created in full_crc32 format will keep that format. Other files will keep some other format than full_crc32. Hence, the garbage-resetting logic does not apply full_crc32 files.
-
Marko Mäkelä authored
The 8 bytes at FIL_PAGE_FILE_FLUSH_LSN_OR_KEY_VERSION will be overwritten at page flush, in buf_page_encrypt_before_write(), ever since commit 765a4360 (MariaDB 10.1.23, 10.2.6, 10.3.1). btr_store_big_rec_extern_fields(): Remove useless writes to the page header (and to the redo log) for ROW_FORMAT=COMPRESSED BLOB pages.
-
Marko Mäkelä authored
-
Marko Mäkelä authored
-
Marko Mäkelä authored
btr_cur_pessimistic_insert(): Relax a too strict debug assertion that would fail when the function is invoked by btr_cur_pessimistic_update() during innobase_add_instant_try(), that is, when updating the hidden metadata record during a subsequent ADD COLUMN operation involves splitting the leftmost clustered index leaf page. This is a partial backport of 301bd62b from 10.4.
-
- 29 Dec, 2019 2 commits
-
-
Nikita Malyavin authored
Cause: * row_start != 0 treated as it exists. Probably, possible row permutations had not been taken in mind. Solution: * Checking both row_start and row_end is correct, so versioned() function is used
-
Nikita Malyavin authored
MDEV-18875 Assertion `thd->transaction.stmt.ha_list == __null || trans == &thd->transaction.stmt' failed or bogus ER_DUP_ENTRY upon ALTER TABLE with versioning Cause: * when autocommit=0 (or transaction is issued by user), `ha_commit_trans` is called twice on ALTER TABLE, causing a duplicated insert into `transaction_registry` (ER_DUP_ENTRY). Solution: * ALTER TABLE makes an implicit commit by a second call. We actually need to make an insert only when it is a real commit. So is_real variable is additionally checked.
-
- 27 Dec, 2019 5 commits
-
-
Sergei Golubchik authored
Instead of trying to detect MinProtocol=TLSv1.2 in all possible sections of files in all possible locations where openssl is configured to find its configuration in all possible distros (and these locations are mutually different in Debian, Ubuntu, and RHEL, btw) - just make mtr to instruct openssl not to read any config files at all.
-
Marko Mäkelä authored
-
Marko Mäkelä authored
-
Marko Mäkelä authored
-
Marko Mäkelä authored
-