- 26 Oct, 2022 22 commits
-
-
Sergei Golubchik authored
-
Sergei Golubchik authored
-
Sergei Golubchik authored
-
Sergei Golubchik authored
remove extra loop over result set, don't check for INVISIBLE columns, when not needed (xml ignores complete_insert and old servers cannot have INVISIBLE)
-
Sergei Golubchik authored
note that replace no longer supports system_versioning_insert_history, the test case is only for ignore
-
Sergei Golubchik authored
they'll ignore the value of system_versioning_insert_history, just as DELETE and UPDATE do
-
Sergei Golubchik authored
-
Sergei Golubchik authored
-
Sergei Golubchik authored
MDEV-29805 Attempt to insert into system versioning columns on old server may make slave data diverge
-
Sergei Golubchik authored
MDEV-29732 mysqlbinlog produces syntactically incorrect output with system_versioning_insert_history
-
Sergei Golubchik authored
-
Sergei Golubchik authored
-
Sergei Golubchik authored
don't set vers_write=false if one vers column was used explicitly, instead do vers_update_fields() for columns that do not have explicit value. So, if row_start has the value and row_end not, row_end will get max by default.
-
Sergei Golubchik authored
* clarify the help text for --system-versioning-insert-history * move the vers_write=false check from Item_field::fix_fields() next to other vers field checks in find_field_in_table() * move row_start validation from handler::write_row() next to vers_update_fields() * make secure_timestamp check to happen in one place only, extract it into a function is_set_timestamp_vorbidden(). * overwriting vers fields is an error, just like setting @@timestamp * don't run vers_insert_history() for every row
-
Aleksey Midenkov authored
1. system_versioning_insert_history session variable allows pseudocolumns ROW_START and ROW_END be specified in INSERT, INSERT..SELECT and LOAD DATA. 2. Cleaned up select_insert::send_data() from setting vers_write as this parameter is now set on TABLE initialization. 4. Replication of system_versioning_insert_history via option_bits in OPTIONS_WRITTEN_TO_BIN_LOG.
-
Sergei Golubchik authored
-
Sergei Golubchik authored
they should be set once, not for every row
-
Sergei Golubchik authored
-
Sergei Golubchik authored
ROW START/END fields shold have no default value
-
Sergei Golubchik authored
fix quoting
-
Luis Eduardo Oliveira Lizardo authored
* Add query optimizer timer to ANALYZE FORMAT=JSON * Adapt tests and results * Change logic to always close the writer after printing query blocks
-
rmfalves authored
This adds a header row in txt files exported by mariadb-dump --tab Reviewed by: Daniel Black and Dan Lenski
-
- 25 Oct, 2022 1 commit
-
-
Thirunarayanan Balathandayuthapani authored
trx_sys_t::undo_log_nonempty: Set to true if there are undo logs to rollback and purge. The algorithm for re-creating the undo tablespace when trx_sys_t::undo_log_nonempty is disabled: 1) trx_sys_t::reset_page(): Reset the TRX_SYS page and assign all rollback segment slots from 1..127 to FIL_NULL 2) Free the rollback segment header page of system tablespace for the slots 1..127 3) Update the binlog and WSREP information in system tablespace rollback segment header Step (1), (2) and Step (3) should happen atomically within a single mini-transaction. 4) srv_undo_delete_old_tablespaces(): Delete the old undo tablespaces present in the undo log directory 5) Make checkpoint to get rid of old undo log tablespaces redo logs 6) Assign new start space id for the undo log tablespaces 7) Re-create the specified undo log tablespaces. InnoDB uses same mtr for this one and step (6) 8) Make checkpoint again, so that server or mariabackup can read the undo log tablespace page0 before applying the redo logs srv_undo_tablespaces_reinit(): Recreate the undo log tablespaces. It does reset trx_sys page, delete the old undo tablespaces, update the binlog offset, write set replication checkpoint in system rollback segment page trx_rseg_update_binlog_offset(): Added 2 new parameters to pass binlog file name and binlog offset trx_rseg_array_init(): Return error if the rollback segment slot points to non-existent tablespace srv_undo_tablespaces_init(): Added new parameter mtr to initialize all undo tablespaces trx_assign_rseg_low(): Allow the transaction to use the rollback segment slots(1..127) even if InnoDB failed to change to the requested innodb_undo_tablespaces=0 srv_start(): Override the user specified value of innodb_undo_tablespaces variable with already existing actual undo tablespaces wf_incremental_process(): Detects whether TRX_SYS page has been modified since last backup. If it is then incremental backup fails and throws the information about taking full backup again xb_assign_undo_space_start(): Removed the function. Because undo001 has first undo space id value in page0 Added test case to test the scenario during startup and mariabackup incremental process too. Reviewed-by : Marko Mäkelä Tested-by : Matthias Leich
-
- 24 Oct, 2022 1 commit
-
-
Oleg Smirnov authored
-
- 21 Oct, 2022 3 commits
-
-
Vladislav Vaintroub authored
Fix test cases to remove hardcoded expected number for 'handler_next_read' status variable. Apparently, number of rows in I_S.routines depends on whether or not 'sys' schema is loaded, and this depends on whether or not perfschema is compiled in.
-
Anel Husakovic authored
- Cosmetic fixes Reviewer:Brandon Nesterenko <brandon.nesterenko@mariadb.com>
-
Anel Husakovic authored
- Add `replicate_rewrite_db` status variable, that may accept comma separated key-value pairs. - Note that option `OPT_REPLICATE_REWRITE_DB` already existed in `mysqld.h` from this commit 23d8586d Reviewer:Brandon Nesterenko <brandon.nesterenko@mariadb.com>
-
- 17 Oct, 2022 10 commits
-
-
Oleksandr Byelkin authored
-
Oleksandr Byelkin authored
-
Oleksandr Byelkin authored
-
Oleksandr Byelkin authored
-
Oleksandr Byelkin authored
-
Oleksandr Byelkin authored
-
Oleksandr Byelkin authored
-
Oleksandr Byelkin authored
-
Oleksandr Byelkin authored
-
Oleksandr Byelkin authored
-
- 16 Oct, 2022 3 commits
-
-
Oleksandr Byelkin authored
-
Oleksandr Byelkin authored
-
Hartmut Holzgraefe authored
The mysqld_multi script template used @datadir@ as default log destination, this is not the MariaDB datadir in this context though but rather the -- typically write-only -- /share dir. The correct placeholder to use here is @localstatedir@ which gets replaced with the actual MariaDB datadir Co-authored-by: Hartmut Holzgraefe <hartmut@php.net>
-