Commit graph

165110 commits

Author SHA1 Message Date
Alexander Barkov
fc1f301e91 MDEV-8024 Remove excessive update_used_tables() calls 2015-04-22 12:40:23 +04:00
Kristian Nielsen
e7a7ea7ec1 Merge branch '10.0' into 10.1 2015-04-21 10:31:39 +02:00
Kristian Nielsen
4760528754 MDEV-8029: test failure in rpl.rpl_parallel_temptable
Fix a silly typo that caused the test to occasionally fail.
2015-04-21 10:16:14 +02:00
Kristian Nielsen
6876a7dc4e Bump VERSION following 10.1.4 release 2015-04-20 15:37:45 +02:00
Kristian Nielsen
d4e3aa4c6f After-merge fixes: .result file update 2015-04-20 14:23:55 +02:00
Kristian Nielsen
a15a4d674d Merge MDEV-7802 into 10.1 2015-04-20 13:22:51 +02:00
Kristian Nielsen
791b0ab5db Merge 10.0 -> 10.1 2015-04-20 13:21:58 +02:00
Kristian Nielsen
519ad0f7e3 MDEV-8016: Replication aborts on DROP /*!40005 TEMPORARY */ TABLE IF EXISTS
This was a regression from the patch for MDEV-7668.

A test was incorrect, so the slave would not properly handle re-using
temporary tables, which lead to replication failure in this case.
2015-04-20 12:59:46 +02:00
Alexander Barkov
c6d08ecce3 Merge commit 'bc902a2bfc46add0708896c07621e3707f66d95f' into 10.1 2015-04-20 11:45:22 +04:00
Elena Stepanova
87d543831d Increase the version number 2015-04-20 02:43:26 +03:00
Kristian Nielsen
18715befd2 Post-merge fix: build error in innodb-enabled build. 2015-04-17 19:48:55 +02:00
Kristian Nielsen
5f233c55d0 Merge 10.0 -> 10.1. 2015-04-17 15:19:27 +02:00
Kristian Nielsen
167332597f Merge 10.0 -> 10.1.
Conflicts:
	mysql-test/suite/multi_source/multisource.result
	sql/sql_base.cc
2015-04-17 15:18:44 +02:00
Alexander Barkov
22a7b4dee0 Removing duplicate code/declarations:
Removing "Field *result_field" from Item_field and Item_ref,
and deriving Item_ident and Item_ref from Item_result_field
instead.
2015-04-17 16:26:08 +04:00
Kristian Nielsen
14d15785d1 MDEV-7802: Omit one test which could fail on very loaded host. 2015-04-17 12:45:55 +02:00
Alexander Barkov
8125db1d9a Moving fix_length_and_dec() from Item_result_field to Item_func_or_sum,
as the other decendants of Item_result_field (Item_avg_field,
Item_variance_field, Item_cache_wrapper) don't need fix_length_and_dec().
2015-04-17 12:36:31 +04:00
Alexander Barkov
99898c6f76 Minor reorganization in Item hierarchy, to remove duplicate code.
- Adding a new class Item_args, represending regular function or
  aggregate function arguments array.

- Adding a new class Item_func_or_sum,
  a parent class for Item_func and Item_sum

- Moving Item_result_field::name() to Item_func_or_sum(),
  as name() is not needed on Item_result_field level.
2015-04-17 09:52:44 +04:00
Nirbhay Choubey
3c4668c519 wsrep_sst_mysqldump : Fix server version and a syntax error 2015-04-15 23:06:03 -04:00
Nirbhay Choubey
d051f6c36b MDEV-6594: Use separate domain_id for Galera transactions
Post-fix : A typo and better error handling.
2015-04-15 11:12:12 -04:00
Nirbhay Choubey
a1f3356bf3 Update galera package name/version for debian 2015-04-15 10:21:46 -04:00
Kristian Nielsen
a8523559e9 Merge MDEV-7975 into 10.0 2015-04-14 14:23:35 +02:00
Kristian Nielsen
0c6904258b Merge MDEV-7975 into 10.1 2015-04-14 14:10:37 +02:00
Kristian Nielsen
5d2b85a297 MDEV-7975: sporadic failure in test case rpl.rpl_gtid_startpos
Add some suppressions that were missing. They are for if a STOP SLAVE is
executed early during IO thread startup, when it is negotiating with the
master. The master connection may be killed in the middle of a
mysql_real_query(), which is not a test failure if it is a network error.

This also caught one real code error, fixed with this commit: The I/O thread
would fail to automatically reconnect if a network error happened while
fetching the value of @@GLOBAL.gtid_domain_id.
2015-04-14 13:03:11 +02:00
Sergei Petrunia
f6f253bddc Fix a typo, s/false/NULL/. 2015-04-14 04:02:45 -07:00
Alexander Barkov
201c985be5 MDEV-7886 CREATE VIEW IF NOT EXISTS produces a wrong warning 2015-04-13 22:36:49 +04:00
Kristian Nielsen
ed34927065 MDEV-7936: Assertion `!table || table->in_use == _current_thd()' failed on parallel replication in optimistic mode
Additional 10.1-specific test case.
2015-04-13 14:38:25 +02:00
Kristian Nielsen
2de8db6296 Merge MDEV-7936 into 10.1 2015-04-13 14:28:07 +02:00
Kristian Nielsen
17aff4b17b Merge MDEV-7936 into 10.0.
Conflicts:
	sql/sql_base.cc
2015-04-13 14:27:25 +02:00
Kristian Nielsen
60d094aeac MDEV-7936: Assertion `!table || table->in_use == _current_thd()' failed on parallel replication in optimistic mode
Make sure that in parallel replication, we execute wait_for_prior_commit()
before setting table->in_use for a temporary table. Otherwise we can end up
with two parallel replication worker threads competing with each other for
use of a temporary table.

