- 19 Mar, 2021 10 commits
-
-
Sergei Petrunia authored
Print the build_equal_items() step for ON expression processing
-
Sergei Petrunia authored
Print the conditions for WHERE, HAVING, and ON.
-
Marko Mäkelä authored
-
Marko Mäkelä authored
-
Marko Mäkelä authored
-
Marko Mäkelä authored
-
Marko Mäkelä authored
-
Eugene Kosov authored
-
Eugene Kosov authored
-
Eugene Kosov authored
std version has an advantage of a more convenient units implementation from std::chrono. Now it's no need to multipy/divide to bring anything to micro seconds.
-
- 18 Mar, 2021 30 commits
-
-
Vladislav Vaintroub authored
-
Vladislav Vaintroub authored
-
Sergei Petrunia authored
Don't remove (reasons given in Jira), instead add test coverage. Improve other printout in best_access_path.
-
Marko Mäkelä authored
Our intention is to make users aware that the ROW_FORMAT=COMPRESSED format is on its way to deprecation. It is an unnecessary annoyance to users if we issue a warning when the user is converting a ROW_FORMAT=COMPRESSED table to a supported format (such as ROW_FORMAT=DYNAMIC). ha_innobase::is_read_only(): Add a parameter to specify that an ALTER TABLE to a supported format has been requested. ha_innobase::check_if_supported_inplace_alter(): Set the parameter when ALTER_OPTIONS to something else than ROW_FORMAT=COMPRESSED (and without KEY_BLOCK_SIZE) is being requested. Thanks to Elena Stepanova for suggesting this.
-
Marko Mäkelä authored
Until https://github.com/rr-debugger/rr/issues/2613 has been addressed, ./mtr --rr will fail to start up the server if it has been configured with liburing. To make the ./mtr --rr option work out of the box, we will disable native asynchronous I/O. Note: libaio never worked under rr, but it failed more gracefully: the emulated io_setup() call would always return an error.
-
Marko Mäkelä authored
-
Vladislav Vaintroub authored
so that sys.schema_auto_increment_columns returns correct auto_increment_value
-
Marko Mäkelä authored
-
Vladislav Vaintroub authored
Fix confusing documentation. There is no installation necessary for sys schema. it is there after mysql_install_db, or mysql_upgrade.
-
Marko Mäkelä authored
-
Marko Mäkelä authored
Tests with 4096-byte sector size confirm that it is safe to use O_DIRECT with page_compressed tables. That had been disabled on Linux, in an attempt to fix MDEV-21584 which had been filed for the O_DIRECT problems earlier. The fil_node_t::block_size was being set mostly correctly until commit 10dd290b (MDEV-17380) introduced a regression in MariaDB Server 10.4.4. fil_node_open_file(): Only avoid setting O_DIRECT on ROW_FORMAT=COMPRESSED tables that use KEY_BLOCK_SIZE=1 or 2 (1024 or 2048 bytes). fil_ibd_create(): Avoid setting O_DIRECT on ROW_FORMAT=COMPRESSED tables that use KEY_BLOCK_SIZE=1 or 2 (1024 or 2048 bytes). fil_node_t::find_metadata(): Require fstat() to be always invoked outside Microsoft Windows, so that fil_node_t::block_size can be set. fil_node_t::read_page0(): Rely on find_metadata() to assign block_size. Thanks to Vladislav Vaintroub for testing this on Microsoft Windows using an old-fashioned rotational hard disk with 4KiB sector size. Reviewed by: Vladislav Vaintroub This is a port of commit 00f620b2 and commit 6505662c from 10.2.
-
Marko Mäkelä authored
-
Marko Mäkelä authored
Before MDEV-14638, there was no race condition between the execution of fetch_data_into_cache() and transaction commit. fetch_data_into_cache(): Acquire trx_t::mutex before checking trx_t::state, to prevent a concurrent transition from TRX_STATE_COMMITTED_IN_MEMORY to TRX_STATE_NOT_STARTED in trx_commit_in_memory().
-
Marko Mäkelä authored
-
Marko Mäkelä authored
ha_innobase::info_low(): While collecting statistics for ANALYZE TABLE, ensure that dict_stats_process_entry_from_recalc_pool() is not executing on the same table. We observed result differences for the test innodb.innodb_stats because dict_stats_empty_index() was being invoked by the background statistics calculation while ha_innobase::analyze() was executing dict_stats_analyze_index_level().
-
Marko Mäkelä authored
Tests with 4096-byte sector size confirm that it is safe to use O_DIRECT with page_compressed tables. That had been disabled on Linux, in an attempt to fix MDEV-21584 which had been filed for the O_DIRECT problems earlier. The fil_node_t::block_size was being set mostly correctly until commit 10dd290b (MDEV-17380) introduced a regression in MariaDB Server 10.4.4. fil_node_t::read_page0(): Initialize fil_node_t::block_size. This will probably make similar code in fil_space_extend_must_retry() redundant, but we play it safe and will not remove that code. Thanks to Vladislav Vaintroub for testing this on Microsoft Windows using an old-fashioned rotational hard disk with 4KiB sector size. Reviewed by: Vladislav Vaintroub
-
Vladislav Vaintroub authored
This patch implements OS_DATA_FILE_NO_O_DIRECT on Windows.
-
Marko Mäkelä authored
This had been originally added in mysql/mysql-server@192bb153b675fe09037a53e456a79eee7211e3a7 with the motivation to disable O_DIRECT for the dedicated tablespace for temporary tables. In MariaDB Server, commit 5eb53955 (MDEV-12227) should be a better solution. The code became orphaned later in mysql/mysql-server@c61244c0e6c58727cffebfb312ac415a463fa0fe and it had been applied to MariaDB Server 10.2.2 in commit 2e814d47 and commit fec844ac. Thanks to Vladislav Vaintroub for spotting this.
-
Jan Lindström authored
MDEV-24916 : Assertion `current_stmt_binlog_format == BINLOG_FORMAT_STMT || current_stmt_binlog_format == BINLOG_FORMAT_ROW' failed in THD::is_current_stmt_binlog_format_row Store old value of binlog format before wsrep code so that if we bail out because wsrep is not ready for connections we can restore binlog format correctly.
-
Vladislav Vaintroub authored
-
Vladislav Vaintroub authored
-
Vladislav Vaintroub authored
-
Vladislav Vaintroub authored
-
Vladislav Vaintroub authored
- increase MAX_BOOTSTRAP_QUERY_SIZE (sys.schema has SP over 50K large) don't allocate bootstrap query on heap anymore. - support DELIMITER in bootstrap
-
Vladislav Vaintroub authored
- Innodb is not always available, which means t is not always possible to use innodb system variables, or innodb information schema tables. Thus creation of objects that use Innodb information_schema is enclosed into BEGIN NOT ATOMIC blocks with dummy SQLEXCEPTION handler. - sys_config table uses Aria, just like other system tables. - several tables that exist in MySQL, do not exist in MariaDB performance_schema.replication_applier_status, mysql.slave_master_info, mysql.slave_relay_log_info
-
-
Jan Lindström authored
MDEV-18874 : Galera test MW-286 causes Mutex = TTASEventMutex<GenericPolicy>]: Assertion `!is_owned()' failed. assertion MDEV-24649 galera.galera_bf_lock_wait MTR failed with sigabrt: Assertion `!is_ow ned()' failed in sync0policy.ic on MutexDebug with Mutex = TTASEventMutex<GenericPolicy> Bug was fixed as part of MDEV-23328, this just adds test cases to regression set.
-
Daniel Black authored
ALIGN was defined already: mysys/crc32/crc32c.cc:390: warning: "ALIGN" redefined #define ALIGN(n, m) ((n + ((1 << m) - 1)) & ~((1 << m) - 1)) In file included from /root/aix/build/include/my_global.h:543, from /root/aix/build/mysys/crc32/crc32c.cc:22: /opt/freeware/lib/gcc/powerpc-ibm-aix7.1.0.0/8/include-fixed/sys/socket.h:788: note: this is the location of the previous definition #define ALIGN(p) (ulong)((caddr_t)(p) + MACHINE_ALIGNMENT - 1 - \
-
Etienne Guesnet authored
-
Daniel Black authored
As evidenced by converstation on Zulip, knowing where to install a plugin is important too.
-