Commit graph

64548 commits

Author SHA1 Message Date
Alexander Barkov
5b9ee3f2ae MDEV-9220 Split filesort.cc:make_sortkey() and filesort.cc::sortlength() into virtual methods in Type_handler 2016-01-12 17:03:29 +04:00
Alexander Barkov
454589b67f MDEV-9393 Split Copy_field::get_copy_func() into virtual methods in Field
Also fixes:
MDEV-9391 InnoDB does not produce warnings when doing WHERE int_column=varchar_column
MDEV-9337 ALTER from DECIMAL and INT to DATETIME returns a wrong result
MDEV-9340 Copying from INT/DOUBLE to ENUM is inconsistent
MDEV-9392 Copying from DECIMAL to YEAR is not consistent about warnings
2016-01-11 17:20:16 +04:00
Alexander Barkov
2ba7ed77aa Merge remote-tracking branch 'origin/10.1' into 10.2 2015-12-29 19:37:11 +04:00
Alexander Barkov
1bb66ea88c Merge remote-tracking branch 'origin/10.0' into 10.1 2015-12-29 18:44:13 +04:00
Alexander Barkov
4d3bc26152 Merge remote-tracking branch 'origin/5.5' into 10.0 2015-12-29 18:41:37 +04:00
Alexander Barkov
61d3621ea3 Moving Field_blob::store_length() back from protected to public,
as it's needed for Cassandra in 10.0.
2015-12-29 18:40:41 +04:00
Alexander Barkov
4282ac48c6 Merge remote-tracking branch 'origin/10.0' into 10.1 2015-12-29 15:22:33 +04:00
Alexander Barkov
6d7362eeb8 Merge remote-tracking branch 'origin/5.5' into 10.0 2015-12-29 15:18:55 +04:00
Alexander Barkov
e1b9be5417 MDEV-9319 ALTER from a bigger to a smaller blob type truncates too much data 2015-12-29 14:17:31 +04:00
Sergey Vojtovich
ea578c9d6f MDEV-8491 - On shutdown, report the user and the host executed that. 2015-12-29 14:17:02 +04:00
Alexander Barkov
5c5034f9d4 Adding "const" qualifier to methods Field::eq_def() and
Copy_field::get_copy_func().
2015-12-28 12:18:41 +04:00
Alexander Barkov
af01d8430d MDEV-9327 Split memcpy_field_possible() into virtual methods in Field 2015-12-27 00:39:39 +04:00
Alexander Barkov
6eabe21d75 MDEV-9326 Split field_conv_incompatible() into methods 2015-12-26 21:25:48 +04:00
Sergey Vojtovich
09cf0a6213 MDEV-7780 - Support for faking server version
Embedded now supports "--version=<version>", while "--version" is still silently
ignored. Also only run protocol check in non-embedded mode.
2015-12-24 20:08:42 +04:00
Alexander Barkov
39fb94728f Changing the parameter of Field::eq_def() from "Field *" to "const Field *" 2015-12-24 11:37:16 +04:00
Nirbhay Choubey
000eba94f5 Merge branch '10.0-galera' into 10.1 2015-12-23 10:42:55 -05:00
Nirbhay Choubey
89a264809d MDEV-9224: postfix - thd can be null in reload_acl_and_cache() 2015-12-23 09:51:32 -05:00
Alexander Barkov
b424420f10 MDEV-9316 Add Field::store_hex_hybrid() 2015-12-23 14:15:00 +04:00
Nirbhay Choubey
e6c0f25f04 Merge branch '5.5-galera' into 10.0-galera 2015-12-22 15:09:29 -05:00
Nirbhay Choubey
fe4047dc39 MDEV-9224 : Database lockup on flush in galera
A deadlock can occur when the wsrep applier thread while
executing FLUSH TABLES waits for MDL lock owned by other
local transactions, which in turn are waiting for commit
order if their seqno comes after one assigned to FLUSH
TABLES.
Fixed by making sure that the wsrep applier thread while
executing FLUSH TABLES does not wait for table share(s)
to be removed from table definition cache.
2015-12-22 15:02:18 -05:00
Nirbhay Choubey
70113ee170 MDEV-9290 : InnoDB: Assertion failure in file trx0sys.cc line 353
Addendum: Save thd's server_status & option_bits before
setting the thread specific pointer.
2015-12-22 14:58:02 -05:00
Sergey Vojtovich
27e6fd9a59 MDEV-9095 - [PATCH] systemd capability for --memlock
Adjust systemd files to enable CAP_IPC_LOCK to allow rootless mlockall
(triggered by memlock option).