Re-factor the use of find_temporary_table() to be able to handle errors
in the caller (as wait_for_prior_commit() can return error in case of
deadlock kill).
2015-04-13 14:24:18 +02:00
Kristian Nielsen
c47fe0e9db MDEV-7668: Intermediate master groups CREATE TEMPORARY with INSERT, causing parallel replication failure
[This commit cherry-picked to be able to merge MDEV-7936, of which it
is a pre-requisite, into both 10.0 and 10.1.]

Parallel replication depends on locking (table locks, row locks, etc.) to
prevent two conflicting transactions from running and committing in parallel.
But temporary tables are designed to be visible only to one thread, and have
no such locking.

In the concrete issue, an intermediate master could commit a CREATE TEMPORARY
TABLE in the same group commit as in INSERT into that table. Thus, a
lower-level master could attempt to run them in parallel and get an error.

More generally, we need protection from parallel replication trying to run
transactions in parallel that access a common temporary table.

This patch simply causes use of a temporary table from parallel replication
to wait for all previous transactions to commit, serialising the replication
at that point.

(A more fine-grained locking could be added later, possibly. However,
using temporary tables in statement-based replication is in any case
normally undesirable; for example a restart of the server will lose
temporary tables and can break replication).

Note that row-based replication is not affected, as it does not do any
temporary tables on the slave-side.

This patch also cleans up the locking around protecting the list of
temporary tables in Relay_log_info. This used to take the
rli->data_lock at the end of every statement, which is very bad for
concurrency. With this patch, the lock is not taken unless temporary
tables (with statement-based binlogging) are in use on the slave.
2015-04-13 14:08:57 +02:00
Alexander Barkov
8a01a0acb3 MDEV-7920 main.group_min_max fails in buildbot with valgrind 2015-04-13 11:26:49 +04:00
Sergei Petrunia
d8a4a83635 Merge branch 'bb-10.1-explain-analyze' into 10.1 2015-04-12 10:48:20 +02:00
Sergei Petrunia
7ac2f1fbf1 Update test results after previous pushes 2015-04-12 10:30:10 +02:00
Sergei Petrunia
2bbf3b89f6 MDEV-7836: ANALYZE FORMAT=JSON should provide info about GROUP/ORDER BY
Fix EXPLAIN FORMAT=JSON to produce output that's not worse than
the tabular form.
2015-04-12 06:07:58 +02:00
Sergei Petrunia
cc8da9b75a Merge ../10.1-explain-analyze into bb-10.1-explain-analyze 2015-04-12 05:34:30 +02:00
Sergei Petrunia
a445b83d73 Merge branch '10.1' of github.com:MariaDB/server into 10.1 2015-04-12 05:16:48 +03:00
Sergei Petrunia
771dec39fd Merge branch '10.1' into bb-10.1-explain-analyze 2015-04-12 05:07:39 +03:00
Sergei Petrunia
0719df781e Merge 2015-04-12 04:59:34 +03:00
Sergei Petrunia
4938b82263 MDEV-7836: ANALYZE FORMAT=JSON should provide info about GROUP/ORDER BY
Provide basic info about sorting/grouping done by the queries.
2015-04-12 04:48:42 +03:00
Sergei Golubchik
d214c83b5e mtr: make search_pattern_in_file.inc more verbose
report when a pattern is found
do not abort, but merely report when a pattern is not found
2015-04-11 10:22:26 +02:00
Sergei Golubchik
4e15146fe6 update tokudb test results after dd8f93195
that is, after

  commit dd8f931957
  Author: Sergei Golubchik <serg@mariadb.org>
  Date:   Fri Apr 10 02:36:54 2015 +0200

    be less annoying about sysvar-based table attributes
    do not *always* add them to the create table definition,
    but only when a sysvar value is different from a default.
    also, when adding them - don't quote numbers
2015-04-11 10:13:49 +02:00
Sergei Golubchik
4a7472bbf2 fix a crash in innodb.innodb-wl5522-zip,xtradb
dereferencing of the uninitialized pointer bpade->slot
(when compiled without UNIV_DEBUG)
2015-04-11 00:28:42 +02:00
Sergei Golubchik
a73676b2e6 Merge branch '10.1' into bb-10.1-serg 2015-04-10 19:32:14 +02:00
Sergei Golubchik
24341cb6cb add encryption plugins to deb packages 2015-04-10 18:01:53 +02:00
Alexander Barkov
135f203d28 A cleanup for the contributed patch for
MDEV-7816 ALTER with DROP INDEX and ADD INDEX .. COMMENT='comment2' ignores the new comment
2015-04-10 17:04:44 +04:00
Sergei Golubchik
d2ed256ef7 move debug_ and example_key_management plugins to test component 2015-04-10 14:24:58 +02:00
Sergei Golubchik
899c5c32cf smarter MY_CHECK_AND_SET_COMPILER_FLAG
If a flag is supported only for C or C++ - add it to the
corresponding compiler option list. Old behavior was to
add always to both, but only if supported in both.
2015-04-10 13:39:29 +02:00
Sergei Golubchik
87b46dcdc9 disable scrubbing tests on windows
unportable, use grep
2015-04-10 13:30:12 +02:00
Alexander Barkov
23e90e9a22 Merge branch 'MDEV-7816' of git://github.com/f4rnham/server into 10.1 2015-04-10 15:17:44 +04:00
Sergei Golubchik
7d49e6940e fix "use mutex before initialization" bug in example_km plugin
that for some reasons worked on linux, but crashed on windows
2015-04-10 09:46:21 +02:00