Commit graph

72 commits

Author SHA1 Message Date
Sergey Vojtovich
d665e79c5b MDEV-7660 - MySQL WL#6671 "Improve scalability by not using thr_lock.c locks
for InnoDB tables"

Don't use thr_lock.c locks for InnoDB tables. Below is list of changes that
were needed to implement this:
- HANDLER OPEN acquireis MDL_SHARED_READ instead of MDL_SHARED
- HANDLER READ calls external_lock() even if SE is not going to be locked by
  THR_LOCK
- InnoDB lock wait timeouts are now honored which are much shorter by default
  than server lock wait timeouts (1 year vs 50 seconds)
- with @@autocommit= 1 LOCK TABLES disables autocommit implicitely, though
  user still sees @@autocommt= 1
- the above starts implicit transaction
- transactions started by LOCK TABLES are now rolled back on disconnect
  (previously everything was committed due to autocommit)
- transactions started by LOCK TABLES are now rolled back by ROLLBACK
  (previously everything was committed due to autocommit)
- it is now impossible to change BINLOG_FORMAT under LOCK TABLES (at least
  to statement) due to running transaction
- LOCK TABLES WRITE is additionally handled by MDL
- ...in contrast LOCK TABLES READ protection against DML is pure InnoDB
- combining transactional and non-transactional tables under LOCK TABLES
  may cause rolled back changes in transactional table and "committed"
  changes in non-transactional table
- user may disable innodb_table_locks, which will cause LOCK TABLES to be
  noop basically

Removed tests for BUG#45143 and BUG#55930 which cover InnoDB + THR_LOCK. To
operate properly these tests require code flow to go through THR_LOCK debug
sync points, which is not the case after this patch. These tests are removed
by WL#6671 as well. An alternative is to port them to different storage engine.
2016-11-03 16:35:15 +04:00
Sergei Golubchik
06b7fce9f2 Merge branch '10.1' into 10.2 2016-09-09 08:33:08 +02:00
Sergei Golubchik
6b1863b830 Merge branch '10.0' into 10.1 2016-08-25 12:40:09 +02:00
Sergei Golubchik
077f29a921 Merge branch 'merge/merge-tokudb-5.6' into 10.0
5.6.31-77.0
2016-08-10 19:57:13 +02:00
Sergei Golubchik
4f2d214359 5.6.31-77.0 2016-08-10 19:30:20 +02:00
Sergey Vojtovich
840015f586 MDEV-10238 - tokudb_bugs.db938 fails due to connection logging (also affects
buildbot)

Updated test results according to MDEV-6720.
2016-07-21 14:13:12 +04:00
Sergei Golubchik
932646b1ff Merge branch '10.1' into 10.2 2016-06-30 16:38:05 +02:00
Sergei Golubchik
3361aee591 Merge branch '10.0' into 10.1 2016-06-28 22:01:55 +02:00
Sergey Vojtovich
9fc102b37e Fixed testcase check failure after db938.test 2016-06-23 12:44:28 +04:00
Sergei Golubchik
22d7860d78 fix tokudb tests after the merge 2016-06-11 22:47:30 +02:00
Sergei Golubchik
dde558f262 Merge branch 'merge-tokudb-5.6' into 10.0-tokudb-merge 2016-06-11 01:06:09 +02:00
Sergei Golubchik
ca95cc603b Merge branch 'merge-tokudb-5.6' into 10.0-tokudb-merge
5.6.28-76.1
2016-06-10 20:48:59 +02:00
Sergei Golubchik
f853a99a4f 5.6.30-76.3 2016-06-10 19:47:58 +02:00
Monty
9c846373f0 Merge commit 'd5822a3ad0657040114cdc185c6387b9eb3a12b2' into 10.2 2016-04-28 16:59:33 +03:00
Sergei Golubchik
30d9d4e26d 5.6.29-76.2 2016-04-26 20:58:29 +02:00
Sergei Golubchik
9a957a5b56 move mysql-test into storage/tokudb, rename suites 2016-04-26 20:56:25 +02:00
Monty
3f6125129f Fixed results 2016-04-07 20:38:21 +03:00
Sergey Vojtovich
282497dd6d MDEV-6720 - enable connection log in mysqltest by default 2016-03-31 10:11:16 +04:00
Sergei Golubchik
a2bcee626d Merge branch '10.0' into 10.1 2015-12-21 21:24:22 +01: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
Sergei Golubchik
15f7f5c6bb Merge branch 'merge-tokudb-5.6' into 10.0 2015-12-15 20:13:09 +01:00
Monty
6b20342651 Ensure that fields declared with NOT NULL doesn't have DEFAULT values if not specified and if not timestamp or auto_increment
In original code, sometimes one got an automatic DEFAULT value in some cases, in other cases not.

For example:
create table t1 (a int primary key)      - No default
create table t2 (a int, primary key(a))  - DEFAULT 0
create table t1 SELECT ....              - Default for all fields, even if they where defined as NOT NULL
ALTER TABLE ... MODIFY could sometimes add an unexpected DEFAULT value.

