- 21 Feb, 2019 1 commit
-
-
Oleksandr Byelkin authored
-
- 20 Feb, 2019 7 commits
-
-
Oleksandr Byelkin authored
-
Vladislav Vaintroub authored
This is done in order to help debugging buildbot failures.
-
Marko Mäkelä authored
This is follow-up to MDEV-18048: Relax a too strict debug assertion This assertion should have been relaxed when implementing the first part of MDEV-15563: instant removal of NOT NULL attribute for ROW_FORMAT=REDUNDANT tables. For ROW_FORMAT=REDUNDANT, there is no bitmap of null columns; the null flags are encoded in the end offset of each field. We do not really care about the number of fields that can be NULL.
-
Oleksandr Byelkin authored
-
Marko Mäkelä authored
Revert the type casts of 58e525e4.
-
Vladislav Vaintroub authored
-
Elena Stepanova authored
-
- 19 Feb, 2019 32 commits
-
-
Oleksandr Byelkin authored
-
Thirunarayanan Balathandayuthapani authored
MariaDB data-at-rest encryption (innodb_encrypt_tables) had repurposed the same unused data field that was repurposed in MySQL 5.7 (and MariaDB 10.2) for the Split Sequence Number (SSN) field of SPATIAL INDEX. Because of this, MariaDB was unable to support encryption on SPATIAL INDEX pages. Furthermore, InnoDB page checksums skipped some bytes, and there are multiple variations and checksum algorithms. By default, InnoDB accepts all variations of all algorithms that ever existed. This unnecessarily weakens the page checksums. We hereby introduce two more innodb_checksum_algorithm variants (full_crc32, strict_full_crc32) that are special in a way: When either setting is active, newly created data files will carry a flag (fil_space_t::full_crc32()) that indicates that all pages of the file will use a full CRC-32C checksum over the entire page contents (excluding the bytes where the checksum is stored, at the very end of the page). Such files will always use that checksum, no matter what the parameter innodb_checksum_algorithm is assigned to. For old files, the old checksum algorithms will continue to be used. The value strict_full_crc32 will be equivalent to strict_crc32 and the value full_crc32 will be equivalent to crc32. ROW_FORMAT=COMPRESSED tables will only use the old format. These tables do not support new features, such as larger innodb_page_size or instant ADD/DROP COLUMN. They may be deprecated in the future. We do not want an unnecessary file format change for them. The new full_crc32() format also cleans up the MariaDB tablespace flags. We will reserve flags to store the page_compressed compression algorithm, and to store the compressed payload length, so that checksum can be computed over the compressed (and possibly encrypted) stream and can be validated without decrypting or decompressing the page. In the full_crc32 format, there no longer are separate before-encryption and after-encryption checksums for pages. The single checksum is computed on the page contents that is written to the file. We do not make the new algorithm the default for two reasons. First, MariaDB 10.4.2 was a beta release, and the default values of parameters should not change after beta. Second, we did not yet implement the full_crc32 format for page_compressed pages. This will be fixed in MDEV-18644. This is joint work with Marko Mäkelä.
-
Oleksandr Byelkin authored
-
Oleksandr Byelkin authored
-
Oleksandr Byelkin authored
-
Marko Mäkelä authored
-
Alexander Barkov authored
For example, with this cmake command line: cmake . -DCMAKE_C_FLAGS="-DDBUG_ASSERT_AS_PRINTF" \ -DCMAKE_CXX_FLAGS="-DDBUG_ASSERT_AS_PRINTF"
-
Sergey Vojtovich authored
Apparently DBUG_ASSERT() can co-exist with DBUG_OFF when -DCMAKE_CXX_FLAGS="-DDBUG_ASSERT_AS_PRINTF". Removed assertion as it is useless now, since the type is unsigned.
-
Oleksandr Byelkin authored
but even if this script called as /bin/mysql_install_db it is still standard install and scripts are in /usr/share/ (but not in the /share/) 2. fix of bindir path
-
Teemu Ollakka authored
The replayer did not signal replaying waiters. Added mysql_cond_broadcast() after replaying is over. Assertion on client error failed after replay attempt failed due to certification failure. At this point the transaction does not go through client state, so the client error cannot be overridden. Assign ER_LOCK_DEADLOCK to thd directly instead. Use timed cond wait when waiting for replayers to finish and check if the transaction has been BF aborted during the wait.
-
Jan Lindström authored
Transaction XID is not initialized before transaction is started.
-
Igor Babaev authored
-
mkaruza authored
Temporary disable WSREP while executing RESET MASTER. In situation when 2 nodes are both master/slave first stop slave on both and than reset master. Enforce stricter causality check with wsrep_sync_wait.
-
mkaruza authored
Check for garbd executable on different paths. If not found terminate test.
-
Sergei Golubchik authored
-
Igor Babaev authored
-
Igor Babaev authored
Optimized the code that removed multiple equalities pushed from HAVING into WHERE. Now this removal is postponed until all multiple equalities are eliminated in substitute_for_best_equal_field().
-
Thirunarayanan Balathandayuthapani authored
trx_rseg_t::is_persistent(): Correct a bogus debug assertion.
-
Vicențiu Ciorbaru authored
When sampling data through ANALYZE TABLE, use the estimator to get a better estimation of avg_frequency instead of just using the raw sampled data.
-
Vicențiu Ciorbaru authored
The variable controls the amount of sampling analyze table performs. If ANALYZE table with histogram collection is too slow, one can reduce the time taken by setting analyze_sample_percentage to a lower value of the total number of rows. Setting it to 0 will use a formula to compute how many rows to sample: The number of rows collected is capped to a minimum of 50000 and increases logarithmically with a coffecient of 4096. The coffecient is chosen so that we expect an error of less than 3% in our estimations according to the paper: "Random Sampling for Histogram Construction: How much is enough?” – Surajit Chaudhuri, Rajeev Motwani, Vivek Narasayya, ACM SIGMOD, 1998. The drawback of sampling is that avg_frequency number is computed imprecisely and will yeild a smaller number than the real one.
-
Vicențiu Ciorbaru authored
The add method does not need to provide the row order number. It was only used to detect if the minimum/maximum value was populated once or not, so as to force an update for the first encounter of a value.
-
Marko Mäkelä authored
-
Marko Mäkelä authored
log_group_read_log_seg(): Always return false when returning before reading end_lsn. xtrabackup_copy_logfile(): On error, indicate whether a corrupt log record was encountered. Only xtrabackup_copy_logfile() in Mariabackup cared about the return value of the function. InnoDB crash recovery was not affected by this bug.
-
Vladislav Vaintroub authored
Remove CMake INSTALL command for COMPONENT DataFiles. mysql_install_db.exe will calculate default datadir, so that it can be called without any parameters.
-
Varun Gupta authored
The value for eq_range_index_dive_limit is increased to 200.
-
Varun Gupta authored
optimize_join_buffer_size is switched ON.
-
Monty authored
By pure chance the macro worked in the cases it was used, but better to get this fixed!
-
Galina Shalygina authored
-
Vladislav Vaintroub authored
-
Vladislav Vaintroub authored
-
Igor Babaev authored
- Removed dead code - Renamed a function - Removed a parameter that not needed. - Corrected comments
-
Teemu Ollakka authored
The check for streaming replication logging format in THD::decide_logging_format() did the check also for DDLs running in TOI mode. This caused DROP DATABASE to fail if streaming replication was enabled. Added check for THD wsrep execution mode and perform the check only if the THD is in local processing mode (i.e. not TOI). Added galera_sr_create_drop test to verify that CREATE/DROP statements pass even if streaming replication is on.
-