- 26 Jun, 2019 5 commits
-
-
Monty authored
-
Vlad Lesin authored
There are two options when coping S3 tables with mysqldump (there is startup option --copy_s3_tables, boolean, default no) 1) Ignore all tables with engine S3, as the data is already safe in S3 and any computer where you restore the backup will automatically discover the S3 table. 2) Copy the table as a normal table with the following 2 changes: - Change ENGINE=S3 to ENGINE=ARIA; - After copy add to log 'ALTER TABLE table_name ENGINE=S3'
-
Vlad Lesin authored
The error occured because aria_copy_to_s3() function tried to copy .frm file of partition, but partition does not have it's own .frm file. The same is true for aria_rename_s3(). To fix this issue the new parameter was added to those two functions to specify if .frm file must be copied or not. The parameter is set to 'false' for partitions. Also there was other issue with EXCHANGE PARTITION. Briefly, there is the following sequence of operations(see exchange_name_with_ddl_log() for details): 1) rename swap table to temporary table, 2) rename partition to swap table, 3) rename temporary table to partition. On step (1) .frm file is renamed too. On step (2) the swap table does not have .frm file, as partition does not have it. On step (3) partition will have .frm file, because it will be renamed from temporary table. All of this causes error on different stages of the table access. To fix it, .frm is not touched at all for s3 during EXCHANGE PARTITION operation. This is implemented in ha_s3::rename_table() by additional checking of current_thd->lex->alter_info.partition_flags(see also ALTER_PARTITION_EXCHANGE in sql_yacc.yy).
-
Alexander Barkov authored
-
Alexander Barkov authored
-
- 25 Jun, 2019 1 commit
-
-
Monty authored
-
- 24 Jun, 2019 4 commits
-
-
Monty authored
-
Monty authored
-
Alexander Barkov authored
-
Alexander Barkov authored
-
- 22 Jun, 2019 2 commits
-
-
Alexander Barkov authored
-
Alexander Barkov authored
-
- 21 Jun, 2019 1 commit
-
-
Alexander Barkov authored
-
- 20 Jun, 2019 3 commits
-
-
Alexander Barkov authored
-
Marko Mäkelä authored
-
Alexander Barkov authored
-
- 19 Jun, 2019 4 commits
-
-
Vladislav Vaintroub authored
Use __builtin_ctzll on GCC/Clang and _BitScanForward/_BitScanForward64 on MSVC to speed up Table_map_iterator::next_bit(), up to 3 times in benchmarks
-
Vladislav Vaintroub authored
Removed Field_map, since it was used only in a single function. Fixed is_indexed_agg_distinct(), since it relied on initialization of Bitmap in constructor.
-
Marko Mäkelä authored
-
Marko Mäkelä authored
-
- 18 Jun, 2019 9 commits
-
-
Daniel Bartholomew authored
-
Michael Widenius authored
The test cases for the MDEV found several independent bugs in MariaDB server and Aria: - If a temporary table was marked as crashed, it could never be deleted. - Opening of a crashed temporary table gave an error message but the error was never forwarded to the caller which caused an assert() in my_ok() - init_read_record() did mmap of all temporary tables, which is probably not a good idea as this area can potentially be very big. Changed code to only mmap internal temporary tables. - mmap-ed tables where not unmapped in case of repair/optimize which caused bad data in table and crashes if the original table files where replaced with new ones (as the old mmap was still in place). Fixed by removing the mmap in case of repair. - Cleaned up usage of code that disabled mmap in Aria
-
Sergei Golubchik authored
-
Michael Widenius authored
Problem was that in case of implicit rollback for alter table Aria did try to run commit twice. The test case for this is tricky to do in 10.2, so it will be added to 10.4 as part of BACKUP STAGE testing.
-
mkaruza authored
MDEV-18832 Galera: 10.4 node crashed with Assertion `state() == s_committing' if you create SEQUENCE, use it, then drop and recreate and use again (#1339) We could still end committing to binlog even in rollback. Do not proceed with WSREP commit in this case.
-
mkaruza authored
MDEV-18940 Galera: Rolling upgrade: all nodes except upgraded node5 failed with Assertion `meta->gtid.seqno == wsrep_thd_trx_seqno(thd)' with SEQUENCEs (#1342) Empty write sets will not trigger apply callback, and will not update thread wsrep_trx_meta.gtid.seqno. Because of that assert will be triggered when commit callback is called.
-
Marko Mäkelä authored
-
Vladislav Vaintroub authored
-
Alexander Barkov authored
In collaboration with Sergey Vojtovich <svoj@mariadb.org> The COMPRESSED clause is now a part of the data type and goes immediately after the data type and length, but before the CHARACTER SET clause, and before column attributes such as DEFAULT, COLLATE, ON UPDATE, SYSTEM VERSIONING, engine specific column attributes. In the old reduction, the COMPRESSED clause was a column attribute. New syntax: <varchar or text data type> <length> <compression> <character set> <column attributes> <varbinary or blob data type> <length> <compression> <column attributes> New syntax examples: VARCHAR(1000) COMPRESSED CHARACTER SET latin1 DEFAULT '' BLOB COMPRESSED DEFAULT '' Deprecate syntax examples: VARCHAR(1000) CHARACTER SET latin1 COMPRESSED DEFAULT '' TEXT CHARACTER SET latin1 DEFAULT '' COMPRESSED VARBINARY(1000) DEFAULT '' COMPRESSED As a side effect: - COMPRESSED is not valid as an SP label name in SQL/PSM routines any more (but it's still valid as an SP label name in sql_mode=ORACLE) - COMPRESSED is now allowed in combination with GENERATED ALWAYS AS: TEXT COMPRESSED GENERATED ALWAYS AS REPEAT('a',1000)
-
- 17 Jun, 2019 11 commits
-
-
Vladislav Vaintroub authored
- Do not scan registry to check if TCPIP is supported. - Do not read registry under HKEY_LOCAL_MACHINE\SOFTWARE\MySQL anymore. - Do not load threadpool function dynamically, it is available since Win7. - simplify win32_init_tcp_ip(), and return error of WSAStartup() fails. - Correct comment in my_parameter_handler()
-
Vladislav Vaintroub authored
No need to do dynamic loading and fallbacks anymore. We can safely assume Windows 7, and availability of all SRWLock functions.
-
Sergei Golubchik authored
followup for 0a43df4f
-
Sergei Golubchik authored
-
Vladislav Vaintroub authored
Do not check my_errno before it is set, check errno instead. Also, do not check errno, if prior pread() did not fail.
-
Vladislav Vaintroub authored
Restore the detection of default charset in command line utilities. It worked up to 10.1, but was broken by Connector/C. Moved code for detection of default charset from sql-common/client.c to mysys, and make command line utilities to use this code if charset was not specified on the command line.
-
Vladislav Vaintroub authored
-
Daniel Bartholomew authored
-
Michael Widenius authored
There was two separate problems: - Aria pagecache didn't properly handle re-reading of blocks that have given errors before (this triggered an assert) - temporary tables that where opened several times where not properly closed in ALTER, REPAIR or OPTIMIZE table Other things - Added a couple of asserts that will make it easier to find problems like this in the future.
-
Sergei Golubchik authored
post-merge fixes: * .gitignore * don't put the keyword COMPONENT into ${COMP} anymore * don't alias mytop, but do alias mysql_client_test * don't symlink manpages, use troff aliasing technique instead (symlinked manpages break rpm and out-of-source bintar builds) * move debian to use troff aliased manpages, fix typos in debian files, put aliases in the correct packages, add more aliases to match rpm/bintar packaging
-
Rasmus Johansson authored
-