The patch is quite big because we had some many test cases that used
CREATE ... SELECT or CREATE ... (...PRIMARY KEY(xxx)) which doesn't have an automatic DEFAULT anymore.

Other things:
- Removed warnings from InnoDB when waiting from semaphore (got this when testing things with --big)
2015-08-18 11:18:57 +03:00
Sergei Golubchik
658992699b Merge tag 'mariadb-10.0.20' into 10.1 2015-06-27 20:35:26 +02:00
Sergei Golubchik
810cf362ea Merge branch '5.5' into 10.0 2015-06-11 20:20:35 +02:00
Sergei Golubchik
d199a0ffb0 more renames after tokudb merge 2015-06-11 17:47:52 +02:00
Sergei Golubchik
7b05650c7d Merge tag 'tokudb-engine/tokudb-7.5.7' into 5.5 2015-06-03 20:24:51 +02:00
Sergei Golubchik
5091a4ba75 Merge tag 'mariadb-10.0.19' into 10.1 2015-06-01 15:51:25 +02:00
Sergei Golubchik
49c853fb94 Merge branch '5.5' into 10.0 2015-05-04 22:00:24 +02:00
Sergei Golubchik
e4df6e5799 Merge commit 'tokudb-engine/tokudb-7.5.6' into 5.5 2015-04-27 16:19:54 +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
d7e7862364 Merge branch '5.5' into 10.0 2015-02-18 15:16:27 +01:00
Sergei Golubchik
ed839052d7 Merge tag 'tokudb-7.5.5' into bb-5.5-merge 2015-02-12 00:23:21 +01:00
Sergei Golubchik
ff55d900fb after-merge fixes 2015-01-21 14:02:26 +01:00
Sergei Golubchik
d9c01e4b4a 5.5 merge 2015-01-21 12:03:02 +01:00
Sergei Golubchik
f20598b27d TokuDB 7.5.4 2015-01-13 23:44:32 +01:00
Sergei Golubchik
3495801e2e 5.5 merge 2014-11-19 17:23:39 +01:00
Sergei Golubchik
302b50fa30 TokuDB 7.5.3 2014-11-18 17:54:00 +01:00
Sergei Golubchik
2160646c1d 5.5 merge 2014-11-03 17:47:37 +01:00
Sergei Golubchik
a2a18dd9d7 tokudb-7.5.3 2014-11-02 16:47:46 +01:00
Sergei Golubchik
06d6552192 5.5 merge 2014-09-23 23:55:29 +02:00
Sergei Golubchik
53a44915c5 merge 2014-09-23 23:37:35 +02:00
Sergei Golubchik
b91432b4a4 tokudb 7.5.0 2014-09-23 22:03:35 +02:00
Michael Widenius
348a24a70a Allow tokudb test to pass even if jemalloc is not available. 2014-09-23 13:57:55 +03:00
Michael Widenius
504c6cccd7 Fixed test failures
Added comments
Ensure that tokudb test works even if jemalloc is not installed
Removed not referenced function Item::remove_fixed()

mysql-test/suite/rpl/t/rpl_gtid_reconnect.test:
  Fixed race condition
sql/item.cc:
  Indentation fix
sql/item.h:
  Removed not used function
  Added comment
sql/sql_select.cc:
  Fixed indentation
storage/tokudb/mysql-test/rpl/include/have_tokudb.opt:
  Ensure that tokudb test works even if jemalloc is not installed
storage/tokudb/mysql-test/tokudb/suite.opt:
  Ensure that tokudb test works even if jemalloc is not installed
storage/tokudb/mysql-test/tokudb_add_index/suite.opt:
  Ensure that tokudb test works even if jemalloc is not installed
storage/tokudb/mysql-test/tokudb_alter_table/suite.opt:
  Ensure that tokudb test works even if jemalloc is not installed
storage/tokudb/mysql-test/tokudb_bugs/suite.opt:
  Ensure that tokudb test works even if jemalloc is not installed
storage/tokudb/mysql-test/tokudb_mariadb/suite.opt:
  Ensure that tokudb test works even if jemalloc is not installed
2014-09-22 23:25:56 +03:00
Sergei Golubchik
7e29c1b539 5.5 merge 2014-09-16 14:03:17 +02:00
Sergei Golubchik
77a0c9b161 tokudb: use thd_killed() api function, not thd->killed directly 2014-09-13 08:32:53 +02:00
Sergei Golubchik
e7ddd89adc tokudb tests: master-slave.inc should be included *last* 2014-09-13 08:16:00 +02:00
Sergei Golubchik
aef3818981 tokudb 7.1.8 2014-09-13 00:28:15 +02:00
Sergei Golubchik
14200dfa43 tokudb-7.1.7 2014-08-01 17:04:15 +02:00
Sergei Golubchik
6fb17a0601 5.5.39 merge 2014-08-07 18:06:56 +02:00