Commit graph

4577 commits

Author SHA1 Message Date
unknown
c776f5ac26 Client attributes 2013-10-03 18:00:44 +03:00
Andrew McDonnell
2f78f22acb MTR Test results for 1233113 2013-10-03 20:46:27 +09:30
Andrew McDonnell
aefcd57880 Regression test for 1233113 2013-10-03 20:34:03 +09:30
Andrew McDonnell
5f7177749c Test to check illegal ops return correct error code 2013-10-03 19:47:35 +09:30
Alexander Barkov
6226043425 pcre: fixing a test failure in character_sets_dir_basic in this command:
--replace_regex /.prefix.sql.share.charsets[/\]/MYSQL_CHARSETSDIR/
select @@global.character_sets_dir;

The intention of the '[/\]' part was to replace both slash
'/' and backslash '\\', so it does not depend on the OS.

The pattern '[/\]' was actually wrong, because ']' is escaped
and should be considered as a part of the class, instead of
being a closing bracket for the class. However, due to some bug
in the old REGEX library it worked fine.

After switching to PCRE, mysqltest correctly complains about unbalaced '[]'.
The expected correct pattern should be '[/\\]'.
However, due to some bug in mysqltest, it eats consequetive baskslashes
in a strange way, so there is no a way to have to consequetive 
backslashes after unescaping.

Workaround:

using [[:punct:]] as a pattern that matches both slash and backslash,
which should be fine for this test purposes.
2013-09-30 14:59:01 +04:00
Sergey Vojtovich
5051793e2e Disabled failing test case. 2013-09-30 14:56:19 +04:00
unknown
45c3c71513 MDEV-4506: Parallel replication. .result file updates + a few comment updates. 2013-09-30 10:41:41 +02:00
Sergey Vojtovich
47a240c6bc MDEV-4864 - Merge tests for EXCHANGE PARTITION feature 2013-09-27 16:58:49 +04:00
Alexander Barkov
285e7aa179 MDEV-4425 REGEXP enhancements 2013-09-26 18:02:17 +04:00
unknown
61ba356a9d Innodb tests innodb_file_format cleanup. 2013-09-25 14:19:25 +03:00
unknown
4a38b9db9a Innodb full text search tests. 2013-09-24 16:47:33 +03:00
unknown
192bafe526 Check for duplicate index (port from mysql)
(pre fts)
2013-09-20 22:30:19 +03:00
Alexander Barkov
e33582d20d Merging TO_BASE64() and FROM_BASE64() from MySQL-5.6 2013-09-23 18:58:33 +04:00
Sergey Vojtovich
815c607dcf MDEV-4879 - Merge test cases for new CREATE TEMPORARY TABLE privilege model
- merged test cases for MySQL bug#27480
- fixed that LOCK TABLES was unable to open temporary table
  (covered by grant2 test, merged appropriate code from 5.6)