This is amended version of a patch originally submitted by Daniel Black.
2015-12-22 19:13:51 +04:00
Sergei Golubchik
d8e127f9f4 Merge branch '10.1' into bb-10.1-serg 2015-12-22 15:19:51 +01:00
Sergei Golubchik
0278151260 fix galera.lp1438990 test
binlog_savepoint_rollback() should not try to truncate a binlog
unless binlog_savepoint_set has actually remembered the position
to truncate to.
2015-12-22 11:59:15 +01:00
Sergei Golubchik
7697bf0bd7 Merge branch 'github/10.0-galera' into 10.1
Note: some tests fail, just as they failed before the merge!
2015-12-22 10:32:33 +01:00
Sergei Golubchik
0686c34d22 MDEV-8605 MariaDB not use DEFAULT value even when inserted NULL for NOT NULLABLE column
NOT NULL constraint must be checked *after* the BEFORE triggers.
That is for INSERT and UPDATE statements even NOT NULL fields
must be able to store a NULL temporarily at least while
BEFORE INSERT/UPDATE triggers are running.
2015-12-21 21:30:54 +01:00
Sergei Golubchik
ad5db17e88 cleanup
* move common code to a new set_bad_null_error() function
* move repeated comparison out of the loop
* remove unused code
  * unused method Table_triggers_list::set_table
  * redundant condition (if (table) after table was dereferenced)
* add an assert
2015-12-21 21:30:46 +01:00
Sergei Golubchik
a2bcee626d Merge branch '10.0' into 10.1 2015-12-21 21:24:22 +01:00
Alexey Botchkov
d58a770201 MDEV-7540 Information Schema SPATIAL_REF_SYS contents don't match the expected contents.
Table content filled appropriately.
        Thare are still just two records as we don't have geodetics yet.
2015-12-21 22:34:30 +04:00
Vicențiu Ciorbaru
afc2fb1bf8 MDEV-8627: SHOW GRANTS does not work for a replicated role
The bug was caused by accessing uninitialized fields within the LEX related to
ssl by mysql_show_grants() -> get_current_user() -> has_auth() function.
2015-12-21 13:42:19 +02:00
Nirbhay Choubey
8dfd157bb2 Merge branch '5.5-galera' into 10.0-galera 2015-12-19 19:19:32 -05:00
Nirbhay Choubey
dad555a09c Merge tag 'mariadb-10.0.23' into 10.0-galera 2015-12-19 14:24:38 -05:00
Sergei Golubchik
97d2c9bf39 MDEV-9214 Server miscalculates the number of XA-capable engines
Relax the number-of-XA-engines check on recovery. Allow *more*
engines to be present than absolutely necessary, extra engines
cannot affect ACID guarantees of the recovery process.

As a bonus, 10.0->crash->10.1 upgrade won't complain about
wsrep being a new XA storge engine.
2015-12-19 13:59:29 +01:00
Sergei Golubchik
392d557901 MDEV-9183 MariaDB 10.1 crash on mysqld --verbose --help
plugin_init() works like this:
1. init MyISAM
2. load plugins from mysql.plugin, if it's a MyISAM table
3. init all not initialized plugins
4. all done, if step 2 loaded mysql.plugin,
   otherwise:
5. load plugins from mysql.plugin
6. init all not initialized plugins

now, with --help --verbose, step 3 will not actually
initialize them, and if mysql.plugin is unreadable,
step 6 will try to initialize existing plugins again.
Fix: when skipping initialization because of --help,
change plugin status from PLUGIN_IS_UNINITIALIZED.
2015-12-19 13:59:29 +01:00
Sergei Golubchik
865548fc8d MDEV-9088 Server crashes on shutdown after the second post of feedback report
On shutdown feedback was sending a short report without creating
a THD. At that point current_thd was pointing to the already
destroyed THD from the previous full report.

backport from 10.1:
  commit bfe703a
  Author: Sergei Golubchik <serg@mariadb.org>
  Date:   Tue Feb 3 18:19:56 2015 +0100

      don't let current_thd to point to a destroyed THD
