- 17 May, 2021 3 commits
-
-
Marko Mäkelä authored
The error code DB_TABLE_IS_BEING_USED was orphaned in commit ddc663ef (MySQL 3.23.37). Let us finally remove it.
-
Marko Mäkelä authored
MONITOR_TRX_ACTIVE: Remove. The count is not being updated consistently, and it would also include read-only transactions that are otherwise fully invisible to any other threads. If it later turns out that a reliable count of active transactions is needed, it can be exposed via a different interface. trx_commit_for_mysql(): If the transaction was not started, return immediately.
-
Marko Mäkelä authored
row_drop_table_after_create_fail(): Remove. This function was only used during InnoDB initialization (or upgrade) when creating a system table failed. Rollback will clean up a failed CREATE just fine, by invoking dict_drop_index_tree().
-
- 15 May, 2021 1 commit
-
-
Jan Lindström authored
Added DDL logging to applier and replaying also so that DDL is logged on other than originating node. wsrep.h Removed wsrep_thd_is_local conditions and cleaned up the macros. Removed WSREP_TO_ISOLATION_END. Event_job_data::execute change_password acl_set_default_role mysql_execute_command Replaced macro by function call wsrep_to_isolation_begin wsrep_to_isolation_end If execution is not local log DDL-information when wsrep_debug is enabled No new tests required as current regression setting is already testing these code paths.
-
- 14 May, 2021 4 commits
-
-
Marko Mäkelä authored
Ever since MDEV-18518 made DDL operations mostly crash-safe inside InnoDB, it became obvious that Mariabackup might not be entirely safe with regard to concurrent DDL operations. check_if_skip_table(): Do not skip files whose name starts with #sql. We cannot know whether a DDL operation is in progress and the table might in fact be needed later.
-
Marko Mäkelä authored
-
Marko Mäkelä authored
-
Marko Mäkelä authored
-
- 13 May, 2021 3 commits
-
-
Sergei Petrunia authored
Mark the JSON_TABLE function as SBR-unsafe. It is not unsafe for the current implementation. But we still mark it as such in order to be future-proof and keep it possible to change JSON data representation in the future.
-
Marko Mäkelä authored
-
Sujatha authored
Problem: ======= Test fails with 3 different symptoms connection slave; Assertion text: 'Last_Seen_Transaction should show .' Assertion condition: '"0-1-1" = ""' Assertion condition, interpolated: '"0-1-1" = ""' Assertion result: '0' connection slave; Assertion text: 'Value returned by SSS and PS table for Last_Error_Number should be same.' Assertion condition: '"1146" = "0"' Assertion condition, interpolated: '"1146" = "0"' Assertion result: '0' connection slave; Assertion text: 'Value returned by PS table for worker_idle_time should be >= 1' Assertion condition: '"0" >= "1"' Assertion condition, interpolated: '"0" >= "1"' Assertion result: '0' Fix1: ==== Performance schema table's Last_Seen_Transaction is compared with 'SELECT gtid_slave_pos'. Since DDLs are not transactional changes to user table and gtid_slave_pos table are not guaranteed to be synchronous. To fix the issue Gtid_IO_Pos value from SHOW SLAVE STATUS command will be used to verify the correctness of Performance schema specific Last_Seen_Transaction. Fix2: ==== On error worker thread information is stored as part of backup pool. Access to this backup pool should be protected by 'LOCK_rpl_thread_pool' mutex so that simultaneous START SLAVE cannot destroy the backup pool, while it is being queried by performance schema. Fix3: ==== When a worker is waiting for events if performance schema table is queried, at present it just returns the difference between current_time and start_time. This is incorrect. It should be worker_idle_time + (current_time - start_time). For example a worker thread was idle for 10 seconds and then it got events to process. Upon completion it goes to idle state, now if the pfs table is queried it should return current_idle time + worker_idle_time.
-
- 12 May, 2021 3 commits
-
-
Nikita Malyavin authored
-
Kentoku SHIBA authored
==22532== Conditional jump or move depends on uninitialised value(s) ==22532== at 0x9EEDFA: String::append(char const*, unsigned long, charset_info_st const*) (sql_string.cc:587) ==22532== by 0x17C12BA7: spider_string::append(char const*, unsigned int, charset_info_st const*) (spd_malloc.cc:913) ==22532== by 0x17C68BD0: spider_db_mysql_util::append_column_value(ha_spider*, spider_string*, Field*, unsigned char const*, charset_info_st const*) (spd_db_mysql.cc:4573) ==22532== by 0x17B7D298: spider_db_append_key_where_internal(spider_string*, spider_string*, spider_string*, st_key_range const*, st_key_range const*, ha_spider*, bool, unsigned long, unsigned int) (spd_db_conn.cc:1978) ==22532== by 0x17C81A7C: spider_mbase_handler::append_key_where(spider_string*, spider_string*, spider_string*, st_key_range const*, st_key_range const*, unsigned long, bool) (spd_db_mysql.cc:11146) ==22532== by 0x17C819B7: spider_mbase_handler::append_key_where_part(st_key_range const*, st_key_range const*, unsigned long) (spd_db_mysql.cc:11130) ==22532== by 0x17C4B0F0: ha_spider::append_key_where_sql_part(st_key_range const*, st_key_range const*, unsigned long) (ha_spider.cc:15012) ==22532== by 0x17B7FC8F: spider_db_append_key_where(st_key_range const*, st_key_range const*, ha_spider*) (spd_db_conn.cc:2707) ==22532== by 0x17C28DF6: ha_spider::multi_range_read_next_first(void**) (ha_spider.cc:4559) ==22532== by 0x17C2E0F5: ha_spider::multi_range_read_next(void**) (ha_spider.cc:5879) ==22532== by 0xE27019: QUICK_RANGE_SELECT::get_next() (opt_range.cc:12647) Conflicts: storage/spider/spd_malloc.cc
-
Marko Mäkelä authored
-
- 11 May, 2021 4 commits
-
-
Monty authored
-
Monty authored
The problem was that in a timeout event, thd->lex->restore_backup_query_tables_list() was called when it should not have been. Patch tested with the script in MDEV-25651 (not suitable for mtr)
-
Brandon Nesterenko authored
Problem: ======= MariaDB's command line utilities (e.g., mysql, mysqldump, etc) silently ignore connection property options (e.g., --port and --socket) when protocol is not explicitly set via the command-line for localhost connections. Fix: === If connection properties are specified without a protocol, override the protocol to be consistent. For example, if --port is specified, automatically set protocol=tcp. Caveats: ======= * When multiple connection properties are specified, nothing is overridden * If protocol is is set via the command-line, its value is used Reviewers: ======== Sergei Golubchik <serg@mariadb.com> Vladislav Vaintroub <wlad@mariadb.com>
-
Marko Mäkelä authored
In commit 38fd7b7d (MDEV-21452), 2 of the 3 callers of recv_sys.set_corrupt_fs() are already holding recv_sys.mutex.
-
- 10 May, 2021 8 commits
-
-
Monty authored
The bug is that we don't have a a lock on the trigger name, so it is possible for two threads to try to create the same trigger at the same time and both thinks that they have succeed. Same thing can happen with drop trigger or a combinations of create and drop trigger. Fixed by adding a mdl lock for the trigger name for the duration of the create/drop. Patch tested by Elena
-
Daniel Bartholomew authored
-
Marko Mäkelä authored
-
Marko Mäkelä authored
-
Marko Mäkelä authored
-
Marko Mäkelä authored
-
Sujatha authored
Part2: Test scripts
-
Sujatha authored
Part1: Functional changes Backporting upstream changes. commit a7e1ef858ee82493dd8ad9a76bc9c22fe3b8c05b Author: Neha Kumari <neha.n.kumari@oracle.com> Note: From the upstream patch only the new option binlog_expire_logs_seconds specific changes are taken. * Unlike in the upstream patch 'binlog_expire_logs_seconds' does not replace the "old" 'expire_logs_days', to preserve backward-compatibility. * Datatype of 'expire_logs_days' variable is changed to double. * Default value of 'binlog_expire_logs_seconds=0' similar to 'expire_logs_days'. * The purge_time can be specified in days with the micro-day precision. Eg: expire_logs_days=1 is the same as expire_logs_days=1.000000 to make binlog_expire_logs_seconds=86400. binlog_expire_logs_seconds=1 is the same as expire_logs_days=0.000012. * If binary log is disabled and option 'expire_logs_days' or 'binlog_expire_logs_seconds' used with purge_time > 0 a warning will be issued.
-
- 09 May, 2021 6 commits
-
-
Vladislav Vaintroub authored
-
Vladislav Vaintroub authored
-
Vladislav Vaintroub authored
If IPO is enabled, MSVC compiles with /GL which is not compatible with cmake's WINDOWS_EXPORT_ALL_SYMBOLS. Since server.dll can't autoexport symbols from /GL compiled objects, IPO must be disabled for dbug, string,mysys, and sql targets (in case we build "plugin" DLLs that need server.dll's symbols)
-
Vladislav Vaintroub authored
The warning brought by code analysis, unsafe arithmetic in timer related code
-
Vladislav Vaintroub authored
Avoid calling constructor for Protocol_text, if not necessary.
-
Vladislav Vaintroub authored
This is incosistent with other single config generators, where the default type has always been RelWithDebInfo. Fixed by moving setting of CMAKE_BUILD_TYPE right before PROJECT.
-
- 08 May, 2021 5 commits
-
-
Sergei Golubchik authored
unless explicitly overruled with -DWITH_JEMALLOC=no
-
Sergei Golubchik authored
XA transaction only allows to access data in specific states, in ACTIVE, but not in IDLE or PREPARE. But even then one should be able to run SHOW STATUS.
-
Sergei Golubchik authored
if mysqld is restarted during a test, the debugger script should be reused or overwritten, but not appended to the existing file
-
Sergei Golubchik authored
mysqltest has no --gdb option
-
Sergei Golubchik authored
This reverts commit 72fa9dab but doesn't recover deleted jars - they still exist in mysql-test/connect/std_data, no need to have them twice. Also it removes a redundant copy on JavaWrappers.jar
-
- 07 May, 2021 3 commits
-
-
Vladislav Vaintroub authored
-
Marko Mäkelä authored
-
Marko Mäkelä authored
-