- 20 Feb, 2018 7 commits
-
-
Marko Mäkelä authored
This is based on a prototype by Thirunarayanan Balathandayuthapani <thiru@mariadb.com>. Binlog and Galera write-set replication information was written into TRX_SYS page on each commit. Instead of writing to the TRX_SYS during normal operation, InnoDB can make use of rollback segment header pages, which are already being written to during a commit. The following list of fields in rollback segment header page are added: TRX_RSEG_BINLOG_OFFSET TRX_RSEG_BINLOG_NAME (NUL-terminated; empty name = not present) TRX_RSEG_WSREP_XID_FORMAT (0=not present; 1=present) TRX_RSEG_WSREP_XID_GTRID TRX_RSEG_WSREP_XID_BQUAL TRX_RSEG_WSREP_XID_DATA trx_sys_t: Introduce the fields recovered_binlog_filename, recovered_binlog_offset, recovered_wsrep_xid. To facilitate upgrade from older mysql or mariaDB versions, we will read the information in TRX_SYS page. It will be overridden by the information that we find in rollback segment header pages. Mariabackup --prepare will read the metadata from the rollback segment header pages via trx_rseg_array_init(). It will still not read any undo log pages or recover any transactions.
-
Marko Mäkelä authored
-
Eugene Kosov authored
-
Marko Mäkelä authored
my_atomic_load32() expects a pointer to non-const on Windows.
-
Eugene Kosov authored
Fixes this report: ==3165==ERROR: AddressSanitizer: use-after-poison on address 0x61e0000270a0 at pc 0x00000114b78c bp 0x7f15d65fe120 sp 0x7f15d65fd8d0 WRITE of size 1366 at 0x61e0000270a0 thread T28 #0 0x114b78b in __asan_memcpy fun/cpp_projects/llvm_toolchain/llvm/projects/compiler-rt/lib/asan/asan_interceptors_memintrinsics.cc:23 #1 0x208208d in TABLE::init(THD*, TABLE_LIST*) work/mariadb/sql/table.cc:4662:3 #2 0x19df85b in open_table(THD*, TABLE_LIST*, Open_table_context*) work/mariadb/sql/sql_base.cc:1993:10 #3 0x19eb968 in open_and_process_table(THD*, LEX*, TABLE_LIST*, unsigned int*, unsigned int, Prelocking_strategy*, bool, Open_table_context*) work/mariadb/sql/sql_base.cc:3483:14 #4 0x19e7c05 in open_tables(THD*, DDL_options_st const&, TABLE_LIST**, unsigned int*, unsigned int, Prelocking_strategy*) work/mariadb/sql/sql_base.cc:4001:14 #5 0x19f4dac in open_and_lock_tables(THD*, DDL_options_st const&, TABLE_LIST*, bool, unsigned int, Prelocking_strategy*) work/mariadb/sql/sql_base.cc:4879:7 #6 0x1627263 in open_and_lock_tables(THD*, TABLE_LIST*, bool, unsigned int) work/mariadb/sql/sql_base.h:487:10 #7 0x1c3839c in mysql_execute_command(THD*) work/mariadb/sql/sql_parse.cc:5113:13 #8 0x1c1b72c in mysql_parse(THD*, char*, unsigned int, Parser_state*, bool, bool) work/mariadb/sql/sql_parse.cc:7980:18 #9 0x1c13464 in handle_bootstrap_impl(THD*) work/mariadb/sql/sql_parse.cc:1044:5 #10 0x1c11ff7 in do_handle_bootstrap(THD*) work/mariadb/sql/sql_parse.cc:1096:3 #11 0x1c11d14 in handle_bootstrap work/mariadb/sql/sql_parse.cc:1079:3 #12 0x115a6ae in __asan::AsanThread::ThreadStart(unsigned long, __sanitizer::atomic_uintptr_t*) fun/cpp_projects/llvm_toolchain/llvm/projects/compiler-rt/lib/asan/asan_thread.cc:259 #13 0x7f15fe1407fb in start_thread (/lib/x86_64-linux-gnu/libpthread.so.0+0x77fb) #14 0x7f15fbb64b5e in clone /build/glibc-itYbWN/glibc-2.26/misc/../sysdeps/unix/sysv/linux/x86_64/clone.S:95
-
Marko Mäkelä authored
-
Marko Mäkelä authored
trx_sys_t::rseg_history_len: Make private, and clarify the documentation. trx_sys_t::history_size(): Read rseg_history_len. trx_sys_t::history_insert(), trx_sys_t::history_remove(), trx_sys_t::history_add(): Update rseg_history_len.
-
- 19 Feb, 2018 8 commits
-
-
Alexey Botchkov authored
sql_yacc_ora.yy fixed.
-
Marko Mäkelä authored
-
Marko Mäkelä authored
-
Monty authored
MDEV 15105 "Bytes lost and Assertion `global_status_var.global_memory_used == 0' fails on shutdown after attempts to LOCK/RENAME sequence"
-
Monty authored
MDEV-12887 UT_LIST_GET_LEN(trx->lock.trx_locks) == 0 when mysqldump sequence
-
Marko Mäkelä authored
-
Marko Mäkelä authored
-
Marko Mäkelä authored
srv_conc_t::n_active: Correct the comment, and remove an assertion that trivially holds now that the type is unsigned.
-
- 18 Feb, 2018 2 commits
-
-
Vladislav Vaintroub authored
-
Vladislav Vaintroub authored
-
- 17 Feb, 2018 4 commits
-
-
Alexander Barkov authored
-
Marko Mäkelä authored
Disable the test encryption.innodb_encryption-page-compression because the wait_condition would seem to time out deterministically. MDEV-14814 has to be addressed in 10.2 separately. Datafile::validate_first_page(): Do not invoke page_size_t::page_size_t(flags) before validating the tablespace flags. This avoids a crash in MDEV-15333 innodb.restart test case. FIXME: Reduce the number of error messages. The first one is enough.
-
Marko Mäkelä authored
This performance regression was introduced in the MariaDB 10.1 file format incompatibility bug fix MDEV-11623 (MariaDB 10.1.21 and MariaDB 10.2.4) and partially fixed in MariaDB 10.1.25 in MDEV-12610 without adding a regression test case. On a normal startup (without crash recovery), InnoDB should not read every .ibd data file, because this is slow. Like in MySQL, for now, InnoDB will still open every data file (without reading), and it will read every .ibd file for which an .isl file exists, or the DATA DIRECTORY attribute has been specified for the table. The test case shuts down InnoDB, moves data files, replaces them with garbage, and then restarts InnoDB, expecting no messages to be issued for the garbage files. (Some messages will for now be issued for the table that uses the DATA DIRECTORY attribute.) Finally, the test shuts down the server, restores the old data files, and restarts again to drop the tables. fil_open_single_table_tablespace(): Remove the condition on flags, and only call fsp_flags_try_adjust() if validate==true (reading the first page has been requested). The only caller with validate==false is at server startup when we are processing all records from SYS_TABLES. The flags passed to this function are actually derived from SYS_TABLES.TYPE and SYS_TABLES.N_COLS, and there never was any problem with SYS_TABLES in MariaDB 10.1. The problem that MDEV-11623 was that incorrect tablespace flags were computed and written to FSP_SPACE_FLAGS.
-
Alexander Kuleshov authored
we have two the same 'if' clauses that check opt_bin_log argument in mysqld.cc and both clauses go successively one after another. Let's merge them into one
-
- 16 Feb, 2018 18 commits
-
-
Eugene Kosov authored
-
Marko Mäkelä authored
-
Eugene Kosov authored
-
Eugene Kosov authored
-
Eugene Kosov authored
-
Eugene Kosov authored
-
Eugene Kosov authored
-
Eugene Kosov authored
-
Eugene Kosov authored
que_cur_t que_fork_t::cur_end que_fork_t::cur_pos que_fork_t::cur_on_row
-
Eugene Kosov authored
-
Eugene Kosov authored
-
Alexander Kuleshov authored
-
Alexander Kuleshov authored
which says: We need the up-cast here, since my_decimal has sign() member functions, which conflicts with decimal_t::size But decimal_t does not provide `size` field.
-
Sergey Vojtovich authored
-
Alexander Barkov authored
-
Alexander Barkov authored
-
Jan Lindström authored
MDEV-9962: encryption.innodb_encryption_filekeys stalled waiting for key encryption threads to decrypt all required spaces Test changes.
-
Jan Lindström authored
MDEV-14814: encryption.innodb_encryption-page-compression failed in buildbot with timeout on wait condition Problem is that if pages are in buffer pool there is no need for decrypt or page decompression operations.
-
- 15 Feb, 2018 1 commit
-
-
Monty authored
-