summaryrefslogtreecommitdiff
Commit message (Collapse)AuthorAgeFilesLines
* Merge commit '10.3' into 10.4Oleksandr Byelkin2020-03-1161-222/+1158
|\
| * Merge branch '10.2' into 10.3Oleksandr Byelkin2020-03-0642-88/+545
| |\
| | * Merge branch '10.1' into 10.2Oleksandr Byelkin2020-03-061-0/+12
| | |\
| | | * Merge branch '5.5' into 10.1Oleksandr Byelkin2020-03-061-0/+12
| | | |\
| | | | * MDEV-21646: Failure to compile my_addr_resolve.c with binutils-2.34bb-5.5-MDEV-21646Oleksandr Byelkin2020-02-121-0/+12
| | | | | | | | | | | | | | | | | | | | Emulate older API
| | * | | Enable galera.galera_ist_mariabackup and galera.mysql-wsrep#33.Stepan Patryshev2020-03-061-2/+0
| | | | |
| | * | | MDEV-19208 mariadb.pc: install into libdirVicențiu Ciorbaru2020-03-052-2/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The .pc file installed by mariadb mentions archful directories and therefore must be archful itself. This fixes MDEV-14340.
| | * | | Merge branch '10.1' into 10.2Vicențiu Ciorbaru2020-03-056-3/+39
| | |\ \ \ | | | |/ /
| | | * | Remove unneded extra context line from test file to make it version independentVicențiu Ciorbaru2020-02-282-4/+2
| | | | |
| | | * | mariadb.pc: remove unnecessary include directoryBen Boeckel2020-02-261-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | When installing, no headers are installed into the parent directory of `${includedir}`.
| | | * | mariadb{,@}.service comment typo open-file-limit -> open-files-limitDaniel Black2020-02-252-2/+2
| | | | |
| | | * | MDEV-21374: When "--help --verbose" prints out configuration file paths, the ↵Anel Husakovic2020-02-223-0/+38
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | --defaults-file option is not considered * `--defaults-file` option is showed only in `--help --verbose` if applied * `--default-extra-file` is showing correctly now in `--help --verbose`, previously it was treated as a directory with appended `my.cnf`
| | * | | MDEV-21857 - Fix sporadic failure of mdev375Vladislav Vaintroub2020-03-021-0/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | status threads_connected can temporarily be bigger than max_connections+1 If SHOW STATUS LIKE "Threads_connected" comes after ER_CON_COUNT_ERROR is sent to the client, but before the counter is decremented, Threads_connected can differ from the expected value.
| | * | | MENT-606 Error while setting value 'aes_ctr' to ↵Alexey Bychko2020-02-261-0/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 'file-key-management-encryption-algorithm' cmake cannot detect openssl headers on Mac during checks. the solution is to add path to openssl includes to CMAKE_REQUIRED_INCLUDES before checks.
| | * | | MENT-645 Undefined symbols for architecture x86_64: _pam_syslogAlexey Bychko2020-02-252-6/+38
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | added cmake checks for pam_ext.h and pam_appl.h headers added check for pam_syslog() added pam_syslog() if doesn't exist all cmake checks performed from inside the plugin
| | * | | MDEV-21723 Async slave thread BF abort and replaying fixes (#1448)seppo2020-02-236-5/+329
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | If async replication slave thread conflicts with cluster replication, then the async slave transaction should be BF aborted, and depending on the state of async slave transaction execution, potentially also replayed. There were problems in such BF abort implementation and the replaying was not started. This pull request contains fixes which make sure that if async slave thread is marked to abort and replay, it will complete carry out the rollback and release all locks and resources before starting the replaying. After replaying, async slave transactions is treated as successful, so the slave thread will continue as usual, handling next replication event. There is also new mtr test: galera.galera_slave_replay, which stresses both a certification failure for async slave thread and a successful BF abort followed by replaying.
| | * | | MDEV-21563 FTS thread aborts during shutdownThirunarayanan Balathandayuthapani2020-02-202-0/+2
| | | | | | | | | | | | | | | | | | | | - Add warning suppression in misc_debug2 test.
| | * | | Clean wrong cherry-pick from previous commitAnel Husakovic2020-02-203-4/+0
| | | | | | | | | | | | | | | | | | | | | | | | | - Delete variable HAVE_PTHREAD_CONDATTR_SETCLOCK and check - Delete second HAVE_PTHREAD_KEY_DELETE
| | * | | my_getncpus based on threads availableDaniel Black2020-02-204-1/+37
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Detecting the cpus based on sysconf of the online CPUs can significantly over estimate the number of cpus available. Wheither via numactl, cgroups, taskset, systemd constraints, docker containers and probably other mechanisms, the number of threads mysqld can be run on can be quite less. As such we use the pthread_getaffinity_np function on Linux and FreeBSD (identical API) to get the number of CPUs. The number of CPUs is the default for the thread_pool_size and a too high default will resulting in large memory usage and high context switching overhead. Closes PR #922
| | * | | MDEV-21591 : galera.galera_rsu_add_pk MTR failed: Result content mismatchJan Lindström2020-02-172-16/+22
| | | | | | | | | | | | | | | | | | | | Add missing wait condition before we check the end database state.
| | * | | MDEV-21488 : Galera test sporadic failure on galera.galera_var_notify_cmdJan Lindström2020-02-145-26/+19
| | | | | | | | | | | | | | | | | | | | Add wait condition and cleanup.
| | * | | MDEV-21515 : Galera test sporadic failure on ↵Jan Lindström2020-02-134-11/+28
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | galera.galera_wsrep_new_cluster: Result content mismatch Use correct configuration and wait for nodes to reach correct state with wait conditions.
| | * | | MDEV-21421 : Galera test sporadic failure on ↵Jan Lindström2020-02-133-1/+4
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | galera.galera_as_slave_gtid_myisam: Result length mismatch In Galera 3 nodes 2 and 3 are galera nodes and node_1 should be non galera.
| | * | | MDEV-21556 : galera.lp1376747-4 MTR failed: Result length mismatchbb-10.2-MDEV-21446Jan Lindström2020-02-121-9/+8
| | | | | | | | | | | | | | | | | | | | Add proper wait condition instead of sleeps.
| | * | | MDEV-17941 ALTER USER IF EXISTS does not work, although documentation says ↵Alexey Botchkov2020-02-113-4/+4
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | it should. Mistake in syntax definition fixed - should be ALTER USER IF EXISTS, not ALTER IF EXISTS USER.
| * | | | MDEV-20382: SHOW PRIVILEGES displays "Delete versioning rows" rather than ↵Anel Husakovic2020-03-052-2/+2
| | | | | | | | | | | | | | | | | | | | "Delete History"
| * | | | Better commentsSergei Petrunia2020-02-251-15/+16
| | | | |
| * | | | MDEV-21554 Crash in JOIN_CACHE_BKAH::skip_index_tuple when mrr=on andIgor Babaev2020-02-255-7/+569
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | join_cache_level=6+ The patch fixes two similar bugs in the commit 8eeb689e9fc57afe19a8dbff354b5f9f167867a9 that added multi_range_read support to partitions. The commit opened a possibility to join a partition table using BKA+MRR. However in some cases it could lead to wrong results or even crashes. This could happened when - index condition pushdown was used to join the table or - the joined table was an inner table of an outer join and 'not exist' optimization was applied or - the join table was the inner table of a semi-join and the first match optimization was applied The bugs were in the code of the call-back functions - partition_multi_range_key_skip_record() and - partition_multi_range_key_skip_index_tuple(). Each of this function consist only of an invocation of another function. Yet a wrong parameter was passed at this invocation. The fix was suggested by Sergey Petrunia and it is apparently in line with original design. The corresponding comprehensive test cases demonstrating the problems caused by the bugs were constructed by me.
| * | | | MDEV-16662: cmake remove empty INSTALL_DEBUG_TARGETDaniel Black2020-02-254-95/+0
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | No adverse effects since this was made a null function in 6b53f9d781cc19cbec96c3eb048e6407021685a2. This function had the last remaining cmake CMP0026 violation.
| * | | | MDEV-16662: cmake: CMP0026 compatible for dtraceDaniel Black2020-02-251-3/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | cmake enabling -DENABLE_DTRACE=ON is particularlly noisy with CMP0026 errors. Fixed in the same way as 6b53f9d781cc19cbec96c3eb048e6407021685a2
| * | | | MDEV-21628: Index condition pushdown condition ... not used with BKASergei Petrunia2020-02-193-0/+133
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | (Backport to 10.3) Partitioning storage now supports MRR but doesn't support Index Condition Pushdown (aka ICP). This causes counter-intuitive query plans for queries that use BKA and conditions that depend on index fields: - If the condition refers to other tables, BKA's variant of ICP is used to handle it. - If the condition depends on this table only, the optimizer will try to use regular ICP for it, which will fail because the storage engine doesn't support ICP. Make the optimizer be smarter in the second case: if we were not able to use regular ICP, use BKA's variant of ICP..
| * | | | Deb: Run 'wrap-and-sort -a' so comparison across releases is easierOtto Kekäläinen2020-02-136-10/+10
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | No functional changes. Apply this in 10.3 so eventually it is merged to 10.4 and 10.5, which in turn will have separate wrap-and-sort runs but only for new lines, and not affecting badly next merges from 10.3 to 10.4 to 10.5. Also remove a duplicate line that was found thanks to wrap-and-sort.
| * | | | Deb: Remove unnecessary manual libzstd1 dependency from RocksDB pluginOtto Kekäläinen2020-02-132-2/+0
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The Debian build tools add all run-time dependencies automatically. For the mariadb-rocksdb-plugin the "${misc:Depends}, ${shlibs:Depends}" will become (based on the build dependencies at build time): Depends: mariadb-server-10.4 (= 1:10.4.12-1), rocksdb-tools, libc6 (>= 2.29), liblz4-1 (>= 0.0~r130), libsnappy1v5 (>= 1.1.8), libstdc++6 (>= 7), libzstd1 (>= 1.3.3), zlib1g (>= 1:1.1.4) There is no need to manually add run-time build dependencies. Only external dependencies need to be defined, for example rocksdb-tools could come in question for mariadb-plugin-rocksdb, and it will be eventually added when downstream official Debian packaging is merged upstream in a later commit.
* | | | | Fixes for previous not-complete-pushMonty2020-03-092-8/+8
| | | | |
* | | | | Added keyread_time() to HEAPMonty2020-03-096-11/+15
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The default keyread_time() was optimized for blocks and not suitable for HEAP. The effect was the HEAP prefered table scans over ranges for btree indexes. Fixed also get_sweep_read_cost() for HEAP tables.
* | | | | Second stage of optimizer_trace optimizationsMonty2020-03-095-166/+200
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | - Move testing of my_writer to inline functions to avoid calls - Made more functions inline. Especially thd->thread_started() is now very optimized! - Moved Opt_trace_stmt classe to opt_trace_context.h to get critical functions inline
* | | | | Improved speed of optimizer traceMonty2020-03-099-102/+176
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | - Added unlikely() to optimize for not having optimizer trace enabled - Made THD::trace_started() inline - Added 'if (trace_enabled())' around some potentially expensive code (not many found) - Added ASSERT's to ensure we don't call expensive optimizer trace calls if optimizer trace is not enabled - Added length to Json_writer functions to speed up buffer writes when optimizer trace is enabled. - Changed LEX_CSTRING argument handling to not send full struct to writer function on_add_str() functions now trusts length arguments
* | | | | MDEV-21841 CONV() function doesn't truncate its output to 21 when uses ↵Roman Nozdrin2020-02-293-1/+27
| | | | | | | | | | | | | | | | | | | | default charset.
* | | | | MDEV-21693: Fix clang -Winconsistent-missing-overrideMarko Mäkelä2020-02-281-193/+193
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | ha_partition: Remove redundant 'virtual' keywords and add missing 'override'. FIXME: handler::table_type() is not declared virtual, yet ha_partition and ha_sequence are seemingly trying to override it.
* | | | | MDEV-21693 ALGORITHM=INSTANT does not work for partitioned tablesThirunarayanan Balathandayuthapani2020-02-284-1/+64
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | - Flag ALTER_STORED_COLUMN_TYPE set while doing varchar extension for partition table. Basically all partition supports can_be_converted_by_engine() then it should be set to ALTER_COLUMN_TYPE_CHANGE_BY_ENGINE.
* | | | | MDEV-21684: mysqld crash with signal 11 when renaming table+max_statement_timebb-10.4-MDEV-21684Oleksandr Byelkin2020-02-264-14/+129
| | | | | | | | | | | | | | | | | | | | Main select should be pushed first in case of SET STATEMENT.
* | | | | MDEV-21610 Different query results from 10.4.11 to 10.4.12Sergei Petrunia2020-02-202-4/+16
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Part#2: cleanup: In the part 1 of the fix, DS-MRR implementation would peek into the JOIN_TAB to get the rowid filter from table->reginfo.join_tab->rowid_filter This doesn't look good from code isolation standpoint (why should a storage engine assume it is used through a JOIN_TAB?). Fixed this by storing the 'un-pushed' rowid_filter in the DsMrr_impl structure. The filter survives across multi_range_read_init() calls. It is discarded when somebody calls index_end() or rnd_end() and cleans up the DsMrr_impl.
* | | | | Fix compile failure, compare_key_parts in handler shadowed by MyRocksSergei Petrunia2020-02-191-0/+1
| | | | | | | | | | | | | | | | | | | | | | | | | The two functions have different signature. Use "using ..." to prevent shadowing
* | | | | MDEV-21610 Different query results from 10.4.11 to 10.4.12Igor Babaev2020-02-186-21/+516
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This patch fixes the following defects/bugs. 1. If BKA[H] algorithm was used to join a table for which the optimizer had decided to employ a rowid filter the filter actually was not built. 2. The patch for the bug MDEV-21356 that added the code canceling pushing rowid filter into an engine for the table joined with employment of BKA[H] and MRR was not quite correct for Innodb engine because this cancellation was done after InnoDB code had already bound the the pushed filter to internal InnoDB structures.
* | | | | MDEV-20726 InnoDB: Assertion failure in file data0type.cc line 67bb-10.4-MDEV-20726-alter-utf8Eugene Kosov2020-02-184-9/+35
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Do not rebuild index when it's key part converted from utf8mb3 to utf8mb4 but key part stays the same. dict_index_add_to_cache(): assert that prefix_len is divided by mbmaxlen ha_innobase::compare_key_parts(): compare key part lenght in symbols instead of bytes.
* | | | | cleanup: key parts comparisonEugene Kosov2020-02-185-63/+120
| | | | | | | | | | | | | | | | | | | | Engine specific code moved to engine.
* | | | | Add missing files.Jan Lindström2020-02-172-0/+12
| | | | |
* | | | | MDEV-21601 : Cleanup Galera disabled testsJan Lindström2020-02-168-134/+0
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * Remove those tests that will not be supported on that release. * Make sure that correct tests are disabled and have MDEVs * Sort test names This should not be merged upwards.
* | | | | Fix Galera test galera_as_slave_ctas.Jan Lindström2020-02-162-30/+32
| | | | |
* | | | | MDEV-21420 : Galera test failure on galera.mysql-wsrep#33Jan Lindström2020-02-164-7/+418
| | | | | | | | | | | | | | | | | | | | Add more tests and move SST restore to correct place.