summaryrefslogtreecommitdiff
Commit message (Collapse)AuthorAgeFilesLines
* MDEV-27831 Let the SQL SERVICE user set the current user name.bb-10.7-mdev-27831-hfAlexey Botchkov2022-02-1513-25/+65
| | | | The 'user' argument added to the mysql_real_connect_local.
* Merge 10.6 into 10.7Marko Mäkelä2022-02-146-1/+69
|\
| * Merge 10.5 into 10.6Marko Mäkelä2022-02-146-1/+69
| |\
| | * Merge 10.4 into 10.5Marko Mäkelä2022-02-144-1/+53
| | |\
| | | * Merge 10.3 into 10.4Marko Mäkelä2022-02-144-1/+53
| | | |\
| | | | * Merge 10.2 into 10.3Marko Mäkelä2022-02-144-1/+53
| | | | |\
| | | | | * bump the VERSIONDaniel Bartholomew2022-02-121-1/+1
| | | | | |
| | | | | * Disable innodb_gis.rtree_compress2Marko Mäkelä2022-02-111-0/+1
| | | | | |
| | | | | * MDEV-27746 Wrong comparision of BLOB's empty preffix with non-preffixed BLOB ↵Vlad Lesin2022-02-113-1/+52
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | causes rows count mismatch for clustered and secondary indexes during non-locking read row_sel_sec_rec_is_for_clust_rec() treats empty BLOB prefix field in secondary index as a field equal to any external BLOB field in clustered index. Row_sel_get_clust_rec_for_mysql::operator() doesn't zerro out clustered record pointer in row_search_mvcc(), and row_search_mvcc() thinks that delete-marked secondary index record has visible for "CHECK TABLE"'s read view old-versioned clustered index record, and row_scan_index_for_mysql() counts it as a row. The fix is to execute row_sel_sec_rec_is_for_blob() in row_sel_sec_rec_is_for_clust_rec() if clustered field contains BLOB's reference.
| | | | * | Merge mariadb-10.3.34 into 10.3Marko Mäkelä2022-02-1424-35/+5566
| | | | |\ \
| | | | * | | bump the VERSIONDaniel Bartholomew2022-02-121-1/+1
| | | | | | |
| | | * | | | Merge mariadb-10.4.24 into 10.4Marko Mäkelä2022-02-1424-39/+5566
| | | |\ \ \ \
| | | * | | | | bump the VERSIONDaniel Bartholomew2022-02-121-1/+1
| | | | | | | |
| | * | | | | | Merge mariadb-10.5.15 into 10.5Marko Mäkelä2022-02-1423-33/+5567
| | |\ \ \ \ \ \
| | * | | | | | | bump the VERSIONDaniel Bartholomew2022-02-121-1/+1
| | | | | | | | |
| | * | | | | | | MDEV-27813 Windows, compiling : RelWithDebInfo should use /Ob2Vladislav Vaintroub2022-02-111-0/+12
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Fixed inlining flags. Remove /Ob1 added by CMake for RelWithDebInfo. (the actual compiler default is /Ob2 if optimizations are enabled) Allow to define custom /Ob flag with new variable MSVC_INLINE, if desired
| | * | | | | | | MDEV-27804 Fails to build - perf schema - thread id of type uintptr_t ↵Samuel Thibault2022-02-111-0/+4
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | requires header While building on GNU/Hurd and kfreebsd. On the C++ standard uintptr_t can be defined in <cstdint> ref: https://www.cplusplus.com/reference/cstdint/ Fixes: 0d44792a835128a83ff07f14dbbcdd621df9f7da
* | | | | | | | | Merge 10.6 into 10.7Marko Mäkelä2022-02-142-3/+5
|\ \ \ \ \ \ \ \ \ | |/ / / / / / / /
| * | | | | | | | MDEV-27817 InnoDB recovery of recently created files is not crash-safeMarko Mäkelä2022-02-131-1/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Before commit 86dc7b4d4cfe15a2d37f8b5f60c4fce5dba9491d (MDEV-24626) all tablespace ID that needed recovery were known already in recv_init_crash_recovery_spaces(). recv_sys_t::recover_deferred(): Invoke fil_names_dirty(space) on the newly initialized tablespace. In this way, if the next log checkpoint occurs at some LSN that is after the initialization of the tablespace and before the last recovered LSN, a FILE_MODIFY record will be written, so that a subsequent recovery will succeed. The recovery was broken when commit 0261eac57f137c5daae90f5bb1eaa4bf48ee431b merged the 10.5 commit f443cd11007ab89512d4141472cbd9d3b524bad6 (MDEV-27022).
| * | | | | | | | Merge mariadb-10.6.7 into 10.6Marko Mäkelä2022-02-1326-39/+5576
| |\ \ \ \ \ \ \ \
| * | | | | | | | | bump the VERSIONDaniel Bartholomew2022-02-121-1/+1
| | | | | | | | | |
| * | | | | | | | | MDEV-27805: tpcc workload shows regression with MDB-10.6Krunal Bauskar2022-02-111-2/+3
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | - regression got revealed while running tpcc workload. - as part of MDEV-25919 changes logic for statistics computation was revamped. - if the table has changed to certain threshold then table is added to statistics recomputation queue (dict_stats_recalc_pool_add) - after the table is added to queue the background statistics thread is notified - during revamp the condition to notify background statistics threads was wrongly updated to check if the queue/vector is empty when it should check if there is queue/vector has entries to process. - vec.begin() == vec.end() : only when vector is empty - also accessing these iterator outside the parallely changing vector is not safe - fix now tend to notify background statistics thread if the logic adds an entry to the queue/vector.
* | | | | | | | | | Merge mariadb-10.7.3 into 10.7Marko Mäkelä2022-02-1426-39/+5576
|\ \ \ \ \ \ \ \ \ \
| * \ \ \ \ \ \ \ \ \ Merge branch '10.6' into 10.7mariadb-10.7.3Sergei Golubchik2022-02-1026-39/+5576
| |\ \ \ \ \ \ \ \ \ \ | | | |/ / / / / / / / | | |/| | | | | | | |
| | * | | | | | | | | Merge branch '10.5 into 10.6mariadb-10.6.7Sergei Golubchik2022-02-1026-39/+5576
| | |\ \ \ \ \ \ \ \ \ | | | |/ / / / / / / / | | |/| | / / / / / / | | | | |/ / / / / / | | | |/| | | | | |
| | | * | | | | | | Merge branch '10.4' into 10.5mariadb-10.5.15Sergei Golubchik2022-02-1023-33/+5567
| | | |\ \ \ \ \ \ \ | | | | |/ / / / / / | | | |/| | / / / / | | | | | |/ / / / | | | | |/| | | |
| | | | * | | | | Merge branch '10.3' into 10.4mariadb-10.4.24Sergei Golubchik2022-02-1024-39/+5566
| | | | |\ \ \ \ \ | | | | | |/ / / / | | | | |/| | / / | | | | | | |/ / | | | | | |/| |
| | | | | * | | Merge branch '10.2' into 10.3mariadb-10.3.34Sergei Golubchik2022-02-1024-35/+5566
| | | | | |\ \ \ | | | | | | |/ / | | | | | |/| / | | | | | | |/
| | | | | | * MDEV-25636: Bug report: abortion in sql/sql_parse.cc:6294mariadb-10.2.43bb-10.2-compatibilitySergei Petrunia2022-02-105-2/+99
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The asserion failure was caused by this query select /*id=1*/ from t1 where col= ( select /*id=2*/ from ... where corr_cond1 union select /*id=4*/ from ... where corr_cond2) Here, - select with id=2 was correlated due to corr_cond1. - select with id=4 was initially correlated due to corr_cond2, but then the optimizer optimized away the correlation, making the select with id=4 uncorrelated. However, since select with id=2 remained correlated, the execution had to re-compute the whole UNION. When it tried to execute select with id=4, it hit an assertion (join buffer already free'd). This is because select with id=4 has freed its execution structures after it has been executed once. The select is uncorrelated, so it did not expect it would need to be executed for the second time. Fixed this by adding this logic in st_select_lex::optimize_unflattened_subqueries(): If a member of a UNION is correlated, mark all its members as correlated, so that they are prepared to be executed multiple times.
| | | | | | * MDEV-26351 segfault - (MARIA_HA *) 0x0 in ha_maria::extraSergei Golubchik2022-02-103-5/+5
| | | | | | | | | | | | | | | | | | | | | | | | | | | | don't let Aria create a table that it cannot open
| | | | | | * MDEV-26351 segfault - (MARIA_HA *) 0x0 in ha_maria::extraSergei Golubchik2022-02-103-1/+5272
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | use the correct check. before invoking handler methods we need to know that the table was opened, not only created.
| | | | | | * MDEV-25766 Unused CTE lead to a crash in find_field_in_tables/find_order_in_listOleksandr Byelkin2022-02-103-3/+73
| | | | | | | | | | | | | | | | | | | | | | | | | | | | Do not assume that subquery Item always present.
| | | | | | * MDEV-27789 mysql_upgrade / mariadb-upgrade in 10.6.6 is putting password in ↵Monty2022-02-101-15/+11
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | host argument Removed all dependencies of command line arguments based on positions in an array (this kind of code should never have been written). Instead use option names, which are stable. Reviewer: Sergei Golubchik
| | | | | | * Merge branch '10.2' into bb-10.2-releaseOleksandr Byelkin2022-02-0911-9/+110
| | | | | | |\
| | | | | | | * bump the VERSIONDaniel Bartholomew2022-02-081-1/+1
| | | | | | | |
| | | | | | | * MDEV-27738 Windows : mysql-test-run --extern does not workVladislav Vaintroub2022-02-081-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Use portable quoting in mtr_add_arg.
| | | | | | | * MDEV-27737 Wsrep SST scripts not working on FreeBSDbb-10.2-galeraTeemu Ollakka2022-02-083-4/+12
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | - Changed SST scripts to use /usr/bin/env bash instead of /bin/bash for better portability. - Fixed use of mktemp on non-Linux platforms to produce temporary file instead of directory. Reviewed-by: Jan Lindström <jan.lindstrom@mariadb.com>
| | | | | | | * MDEV-17785: Window functions not working in ONLY_FULL_GROUP_BY modeSergei Petrunia2022-02-075-3/+94
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | (Backport Varun Gupta's patch + edit the commit comment) Name resolution code produced errors for valid queries with window functions (but not for queries which used aggregate functions as window functions). Name resolution code worked incorrectly, because window function objects had is_window_func_sum_expr()=false. This was so, because mark_as_window_func_sum_expr() was only called for aggregate functions used as window functions. The fix is to call it for any window function.
| | | | | | | * MDEV-27721 rpl.rpl_relay_max_extension test is not FreeBSD-compatibleAndrei2022-02-021-0/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Fixed the test to execute only on linux as it depends on unportable sed.
| | | | | * | | Merge branch '10.3' into bb-10.3-releaseOleksandr Byelkin2022-02-091-1/+1
| | | | | |\ \ \
| | | | | | * | | bump the VERSIONDaniel Bartholomew2022-02-081-1/+1
| | | | | | | | |
| | | | * | | | | Merge branch '10.4' into bb-10.4-releaseOleksandr Byelkin2022-02-091-1/+1
| | | | |\ \ \ \ \
| | | | | * | | | | bump the VERSIONDaniel Bartholomew2022-02-081-1/+1
| | | | | | | | | |
| | | * | | | | | | MDEV-27796 Windows - starting server with huge innodb-log-buffer-size may failVladislav Vaintroub2022-02-102-5/+8
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Fixed tpool::pread() and tpool::pwrite() to return SSIZE_T on Windows, so that huge numbers are not converted to negatives. Also, make sure to never attempt reading/writing more bytes than DWORD can accomodate (4G)
| | | * | | | | | | MDEV-25787 Bug report: crash on SELECT DISTINCT thousands_blob_fieldsSergei Golubchik2022-02-101-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | fix a debug assert to account for not opened temp tables
* | | | | | | | | | bump the VERSIONDaniel Bartholomew2022-02-121-1/+1
|/ / / / / / / / /
* | | | | | | | | support lzma < 5.1.3alphaSergei Golubchik2022-02-091-2/+8
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | where `lzma_allocator *allocator` isn't declared const
* | | | | | | | | Merge 10.6 into 10.7Marko Mäkelä2022-02-0922-100/+254
|\ \ \ \ \ \ \ \ \ | |/ / / / / / / /
| * | | | | | | | Merge 10.5 into 10.6Marko Mäkelä2022-02-0921-99/+253
| |\ \ \ \ \ \ \ \ | | |/ / / / / / /
| | * | | | | | | MDEV-27716 mtr_t::commit() acquires log_sys.mutex when writing no logMarko Mäkelä2022-02-093-30/+31
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | mtr_t::is_block_dirtied(), mtr_t::memo_push(): Never set m_made_dirty for pages of the temporary tablespace. Ever since commit 5eb539555b36a60944eefeb84d5d6d436ba61e63 we never add those pages to buf_pool.flush_list. mtr_t::commit(): Implement part of mtr_t::prepare_write() here, and avoid acquiring log_sys.mutex if no log is written. During IMPORT TABLESPACE fixup, we do not write log, but we must add pages to buf_pool.flush_list and for that, be prepared to acquire log_sys.flush_order_mutex. mtr_t::do_write(): Replaces mtr_t::prepare_write().