- 16 Aug, 2018 6 commits
-
-
Marko Mäkelä authored
-
Marko Mäkelä authored
Amend commit b853b4fd that was reverted in commit 29150e23. recv_parse_log_recs(): Do check for corrupted redo log or file system before checking for len==0, but only read *ptr if it is not past the end of the buffer (end_ptr). recv_parse_log_rec(): Report incorrect redo log type in a consistent way with recv_parse_or_apply_log_rec_body(). This is a follow-up to commit f30c5af4.
-
Marko Mäkelä authored
The Pool poisoning that was introduced in MDEV-15030 introduced race conditions in AddressSanitizer builds, because concurrent poisoning and unpoisoning were not prevented by any synchronization primitive. Pool::get(): Protect the unpoisoning by m_lock_strategy. Pool::mem_free(): Protect the poisoning by m_lock_strategy. Pool::putl(): Renamed from put(), because now the caller is responsible for invoking m_lock_strategy.
-
Marko Mäkelä authored
If trx_free() and trx_create_low() were called while a call to trx_reference() was pending, we could get a reference to a wrong transaction object. trx_reference(): Return NULL if the trx->id no longer matches. lock_trx_release_locks(): Assign trx->id = 0, so that trx_reference() will not return a reference to this object. trx_cleanup_at_db_startup(): Assign trx->id = 0. assert_trx_is_free(): Assert !trx->n_ref. Assert trx->id == 0, now that it will be cleared as part of a transaction commit.
-
Marko Mäkelä authored
Also, replace reverse iteration with forward iteration. lock_table_has(): Remove a redundant condition.
-
Marko Mäkelä authored
Allocate trx->lock.rec_pool and trx->lock.table_pool directly from trx_t. Remove unnecessary use of std::vector. In order to do this, move some definitions from lock0priv.h to lock0types.h, so that ib_lock_t will not be an opaque type.
-
- 15 Aug, 2018 2 commits
-
-
Daniel Bartholomew authored
-
Vladislav Vaintroub authored
-
- 14 Aug, 2018 3 commits
-
-
Marko Mäkelä authored
row_log_table_get_pk_col(): Replace a condition that was inadvertently removed in MDEV-16365. PRIMARY KEY columns are never allowed to be NULL, and failure to enforce the constraint caused a null pointer to be dereferenced in mem_heap_dup().
-
Daniel Bartholomew authored
-
Vladislav Vaintroub authored
-
- 13 Aug, 2018 6 commits
-
-
Vladislav Vaintroub authored
-
Vladislav Vaintroub authored
aws_key_management needs current directory to be datadir during initalization, it scans current directory for encrypted keys. Fix is to ensure, that plugin initialization in mariabackup happens after the call to my_setwd(mysql_real_data_home).
-
Jacob Mathew authored
The problem occurs because the statement generated by Spider used an internal function name, ADD_TIME. This problem has been corrected by the fix for bug MDEV-16878 within the server, which enables Spider to generate the statement using the actual SQL function name. I have made some additional changes within Spider to fix related problems that I observed while testing. Author: Jacob Mathew. First Reviewer: Alexander Barkov. Second Reviewer: Kentoku Shiba. Merged: Commit 4b6dccc8 on branch bb-10.3-MDEV-16398
-
Sergei Petrunia authored
Fix a race condition in the test.
-
Sergei Golubchik authored
-
Sergei Golubchik authored
-
- 12 Aug, 2018 16 commits
-
-
Sergei Petrunia authored
The test causes simulated server crashes with DBUG_SUICIDE();. It also relies on transactions that were committed right before the crash to be visible after the crash (that is, it requires durability). Run the test with transaction durability enabled: set rocksdb-flush-log-at-trx-commit=1.
-
Sergei Golubchik authored
-
Sergei Golubchik authored
-
Sergei Golubchik authored
-
Sergei Golubchik authored
-
Sergei Golubchik authored
-
Sergei Golubchik authored
only run git if .git exists, don't do it for source tarballs
-
Sergei Golubchik authored
we stopped using -fno-implicit-templates many years ago
-
Sergei Golubchik authored
-
Sergei Golubchik authored
-
Sergei Golubchik authored
-
Sergei Golubchik authored
-
Sergei Golubchik authored
-
Sergei Golubchik authored
applied (at least partially): * armhf_mroonga_storage_fail.patch (unaligned write) * mysqld_multi.server_lsb-header.patch (add LSB header) * fix-spelling-errors.patch (tabxml.cpp) * hurd_socket.patch (in Platform.pm) * remove-systemd-obsolete-target.patch
-
Sergei Golubchik authored
don't use MY_MUTEX_INIT_FAST in constructors of statically allocated objects.
-
Elena Stepanova authored
-
- 10 Aug, 2018 4 commits
-
-
Otto Kekäläinen authored
The package libmariadbclient18 contains the dialog.so plugin, which also the new libmariadb3 ships. As they both use the exact same path the latter must be marked as a with Breaks and Replaces relations ship. Note: This fix is conservative hack for stable releases 10.2 and 10.3. In 10.4, the development release at the time, we will clean up how the libmariadb3 packaging and it's -compat packages are done to match that what is done in downstream Debian official.
-
Marko Mäkelä authored
recv_parse_log_recs(): Do not check for corruption before checking for end-of-log-buffer. For some reason, adding the check to the logical-looking place would cause intermittent recovery failures in the tests innodb.innodb-index and innodb_gis.rtree_compress2.
-
Marko Mäkelä authored
recv_parse_log_recs(): Check for corruption before checking for end-of-log-buffer. mlog_parse_initial_log_record(), page_cur_parse_delete_rec(): Flag corruption for out-of-bounds values, and let the caller dump the corrupted redo log extract.
-
Marko Mäkelä authored
If recv_sys_justify_left_parsing_buf() has been invoked, it is possible that recv_previous_parsed_rec_offset is after the current offset. In this case, we must not dump any bytes before the current record.
-
- 09 Aug, 2018 3 commits
-
-
Marko Mäkelä authored
If the LOG_BLOCK_HDR_DATA_LEN field is corrupted, scanning the log records could fail in strange ways. It is better to validate the field as part of validating each log block.
-
Marko Mäkelä authored
Display the log record type in hexadecimal, not binary.
-
Otto Kekäläinen authored
The package libmariadbclient18 contains the dialog.so plugin, which also the new libmariadb3 ships. As they both use the exact same path the latter must be marked as a with Breaks and Replaces relations ship. Note: This fix is conservative hack for stable releases 10.2 and 10.3. In 10.4, the development release at the time, we will clean up how the libmariadb3 packaging and it's -compat packages are done to match that what is done in downstream Debian official.
-