- commented lines that cause server crash in merge test, reported
  MDEV-5042 (not relevant to bug#27480)
2013-09-20 13:12:53 +04:00
Sergei Golubchik
9af177042e 10.0-base merge.
Partitioning/InnoDB changes are *not* merged (they'll come from 5.6)
TokuDB does not compile (not updated to 10.0 SE API)
2013-09-21 10:14:42 +02:00
unknown
36df41ed95 MDEV-4506: Parallel replication.
Add another test case.
2013-09-19 12:45:59 +02:00
Sergei Golubchik
275101c624 merge 2013-09-18 20:14:21 +02:00
Sergei Golubchik
4ec2e9d7ed 5.5 merge and fixes for compiler/test errors 2013-09-18 13:07:31 +02:00
unknown
39794dc72c MDEV-4506: Parallel replication.
Add another test case, using DEBUG_SYNC.
Fix one bug found.
2013-09-17 14:07:21 +02:00
Sergey Vojtovich
d4f83cc40c MDEV-4911 - add KILL query id, and add query id information to processlist
- issue proper error message if query id is not found
- do not allow kill query id 0
- fixed ps-protocol and embedded tests
2013-09-16 18:14:46 +04:00
unknown
5633dd8227 MDEV-4506: parallel replication.
Add a simple test case.
Fix bugs found.
2013-09-16 14:33:49 +02:00
Andrew McDonnell
66e8439dd7 More test suite cleanups. 2013-09-14 23:05:05 +09:30
Sergey Vojtovich
1a2a9d74fe MDEV-4911 - add KILL query id, and add query id information to processlist
It is now possible to kill query by query id. KILL syntax was extended to:
KILL [HARD | SOFT] [CONNECTION | QUERY [ID query_id]] [thread_id | USER user_name]

Added QUERY_ID column to INFORMATION_SCHEMA.PROCESSLIST.

Fixed tests affected by this change:
- added PROCESSLIST.QUERY_ID column
- ID is now keyword and is quoted in SHOW CREATE TABLE output
- PFS statement digest is calculated basing on token id
  (not token text). Token id has shifted for keywords residing
  after ID in keywords array.
2013-09-13 20:14:56 +04:00
Andrew McDonnell
725e86d803 Remove superfluous test 2013-09-13 23:08:52 +09:30
Andrew McDonnell
7dad8f1673 Skip deleted records mid table. 2013-09-13 22:58:22 +09:30
Andrew McDonnell
62cb9fbe13 Updated tests for 1213120 2013-09-13 22:51:51 +09:30
Andrew McDonnell
fc984d3d01 Updated test result for bug 1195735 2013-09-13 22:47:01 +09:30
Andrew McDonnell
078cf03304 Partial for for lp bug 796647 - handle DELETED records in ha_rnd_next of backing table 2013-09-13 22:42:09 +09:30
Alexander Barkov
51dcf4dcff Merge from 5.3.
pending merges:
  Alexander Barkov 2013-09-12 MDEV-4724 Some temporal functions do not pre...
2013-09-13 12:06:17 +04:00
Alexander Barkov
499ddea576 MDEV-4724 Some temporal functions do not preserve microseconds 2013-09-12 21:31:14 +04:00
Andrew McDonnell
323d45826f Ensure we have an up to date count of edges of backing table 2013-09-12 22:32:58 +09:30
Sergei Golubchik
62643f81e6 merge with 5.5-tokudb tree. In particular:
* add TokuDB, together with the ft-index library
* cmake support, auto-detecting whether tokudb can be built
* fix packaging - tokudb-engine.rpm, deb
* remove PBXT
* add jemalloc
* the server is built with jemalloc by default even if TokuDB is not built
* documentation files in RPM are installed in the correct location
* support for optional deb packages (tokudb has specific build requirements)
* move plugins from mariadb-server deb to appropriate debs (server/test/libmariadbclient)
* correct mariadb-test.deb to be not architecture-independent
* fix out-of-tree builds to never modify in-tree files
* new handler::prepare_index_scan() method
2013-09-10 23:02:25 +02:00
Andrew McDonnell
2560ce0085 MOre fixes related to merge of lp:maria/10.0 2013-09-10 22:45:18 +09:30
Andrew McDonnell
c43058d0e7 Fix for order by crash, release dangling cursor when unlocking table. 2013-09-10 22:44:45 +09:30
Andrew McDonnell
174fc2a8f3 Fix remaining build problems caused by merge from lp:maria/10.0 2013-09-09 21:50:20 +09:30
Sergei Golubchik
b838d081ad mysql-5.5.33 merge 2013-09-06 22:31:30 +02:00
andrew
86d49f149e Merge upstream latest maria/10.0 2013-09-06 20:45:53 +09:30
Sergei Golubchik
6755944d08 remove PBXT 2013-08-30 11:25:49 +02:00
Michael Widenius
112411b056 Fixed MySQL bug #69861 LAST_INSERT_ID is replicated incorrectly if replication filters are used
mysql-test/suite/rpl/r/last_insert_id.result:
  Test case for last_insert_id
mysql-test/suite/rpl/t/last_insert_id.cnf:
  Test case for last_insert_id
mysql-test/suite/rpl/t/last_insert_id.test:
  Test case for last_insert_id
sql/log_event.cc:
  Added DBUG_PRINT
  Set thd->first_successful_insert_id_in_prev_stmt_for_binlog when setting thd->first_successful_insert_id_in_prev_stmt.
  This is required to get last_insert_id() replicated.
  This is analog to how read_first_successful_insert_id_in_prev_stmt() works.
sql/rpl_utility.cc:
  Added DBUG_PRINT
2013-08-27 19:18:04 +03:00
unknown
b978a14c6e MDEV-4650: show variables; ERROR 1946 (HY000): Failed to load replication slave GTID position
The bug was that if mysql.slave_gtid_pos was missing, operations on variables
gtid_slave_pos, gtid_binlog_pos, and gtid_current_pos would fail, and continue
to fail even after the table was fixed, until server restart.

Now setting the variables retry loading the table, succeeding if it has been
restored. And querying the variables when the table is not there acts as if
the table was there and was empty.

Also, attempt to fix a race in the rpl.rpl_gtid_basic test case.
2013-08-26 12:51:09 +02:00
unknown
f9c2b402f4 MDEV-26: Global transaction ID.
Implement @@gtid_binlog_state. This is the internal state of the binlog
(most recent GTID logged for every domain_id and server_id). This allows
to save the state before RESET MASTER and restore it afterwards.
2013-08-23 14:02:13 +02:00
unknown
f74c745a99 MDEV-4488: When master is on the list of ignore_server_ids, GTID position on slave is not updated
The ignored events are not written to the relay log, but instead a fake
Rotate event is generated to handle update of position.

Extend this for Gtid so we similarly generate a fake Gtid_list event
to update the GTID position.

Also fix an unrelated test issue that got triggered by the added test cases.
2013-08-22 12:36:42 +02:00
unknown
0903a40d09 bMDEV-4906: When event apply fails, next SQL thread start errorneously commits the failing GTID to gtid_slave_pos
When a GTID event is executed, we remember the contained GTID position so that
when we have applied the entire event group we can commit it to
gtid_slave_pos.

However, if the event group fails to apply due to some error and the SQL
thread aborts, the code did not correctly clear the remembered GTID. Thus,
when SQL thread was restarted, the old GTID of the failing event group was
incorrectly updated to gtid_slave_pos when the initial rotate event was
executed, corrupting the GTID position.
2013-08-20 13:44:50 +02:00
unknown
35b2883643 merge 5.5 -> 10.0-base 2013-08-20 14:48:29 +03:00
Igor Babaev
4eddb2c221 Merge 5.3->5.5.
In particular:
Merged the patch for bug mdev-4418 from 5.3 into 5.5.
Fixed a bug in the patch that should be backported to 5.3.
2013-08-18 19:58:51 -07:00
Andrew McDonnell
6686a4eb51 Tests for bug #1213120 2013-08-17 00:13:18 +09:30
Andrew McDonnell
007ff24cd4 Another variant of 796647 2013-08-16 23:56:19 +09:30
Andrew McDonnell
da87bf53c7 Regression tests for 796647 2013-08-16 23:51:27 +09:30
unknown
f0deff867a MDEV-4820: Empty master does not give error for slave GTID position that does not exist in the binlog
The main bug here was the following situation:

Suppose we set up a completely new master2 as an extra multi-master to an
existing slave that already has a different master1 for domain_id=0. When the
slave tries to connect to master2, master2 will not have anything that slave
requests in domain_id=0, but that is fine as master2 is supposedly meant to
serve eg. domain_id=1. (This is MDEV-4485).

But suppose that master2 then actually starts sending events from
domain_id=0. In this case, the fix for MDEV-4485 was incomplete, and the code
would fail to give the error that the position requested by the slave in
domain_id=0 was missing from the binlogs of master2. This could lead to lost
events or completely wrong replication.

The patch for this bug fixes this issue.

In addition, it cleans up the code a bit, getting rid of the fake_gtid_hash in
the code. And the error message when slave and master have diverged due to
alternate future is clarified, as requested in the bug description.
2013-08-16 15:10:25 +02:00
Igor Babaev
960720b10d Merge 5.2->5.3 2013-08-15 14:04:20 -07:00