- 24 Oct, 2009 1 commit
-
-
Sergey Petrunya authored
- Review fixes client/Makefile.am: - Make it build on Linux client/mysqlbinlog.cc: - Coding style fixes - Better/more comments - Use client/sql_string.*, not server's sql/sql_string.*. - Don't declare a dummy TABLE_LIST structure in the client. client/sql_string.h: - Use client/sql_string.*, not server's sql/sql_string.*. sql/log_event.cc: = Fix coding style = Introduce Log_event::event_owns_temp_buf which tells whether Log_event::temp_buf is 'owned' by the Log_event object and should be my_free'd on return. This is needed because rewrite_db() needs to dispose of the buffer, and - when mysqlbinlog is reading directly from binlog file, the buffer should be freed - when mysqlbinlog is reading from a server, the buffer is a part of network buffer and shouldn't be freed. sql/log_event.h: Introduce Log_event::event_owns_temp_buf which tells whether Log_event::temp_buf is 'owned' by the Log_event object and should be my_free'd on return. This is needed because rewrite_db() needs to dispose of the buffer, and - when mysqlbinlog is reading directly from binlog file, the buffer should be freed - when mysqlbinlog is reading from a server, the buffer is a part of network buffer and shouldn't be freed. sql/mysqld.cc: - Better/more comments sql/rpl_filter.cc: - #ifdef-out Rpl_filter::tables_ok from the client. This allows not to define dummy TABLE_LIST on the client sql/rpl_filter.h: - #ifdef-out Rpl_filter::tables_ok from the client. This allows not to define dummy TABLE_LIST on the client sql/sql_string.cc: - Use client/sql_string.*, not server's sql/sql_string.*. sql/sql_string.h: - Use client/sql_string.*, not server's sql/sql_string.*.
-
- 17 Oct, 2009 1 commit
-
-
Alexander Ivanov authored
-
- 16 Oct, 2009 6 commits
-
-
Alexander Ivanov authored
Merge from trunk.
-
Alexander Ivanov authored
Add test-suite.
-
Alexander Ivanov authored
Add --rewrite-db option to mysqlbinlog.
-
Alexander Ivanov authored
Add Rpl_filter to mysqlbinlog.cc Note. Though within MWL#36 we are going to use only two Rpl_filter's methods (add_db_rewrite and get_rewrite_db), we look forward for MWL#40 where Rpl_filter is likely to be used to its more extent. Note. Within MWL#36 we will not use Rpl_filter for supporting --database option: this option allows to specify only one database what doesn't correlate with Rpl_filter::add_do_db() (using this method will either appear "artificial" or require changing --database semantics). To be discussed within MWL#40. To add Rpl_filter we need: 1. include sql_string.h There are two instances of sql_string.* files - in sql and in client directories. We need to use the ones from the sql dir. 2. include sql_list.h This requires to define a client version of sql_alloc() function. 3. include rpl_filter.h This requires a definition of system_charset_info variable. Besides, Rpl_filter::tables_ok() refers to a TABLE_LIST structure which encounts deep non-client dependencies and can't be used here as is. On the other hand, tables_ok() make use only few TABLE_LIST's members and none of them depends on specific server context. This allows to redefine TABLE_LIST in a client context so that tables_ok() becomes admissible (surely it's a kind of hack but (at least currently) it's better than #ifndef'ing this method in Rpl_filter definition). Also add Rpl_filter::rewrite_db_is_empty() method. This is needed to be able to check that --rewrite-db is not used jointly with --base64-output= always (this is not supported - at least currently).
-
Alexander Ivanov authored
Add rewrite_db() member to the Table_map_log_event class. Each RBR-event in binary log is preceded by a Table_map event containing a (db_id, db_name) pair. The rewrite_db(new_name) function replaces db_name by new_name in a buffer containing Table_map event read from the binary log.
-
Alexander Ivanov authored
Make sql_alloc() declaration "public" for a client context. The reason is that sql_alloc() is used in definition of some common purpose stuff (e.g. sql_list.*). To make this stuff available for a client context we declare sql_alloc() as a "virtual function", i.e. as a function that is already declared but must be defined in this context (note that definition of sql_alloc() in thr_malloc.cc is #ifndef'ed for MYSQL_CLIENT). Also make sql_string.h repeatedly includable.
-
- 14 Oct, 2009 1 commit
-
-
Michael Widenius authored
-
- 13 Oct, 2009 2 commits
-
-
Michael Widenius authored
-
Michael Widenius authored
This fixes a race condition in the test system mysql-test/include/maria_empty_logs.inc: Added comment mysql-test/include/wait_for_status_var.inc: Fixed type in variable name. Add ' around variables for better error message mysql-test/mysql-test-run.pl: Remove -skip-falcon (not to be used), add skip-pbxt to bootstrap mysql-test/suite/maria/t/maria_showlog_error-master.opt: Force restart before maria_showlog_error to get rid of status from previous connection
-
- 12 Oct, 2009 5 commits
-
-
Sergey Petrunya authored
-
Sergey Petrunya authored
-
Sergey Petrunya authored
-
Sergey Petrunya authored
-
Sergey Petrunya authored
-
- 11 Oct, 2009 6 commits
-
-
Sergey Petrunya authored
while waiting for output): attempt 2
-
Sergey Petrunya authored
while waiting for output)
-
unknown authored
Remove the run of the parts suite (as it is now included in default list of suite). Add run of PBXT.
-
Sergey Petrunya authored
binary distribution zips.
-
unknown authored
Problem was the use of SHOW PROCESSLIST. This is not fully functional in embedded server, STATE is hardcoded to "Writing to net". Fixed using --replace_result for STATE.
-
unknown authored
The test is supposed to provoke a deadlock, to test a crash of the server in some deadlock scenarios. The problem is that in recent version of MySQL, no deadlock occurs. It is not clear why a deadlock should be expected. One transaction does an insert+delete on primary key value 1 in table t2. The other transaction does an insert on primary key value 123. There seems no reason that these should conflict, so there is no deadlock. (Presumably an earlier version did get a deadlock due to maybe taking excessive locks on the insert+delete of primary key value 1. The table has only one row, so maybe a different locking was used ("Impossible WHERE noticed after reading const tables")) Fix is to have transaction 1 lock PK 1 and transaction 2 lock PK 123. Then have transaction 2 access PK 1 (wait) and transaction 1 access PK 123 (deadlock). It has been checked that this modified test case still crashes the server in the same way prior to fix of the original bug (Bug#24989). mysql-test/include/read_many_rows.inc: Provoke deadlock on same PK value in the two transactions to ensure that the deadlock does occur independently on whatever execution plan is chosen. mysql-test/r/read_many_rows_innodb.result: Result file update.
-
- 10 Oct, 2009 1 commit
-
-
unknown authored
Some result updates necessary due to extra tables and columns added in information_schema in MariaDB (XtraDB, PBXT, microsec_process). Also fix bad merge of two result files; apparently the test case was merged, but the result file was not. mysql-test/suite/funcs_1/datadict/processlist_priv.inc: Handle the new TIME_MS column in information_schema.processlist. mysql-test/suite/funcs_1/datadict/processlist_val.inc: Handle the new TIME_MS column in information_schema.processlist. mysql-test/suite/funcs_1/r/is_columns_is.result: Handle new tables in information_schema. mysql-test/suite/funcs_1/r/is_tables_is.result: Handle new tables in information_schema. mysql-test/suite/funcs_1/r/is_tables_myisam.result: Fix previous bad merge; apparently this file was not merged along with test changes. mysql-test/suite/funcs_1/r/processlist_priv_no_prot.result: Handle the new TIME_MS column in information_schema.processlist. mysql-test/suite/funcs_1/r/processlist_val_no_prot.result: Fix previous bad merge; apparently this file was not merged along with test changes. Also handle the new TIME_MS column in INFORMATION_SCHEMA.PROCESSLIST. mysql-test/suite/funcs_1/t/is_columns_is.test: Since result file includes PBXT information_schema tables, we need PBXT to run this test.
-
- 09 Oct, 2009 3 commits
-
-
unknown authored
Fix some connect options to work with embedded. Disable in --embedded tests that rely on connecting to mysqld externally by spawning mysqltest. Disable in --embedded tests that rely on the mysqltest --list_files command, which does not seem to work properly in --embedded. mysql-test/suite/parts/t/partition_alter1_1_2_innodb.test: Disable in --embedded tests that rely on connecting to mysqld externally by spawning mysqltest. mysql-test/suite/parts/t/partition_alter1_1_2_myisam.test: Disable in --embedded tests that rely on connecting to mysqld externally by spawning mysqltest. mysql-test/suite/parts/t/partition_alter1_1_innodb.test: Disable in --embedded tests that rely on connecting to mysqld externally by spawning mysqltest. mysql-test/suite/parts/t/partition_alter1_1_myisam.test: Disable in --embedded tests that rely on connecting to mysqld externally by spawning mysqltest. mysql-test/suite/parts/t/partition_alter1_2_innodb.test: Disable in --embedded tests that rely on connecting to mysqld externally by spawning mysqltest. mysql-test/suite/parts/t/partition_alter1_2_myisam.test: Disable in --embedded tests that rely on connecting to mysqld externally by spawning mysqltest. mysql-test/suite/parts/t/partition_alter2_1_innodb.test: Disable in --embedded tests that rely on connecting to mysqld externally by spawning mysqltest. mysql-test/suite/parts/t/partition_alter2_1_maria.test: Disable in --embedded tests that rely on connecting to mysqld externally by spawning mysqltest. mysql-test/suite/parts/t/partition_alter2_1_myisam.test: Disable in --embedded tests that rely on connecting to mysqld externally by spawning mysqltest. mysql-test/suite/parts/t/partition_alter2_2_innodb.test: Disable in --embedded tests that rely on connecting to mysqld externally by spawning mysqltest. mysql-test/suite/parts/t/partition_alter2_2_maria.test: Disable in --embedded tests that rely on connecting to mysqld externally by spawning mysqltest. mysql-test/suite/parts/t/partition_alter2_2_myisam.test: Disable in --embedded tests that rely on connecting to mysqld externally by spawning mysqltest. mysql-test/suite/parts/t/partition_alter3_innodb.test: Disable in --embedded tests that rely on the mysqltest --list_files command, which does not seem to work properly in --embedded. mysql-test/suite/parts/t/partition_alter3_myisam.test: Disable in --embedded tests that rely on the mysqltest --list_files command, which does not seem to work properly in --embedded. mysql-test/suite/parts/t/partition_alter4_innodb.test: Disable in --embedded tests that rely on connecting to mysqld externally by spawning mysqltest. mysql-test/suite/parts/t/partition_alter4_myisam.test: Disable in --embedded tests that rely on connecting to mysqld externally by spawning mysqltest. mysql-test/suite/parts/t/partition_basic_innodb.test: Disable in --embedded tests that rely on connecting to mysqld externally by spawning mysqltest. mysql-test/suite/parts/t/partition_basic_myisam.test: Disable in --embedded tests that rely on connecting to mysqld externally by spawning mysqltest. mysql-test/suite/parts/t/partition_basic_symlink_myisam.test: Disable in --embedded tests that rely on connecting to mysqld externally by spawning mysqltest. mysql-test/suite/parts/t/partition_engine_innodb.test: Disable in --embedded tests that rely on connecting to mysqld externally by spawning mysqltest. mysql-test/suite/parts/t/partition_engine_myisam.test: Disable in --embedded tests that rely on connecting to mysqld externally by spawning mysqltest. mysql-test/suite/parts/t/partition_special_innodb.test: Fix some connect options to work with embedded. mysql-test/suite/parts/t/partition_syntax_innodb.test: Disable in --embedded tests that rely on connecting to mysqld externally by spawning mysqltest. mysql-test/suite/parts/t/partition_syntax_myisam.test: Disable in --embedded tests that rely on connecting to mysqld externally by spawning mysqltest.
-
unknown authored
-
unknown authored
The --enable_prepare_warnings allows to not discard warnings from autorepair of crashed table in --ps-protocol mode. Use this to properly fix the parts.partition_recover_myisam and maria.maria-recover tests. Add a test case for the new feature. This also adds missing test coverage for the case where the same warning is thrown in both prepare and execute phase. client/mysqltest.cc: Implement new commands --enable-prepare_warnings and --disable_prepare_warnings. mysql-test/r/mysqltest_ps.result: Add test case for new --enable_prepare_warning mysqltest command. mysql-test/suite/maria/t/maria-recover.test: Better fix of test case using new --enable_prepare_warnings command. mysql-test/suite/parts/t/partition_recover_myisam.test: Fix test failure in --ps-protocol mode. mysql-test/t/mysqltest_ps.test: Add test case for new --enable_prepare_warning mysqltest command.
-
- 08 Oct, 2009 4 commits
-
-
Sergey Petrunya authored
- Include maria_chk and other maria binaries - Include sql/$TARGET/mysqld.lib, like mainline does (but what is that useful for?) - Don't include my_safe_{process,kill} garbage. - call '/bin/find', not just 'find' is that is some incompatible windows command.
-
Sergey Petrunya authored
-
Sergey Petrunya authored
-
unknown authored
-
- 07 Oct, 2009 10 commits
-
-
unknown authored
-
unknown authored
- Don't need any m1 prefix for the first release based on given MySQL version number. - Fix mysql-test-run to understand that some stuff is installed under share/mariadb rather than share/mysql.
-
Sergey Petrunya authored
MBUG#442254: mysql-test-run --embedded fails on Windows with: ERROR: .opt file references 'EXAMPLE_PLUGIN_OPT' - Fix suggested by Kristian on review: ignore the test using mtr's facilities
-
Sergey Petrunya authored
- Part 2. make it really work.
-
Sergey Petrunya authored
-
Sergey Petrunya authored
- Update EXPLAIN results after table elimination - mysqlslap now specifies 'Engine=' in CREATE TABLE instead of using SET storage_engine=... - For some reason, mysqltest logs "connect" command differently when PBXT is the default storage engine. This is probably a bug in mysqltest which we can't be bothered to investigate at the moment, so add --replace mysql-test/suite/pbxt/r/connect.result: Fix pbxt test suite failures: - For some reason, mysqltest logs "connect" command differently when PBXT is the default storage engine. This is probably a bug in mysqltest which we can't be bothered to investigate at the moment, so add --replace mysql-test/suite/pbxt/r/mysqlslap.result: Fix pbxt test suite failures: - mysqlslap now specifies 'Engine=' in CREATE TABLE instead of using SET storage_engine=... mysql-test/suite/pbxt/r/ps_11bugs.result: Fix pbxt test suite failures: - Update EXPLAIN results after table elimination mysql-test/suite/pbxt/r/select.result: Fix pbxt test suite failures: - Update EXPLAIN results after table elimination mysql-test/suite/pbxt/r/union.result: Fix pbxt test suite failures: - Update EXPLAIN results after table elimination mysql-test/suite/pbxt/t/connect.test: Fix pbxt test suite failures: - For some reason, mysqltest logs "connect" command differently when PBXT is the default storage engine. This is probably a bug in mysqltest which we can't be bothered to investigate at the moment, so add --replace
-
unknown authored
-
Arjen Lentz authored
-
unknown authored
-
unknown authored
-