2015-12-19 13:36:21 +01:00
Nirbhay Choubey
3f515a09ff MDEV-9290 : InnoDB: Assertion failure in file trx0sys.cc line 353
As a fix for MDEV-8208, for initial wsrep threads, the
invocation of init_for_queries() was moved after plugins
were initialized. Due to which, OPTION_BEGIN bit of wsrep
applier THD (originally set in wsrep_replication_process)
got reset due to implicit commit within init_for_queries().
As a result, events from a multi-statement transaction from
another node were committed separately by the applier thread,
which leads to an assertion as they all carry same seqno.

Fixed by making sure that variable.option_bits are restored
post init_for_queries(). Also restored server_status.
Added a test case.
2015-12-16 20:07:12 -05:00
Sergey Vojtovich
90ea014585 MDEV-8378 - Debian: the Lintian complains about many "shlib-calls-exit" in many
of the plugins

Removed exit() from daemon_example, pass error to caller instead.
Also removed unused my_abort_hook.
2015-12-16 19:39:00 +04:00
Sergei Golubchik
7a21364332 after-merge fix partitioning tests
* use --sort_result in test files as needed
* remove old and wrong mariadb-5.3 related partitioning hack
   from ha_tokudb.cc
2015-12-15 20:25:04 +01:00
Oleksandr Byelkin
a75ac82c2f MDEV-9147: Character set is ignored in Dynamic Column for saved string
Fixed moving charset from definition to the value.
2015-12-15 14:08:29 +01:00
Nirbhay Choubey
18173ddfc4 MDEV-9162 : MariaDB Galera Cluster memory leak on async slave node
As galera node (slave) received query log events from an async
replication master, it partially wrote the updates made to replication
state table (mysql.gtid_slave_pos) to galera transaction writeset post
TOI. As a result, the transaction handle, thus created within galera,
was never freed/purged as the corresponding trx did not commit.
Thus, it kept piling up for every query log event and was only reclaimed
upon server shutdown when the transaction map object got destructed.
Fixed by making sure that updates in replication slave state table
are not written to galera transaction writeset and thus, not replicated
to other nodes.
2015-12-14 11:33:52 -05:00
Sergei Golubchik
1623995158 Merge branch '5.5' into 10.0 2015-12-13 00:10:40 +01:00
Sergei Golubchik
ca28d9011c MDEV-7655 SHOW CREATE TABLE returns invalid DDL when using virtual columns along with a table collation 2015-12-11 23:25:20 +01:00
Sergei Golubchik
f560c1ba42 revert 5e9a50efc3
that was mistakenly merged from mysql-5.5.47

(introduces valgrind failures in main.sp, because Field_varstring
columns are created as FIELD_NORMAL and that causes aria to
read bytes between the actual value length and field max length)
2015-12-11 23:25:20 +01:00
Sergei Golubchik
265e833fdd revert 415faa122b
that was mistakenly merged from mysql-5.5.47
2015-12-11 23:25:20 +01:00
Sergei Golubchik
4a450928e0 fix a few spelling mistakes
https://github.com/MariaDB/server/pull/56
2015-12-11 15:21:42 +01:00
Daniel Black
98274e6842 comment spelling Initailize -> Initialize 2015-12-11 15:21:42 +01:00
Nirbhay Choubey
ca07ee85ea Merge tag 'mariadb-5.5.47' into 5.5-galera 2015-12-10 13:00:08 -05:00
Oleksandr Byelkin
6eb8676361 MDEV-7215 EXPLAIN REPLACE produces an error: Column count doesn't match value count
removed outdated code which was causing error (no need reassign result for subqueries & Co)
2015-12-10 13:36:58 +01:00
Monty
44b107da90 Fixed a bug in galera + some failing galera tests
- Added missning setting of table->rpl_write_set in record_gtid(), required by galera
- Removed output of WSREP_PATCH_VERSION from galera_defaults, as this can change over time
- Limit galera_many_tables_pk and galera_many_tables_nopk to 900, as
  on many systems the default open table limit is 1024
2015-12-10 12:39:54 +02:00
Sergei Golubchik
abf9d35213 Merge branch 'mysql/5.5' into 5.5 2015-12-09 10:00:49 +01:00