1
0
mirror of https://github.com/MariaDB/server.git synced 2025-11-30 05:23:50 +03:00
Commit Graph

330 Commits

Author SHA1 Message Date
Andrei Elkin
15219eb08a MDEV-14290 Binlog rotate crashes when two commit_checkpoint_notify capable engines.
The crash (sometimes assert) in MYSQL_BIN_LOG::mark_xid_done was caused by a
fact that log.cc:binlog_background_thread_queue could become a cyclic list.
This possibility becomes real with two checkpoint capable engines that
may execute TC_LOG_BINLOG::commit_checkpoint_notify() in succession before
binlog_background thread gets control and eventually finds a freed memory
while otherwise endlessly looping in while(queue).

It is fixed with counting the notificaion kind instead of en-listing the same notificaion kind in commit_checkpoint_notify as formerly. The while(queue) of binlog background thread is refined to pay attention to the new counter. In effectno more access to free memory is possible.
2017-12-11 12:41:45 +02:00
Sergei Petrunia
bdeb27a000 MDEV-14123: .rocksdb folder may break workflow which re-create data directory
Part #2: Adjust other parts of testsuite to take into account
that RocksDB files are in "#rocksdb" now.
2017-12-11 12:31:59 +03:00
Sergei Petrunia
ddc1d6904a MDEV-14123: .rocksdb folder may break workflow which re-create data directory
Part2: make MyRocks add its directory into @@ignore_db_dirs when starting.

This is necessary because apparently not everybody are using plugin's my.cnf
So load ha_rocksdb.{so,dll} manually and then hit MDEV-12451, MDEV-14461
etc.
2017-12-11 12:31:58 +03:00
Sergei Petrunia
b8a0373ed2 MDEV-14123: ".rocksdb folder may break workflow", and other MDEVs
Rename  Use '#rocksdb' instead of '.rocksdb' as subdirectory for RocksDB
datadir.
2017-12-11 12:31:58 +03:00
Sergei Petrunia
a6254e5e7d MDEV-14563: Wrong query plan for query with no PK
TABLE_SHARE::init_from_binary_frm_image() calls handler_file->index_flags()
before it has set TABLE_SHARE::primary_key (it is 0 while it should be
MAX_KEY in my example).
This causes MyRocks to report wrong index flags (it thinks it's a PK while
it is not), which causes invalid query plans later on.

Do the only thing that seems feasible: adjust field->part_of key to have
correct value in ha_rocksdb::open.
2017-12-06 12:35:17 +03:00
Sergei Petrunia
c3803914c5 MDEV-14433: RocksDB may show empty or incorrect output with rocksdb_strict_collation_check=off
Part#1: Set field->part_of_key correctly for PK fields.
2017-12-06 12:35:17 +03:00
Vladislav Vaintroub
0d1e805aeb Fix rocksdb tests on Windows 2017-11-16 22:11:08 +00:00
Vladislav Vaintroub
689168be12 MDEV-13852 - redefine WinWriteableFile such as IsSyncThreadSafe()
is set to true, as it should.

Copy and modify original io_win.h header file to a different location
(as we cannot patch anything in submodule). Make sure modified header is
used.
2017-11-16 18:57:18 +00:00
Sergei Petrunia
e2376e8137 MDEV-14334: Update test results for rocksdb.bulk_load_rev_data 2017-11-09 19:52:55 +03:00
Monty
d40c23570f Cleanup up after failed alter table in add_index_inplace_crash 2017-11-09 14:58:26 +02:00
Sergei Petrunia
80d61515ac Make rocksdb.read_only_tx pass and enable it
- FB/MySQL 5.6' MyRocks has START TRANSACTION WITH CONSISTENT
  ROCKSDB SNAPSHOT, which returns binlog position.

- MariaDB has a cross-engine START TRANSACTION WITH CONSISTENT
  SNAPSHOT. It can be used for the same purpose. Binlog position
  can be obtained from Binlog_snapshot_file/position status vars.
