- 04 Dec, 2016 6 commits
-
-
Alexey Botchkov authored
Integer/Double recognition added.
-
Alexey Botchkov authored
Create_func_json_contains::create_native fixed.
-
Alexey Botchkov authored
Create_func_json_merge::create_native fixed.
-
Alexey Botchkov authored
json_quote fixed.
-
Alexey Botchkov authored
fix_length_and_dec() didn't calculate the length of the result properly.
-
Alexey Botchkov authored
MDEV-11438 Assertion `null_value' failed in Item::send(Protocol*, String*) upon casting NULL as JSON. test added.
-
- 03 Dec, 2016 8 commits
-
-
Alexey Botchkov authored
Depth of nested objects should be controlled.
-
Alexey Botchkov authored
The depth of nested arrays should be controlled, as it's limited.
-
Alexey Botchkov authored
Item_func_json_search::val_str didn't set the null_value properly. So that affected the next record in the resultset.
-
Alexey Botchkov authored
JSON_ARRAY didn't expect 0 arguments.
-
Alexey Botchkov authored
CAST AS JSON didn't set the null_value mark properly.
-
Alexey Botchkov authored
Some JSON functions didn't expect NULL as a path.
-
Alexey Botchkov authored
MDEV-11442 Server crashes in String::length / parse_one_or_all /Item_func_json_contains_path::val_int Didn't expect 'one_or_all' parameter to be NULL.
-
Alexey Botchkov authored
Wrong 'value_lengh' taken
-
- 02 Dec, 2016 2 commits
-
-
Jan Lindström authored
MDEV-11168: InnoDB: Failing assertion: !other_lock || wsrep_thd_is_BF(lock->trx->mysql_thd, FALSE) || wsrep_thd_is_BF(other_lock->trx->mysql_thd, FALSE) Merge fix from 10.1.
-
Marko Mäkelä authored
trx_state_eq(): Add the parameter bool relaxed=false, to allow trx->state==TRX_STATE_NOT_STARTED where a different state is expected, if an error has been reported. trx_release_savepoint_for_mysql(): Pass relaxed=true to trx_state_eq(). That is, allow the transaction to be idle when ROLLBACK TO SAVEPOINT is attempted after an error has been reported to the client.
-
- 01 Dec, 2016 6 commits
-
-
Sergei Golubchik authored
-
Marko Mäkelä authored
MDEV-9451: Remove innodb_buffer_pool_populate from xtradb (10.2)
-
Marko Mäkelä authored
MySQL 5.7 introduced WL#7943: InnoDB: Implement Information_Schema.Files to provide a long-term alternative for accessing tablespace metadata. The INFORMATION_SCHEMA.INNODB_* views are considered internal interfaces that are subject to change or removal between releases. So, users should refer to I_S.FILES instead of I_S.INNODB_SYS_TABLESPACES to fetch metadata about CREATE TABLESPACE. Because MariaDB 10.2 does not support CREATE TABLESPACE or CREATE TABLE…TABLESPACE for InnoDB, it does not make sense to support I_S.FILES either. So, let MariaDB 10.2 omit the code that was added in MySQL 5.7. After this change, I_S.FILES will report the empty result, unless some other storage engine in MariaDB 10.2 implements the interface. (The I_S.FILES interface was originally created for the NDB Cluster.)
-
Jan Lindström authored
MDEV-11168: InnoDB: Failing assertion: !other_lock || wsrep_thd_is_BF(lock->trx->mysql_thd, FALSE) || wsrep_thd_is_BF(other_lock->trx->mysql_thd, FALSE) Problem was that we moved lock request to head of lock queue even when lock request has to wait.
-
Marko Mäkelä authored
MariaDB 10.2 incorporates MySQL 5.7. MySQL 5.7.9 (the first GA release of the series) introduced an informational field to the InnoDB redo log header, which identifies the server version where the redo log files were created (initialized, resized or updated), in WL#8845: InnoDB: Redo log format version identifier. The informational message would be displayed to the user, for example if someone tries to start up MySQL 8.0 after killing a MariaDB 10.2 server. In the current MariaDB 10.2 source code, the identifier string would misleadingly say "MySQL 5.7.14" (using the hard-coded version number in univ.i) instead of "MariaDB 10.2.3" (using the contents of the VERSION file, the build system copies to config.h and my_config.h). This is only a cosmetic change. The compatibility check is based on a numeric identifier. We should probably also change the numeric identifier and some logic around it. MariaDB 10.2 should refuse to recover from a crashed MySQL 5.7 instance, because the redo log might contain references to shared tablespaces, which are not supported by MariaDB 10.2. Also, when MariaDB 10.2 creates an encrypted redo log, there should be a redo log format version tag that will prevent MySQL 5.7 or 8.0 from starting up.
-
Jan Lindström authored
Corrected error message when ONLINE alter table with GIS indexes is used on InnoDB.
-
- 30 Nov, 2016 3 commits
-
-
Daniel Black authored
innodb_buffer_pool_populate has not had an effect since 10.0.23 in commit 1e270d50 when its functionality was removed. As we've only just enabled LIBNUMA in MDEV-10829 it isn't logical to have innodb_buffer_pool_populate aliasing for innodb_numa_interleave this late in the game. So the simpliest way is just to remove innodb_buffer_pool_populate. Signed-off-by: Daniel Black <daniel.black@au.ibm.com>
-
Jan Lindström authored
-
Igor Babaev authored
The bug was fixed by the patch for mdev-10882.
-
- 29 Nov, 2016 3 commits
-
-
Igor Babaev authored
The implementation of the virtual method build_clone for the class Item_cache was missing.
-
Alexey Botchkov authored
Some fixes made in innodb and item_create.cc. Adapted Innodb-GIS tests moved to MariaDB.
-
Oleksandr Byelkin authored
-
- 27 Nov, 2016 7 commits
-
-
Otto Kekäläinen authored
-
Otto Kekäläinen authored
-
Otto Kekäläinen authored
For backwards compatibility reasons. E.g. innotop builds against libmysqlclient.so and expects to find a libmysqlclient.so.18 library and does not use libmariadb.so.3 even when built from our own sources. This commit mimics to dcfe6cb8
-
Otto Kekäläinen authored
This change was accidentally omitted from commit 2bcc16c1
-
Otto Kekäläinen authored
As libmariadb.so.3 does not reside in a multi-arch directory (yet), use the plain path.
-
Alexander Barkov authored
This patch adds DEFAULT as a possible dynamic SQL parameter, e.g.: EXECUTE IMMEDIATE 'INSERT INTO t1 (column) VALUES(?)' USING DEFAULT; EXECUTE IMMEDIATE 'UPDATE t1 SET column=?' USING DEFAULT; and for similar PREPARE..EXECUTE queries. This is done for symmetry with the STMT_INDICATOR_DEFAULT indicator in the client-server PS protocol. The changes include: - Allowing DEFAULT as a possible option in execute USING clause (sql_yacc.yy) - Adding "virtual bool Item::save_in_param(THD *thd, Item_param *param)", because "normal" items (that have real values) and Item_default_value have now different actions when assigning itself as an Item_param value. - Fixing switch() statements in a few Item_param methods not to have "default", because it was easy to forget to add a new "case" when adding a new XXX_VALUE value into the enum Item_param::enum_item_param_state. This is important, as we'll be adding new values soon, e.g. for MDEV-11359. Removing "default" helped to find and report bugs MDEV-11361 and MDEV-11362, because DECIMAL_VALUE is obviously not properly handled in some cases.
-
Igor Babaev authored
The fix for bug 11072 was not complete though it also fixed the bug mdev-10800. This patch resolves the problems of all three bugs.
-
- 26 Nov, 2016 2 commits
-
-
Otto Kekäläinen authored
Fall back to old iproute on Debian Wheezy and Ubuntu Precise that don't have iproute2 available.
-
Otto Kekäläinen authored
-
- 25 Nov, 2016 3 commits
-
-
Marko Mäkelä authored
-
https://github.com/kevgs/serverMarko Mäkelä authored
Revert the XtraDB changes, because 10.2 does not currently build with XtraDB. Also omit some changes that need further investigation. Ensure that all callers of partition_info::get_clone() are passing this!=NULL.
-
Marko Mäkelä authored
buf_block_init(): Initialize buf_page_t::flush_type. For some reason, Valgrind 3.12.0 would seem to flag some bits in adjacent bitfields as uninitialized, even though only the two bits of flush_type were left uninitialized. Initialize the field to get rid of many warnings. buf_page_init_low(): Initialize buf_page_t::old. For some reason, Valgrind 3.12.0 would seem to flag all 32 bits uninitialized when buf_page_init_for_read() invokes buf_LRU_add_block(bpage, TRUE). This would trigger bogus warnings for buf_page_t::freed_page_clock being uninitialized. (The V-bits would later claim that only "old" is initialized in the 32-bit word.) Perhaps recent compilers (GCC 6.2.1 and clang 4.0.0) generate more optimized x86_64 code for bitfield operations, confusing Valgrind? mach_write_to_1(), mach_write_to_2(), mach_write_to_3(): Rewrite the assertions that ensure that the most significant bits are zero. Apparently, clang 4.0.0 would optimize expressions of the form ((n | 0xFF) <= 0x100) to (n <= 0x100). The redundant 0xFF was added in the first place in order to suppress a Valgrind warning. (Valgrind would warn about comparing uninitialized values even in the case when the uninitialized bits do not affect the result of the comparison.)
-