2017-11-02 16:15:37 +00:00
Elena Stepanova
a269173e97 Workaround for MDEV-13852 (tests don't run on Windows) 2017-10-30 03:24:35 +02:00
Sergei Petrunia
7cca0df0d7 Fix rocksdb.rocksdb test
Forgot to put the updated rocksdb.result in
2017-10-29 22:55:51 +03:00
Sergei Petrunia
e5678c3fac MDEV-13904: rocksdb.add_index_inplace_sstfilewriter timed out
Downscale rocksdb.add_index_inplace_sstfilewriter to be 10x smaller
2017-10-29 13:21:23 +03:00
Sergei Petrunia
34188ac455 Organize information in storage/rocksdb/mysql-test/rocksdb/t/disabled.def 2017-10-29 09:41:40 +00:00
Sergei Petrunia
a6dc22fc73 MyRocks: enable a few tests that do not seem to fail anymore 2017-10-29 11:49:18 +03:00
Sergei Petrunia
b6d4859547 MDEV-14181: rocksdb.rocksdb fails: line 1117: query 'reap' succeeded - should have failed
Fix a race condition in the testcase.
2017-10-29 11:39:52 +03:00
Sergei Petrunia
8abe840085 Merge branch 'bb-10.2-mariarocks' of github.com:MariaDB/server into 10.2 2017-10-29 11:27:24 +03:00
Sergei Petrunia
3d46ebbc89 MDEV-11934: MariaRocks: Group Commit with binlog
Adjust and enable rocksdb.2pc_group_commit test
2017-10-27 17:48:17 +03:00
Sergei Petrunia
1792a80af4 Disable rocksdb.col_opt_zerofill due to MDEV-14165. 2017-10-27 12:33:27 +03:00
Sergei Petrunia
965c72d331 MDEV-12474 - Fails in fulltest
Apply fix for https://github.com/facebook/mysql-5.6/issues/748
A few tests in rocksdb suite fail with --ps-protocol

They fail because --ps-protocol uses different data format on the
wire. Work around that by doing a dummy CONCAT operation which forces
the data to be transfered in text form (like it is done without
--ps-protocol)
2017-10-26 18:22:48 +03:00
Sergei Petrunia
9d47c4cfdb Merge branch '10.2' of github.com:MariaDB/server into bb-10.2-mariarocks 2017-10-23 09:47:10 +00:00
Sergei Petrunia
4995091c33 Temporarily disable rocksdb.rpl_ddl_high_priority test 2017-10-20 14:15:37 +00:00
Sergei Petrunia
7c42b091b7 Make rocksdb.index_merge_rocksdb2 test stable 2017-10-20 13:36:55 +03:00
Sergei Petrunia
f11eaaa3f6 Merge branch 'bb-10.2-mariarocks' of github.com:MariaDB/server into 10.2
Conflicts:
	storage/rocksdb/ha_rocksdb.cc
2017-10-13 14:37:04 +03:00
Sergei Petrunia
8f6266e927 MDEV-13852: temporarily disable running tests on windows 2017-10-11 14:41:09 +03:00
Sergei Petrunia
d1eee0407f Temporarily disable tests that rely on FB-only features 2017-10-09 13:35:43 +03:00
Sergei Petrunia
f62f9d661a Fix rocksdb.perf_context test
The part of the test that counts IO should be run with default
rocksdb_flush_log_at_trx_commt.
2017-10-09 13:29:09 +03:00
Sergei Petrunia
6ff8d57128 Fix mege error in rocksdb.use_direct_reads_writes test 2017-10-09 12:56:31 +03:00
Sergei Petrunia
262d7e4c09 Post-merge test fixes part #3. 2017-09-19 17:20:36 +03:00
Sergei Petrunia
da9c385fd6 Post-merge test fixes part #2. 2017-09-19 17:00:54 +03:00
Sergei Petrunia
f321f0823b Post-merge fixes part #1. 2017-09-19 16:15:08 +03:00
Sergei Petrunia
6b0588018a Merge branch '10.2' of github.com:MariaDB/server into bb-10.2-mariarocks-merge 2017-09-19 15:34:38 +03:00
Sergei Petrunia
ba3209e219 Merge mergetrees/merge-myrocks into bb-10.2-mariarocks-merge
Upstream cset we are merging from:

    commit 184a4a2d82f4f6f3cbcb1015bcdb32bebe73315c
    Author: Abhinav Sharma <abhinavsharma@fb.com>
    Date:   Thu Sep 14 11:40:08 2017 -0700

        Bump rocksdb submodule

        Summary:
        Bump rocksdb to include the fix for rocksdb.trx_info_rpl

Lots of conflicts, got the code to compile but tests are likely to
be broken
2017-09-18 14:06:01 +03:00
Sergei Petrunia
3fae64b196 Copy of
commit 184a4a2d82f4f6f3cbcb1015bcdb32bebe73315c
Author: Abhinav Sharma <abhinavsharma@fb.com>
Date:   Thu Sep 14 11:40:08 2017 -0700

    Bump rocksdb submodule

    Summary:
    Bump rocksdb to include the fix for rocksdb.trx_info_rpl

    The bug was introduced in: https://github.com/facebook/rocksdb/pull/2850
    Fixed in: https://github.com/facebook/rocksdb/pull/2881

    update-submodule: rocksdb

    Reviewed By: lth

    Differential Revision: D5834658

    fbshipit-source-id: d1551bf
2017-09-15 10:04:49 +00:00
Sergei Petrunia
49878be331 MDEV-13602: rocksdb.index_merge_rocksdb2 failed in buildbot
Part#2: stabilize the test output
2017-09-12 13:32:09 +03:00
Sergei Petrunia
4ae200a97a Update test results for rocksdb.bulk_load_rev_cf_and_data 2017-09-05 18:28:05 +03:00
Sergei Petrunia
0e45edf350 MDEV-13669: Some MyRocks test take a long time
Make rocksdb.bloomfilter* tests 1.8x faster by doing loading in bulk
2017-08-31 11:42:41 +03:00
Sergei Petrunia
d20fa48599 MDEV-13669: Some MyRocks test take a long time
Make rocksdb.cardinality test faster (77 -> 42 sec with --mem) by
loading records in batches.
(loading everything as one bulk load batch will remove the purpose
 of the test)
2017-08-30 11:45:24 +03:00
Sergei Petrunia
fba53e7775 Make MyRocks test stable: Data_length may vary slightly as well 2017-08-25 11:55:12 +03:00
Sergei Petrunia
765519694d Enable basic XA between MyRocks and the binlog
This allows basic master crash-safety
- Un-comment and update relevant parts of the code
- Make rocksdb_rpl suite work like other MyRocks testsuites
  (load the MyRocks plugin, don't start if it is not compiled in, etc)
- For now, disable all tests in the rocksdb_rpl suite.
- MariaDB-fication of rpl_rocksdb_2p_crash_recover test.
2017-08-25 11:55:12 +03:00
Sergei Petrunia
ae0759ad45 MDEV-13602: rocksdb.index_merge_rocksdb2 failed in buildbot
- Add include/index_merge*. Upstream has different files than MariaDB,
  use copies theirs, not ours.
- There was a prblem with running "DDL-like" commands with binlog=ON:
  MariaDB sets binlog_format=STATEMENT for the duration of such command
  to prevent RBR replication from catching (and replicating) updates to
  system tables.
  However, MyRocks tries to prevent any writes to MyRocks tables with
  binlog_format!=ROW.
- Added exceptions for DDL-type commands (ANALYZE TABLE, OPTIMIZE TABLE)
- Added special handling for "LOCK TABLE(s) myrocks_table WRITE".
2017-08-23 18:41:43 +03:00
Sergei Petrunia
ef8e1a35cc Fix rocksdb.bulk_load test
- Remove the merge error
- Update test results
2017-08-21 16:12:09 +03:00
Sergei Petrunia
4f34ec26fa MDEV-13600: Update test results for rocksdb.bulk_load_rev_cf 2017-08-21 15:26:21 +03:00
Sergei Petrunia
c354cb66b0 MDEV-13515: rocksdb.use_direct_reads_writes fails in buildbot with not found pattern
The test mis-used MTR's "restart the server if it crashed or exited"
feature to try starting MyRocks plugin with invalid arguments.

Changed the test to use the --default-storage-engine=myisam which
allows the server to start when MyRocks fails to start.

This removes the need to "start the server with the arguments which
will caused it to fail to start", and so removes the race conditions
with MTR server restart code and  mysqld.*.expect file.
2017-08-15 16:42:11 +03:00
Elena Stepanova
88879b37fc Changes to RocksDB tests after the engine merge 2017-08-14 23:39:35 +03:00
Sergei Petrunia
d24f76e1a8 MDEV-13522: rocksdb.rocksdb_parts failed in buildbot
Make test result stable
2017-08-14 23:12:35 +03:00
Sergei Petrunia
5ae598390a Attempt to make rocksdb.rocksdb_parts stable 2017-08-07 18:12:24 +03:00
Sergei Petrunia
30c36b2c15 Make rocksdb.rocksdb_icp test stable 2017-08-07 17:25:11 +03:00
Sergei Petrunia
93a6eed607 Backport to 10.2: Make rocksdb.type_varchar test stable
It may produce test failures like this because of non-deterministic
cost calculations:

-1	SIMPLE	t1	#	col1	col1	259	NULL	#	Using where
+1	SIMPLE	t1	#	col1	NULL	NULL	NULL	#	Using where
2017-08-06 15:36:50 +03:00