Commit graph

24683 commits

Author SHA1 Message Date
unknown
bee8d96079 Fix test failures in variables-big in --embedded.
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.
2009-10-11 11:36:10 +02:00
unknown
082898f9aa Bug#37635: Test read_many_rows_innodb is failing w/ wrong error message (lock_wait_timeout)
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.
2009-10-11 11:06:55 +02:00
unknown
314ac2a0ab Fix failures in the funcs_1 test suite.
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.
2009-10-10 11:59:06 +02:00
unknown
b27fdb26b2 Fix many test failures in parts test suite with --embedded-server.
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.
2009-10-09 15:08:09 +02:00
unknown
e702b70d67 Implement mysqltest --enable_prepare_warnings to properly fix some test failures.
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.
2009-10-09 10:09:24 +02:00
unknown
ece15c313a Merge. 2009-10-08 00:59:07 +02:00
unknown
68602b939b Fixes for package name change mysql -> mariadb.
- 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.
2009-10-08 00:57:43 +02:00
Sergey Petrunya
538d689f11 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
2009-10-08 01:29:04 +04:00
Sergey Petrunya
9d58141cdc Fix pbxt test suite failures:
- 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
2009-10-07 20:56:11 +04:00
unknown
ed40801d9d Fix test case partition_recover_myisam for --embedded-server. 2009-10-07 09:57:48 +02:00
unknown
228ee84ed3 Fix events_time_zone.test to be skipped for embedded (no event scheduler in embedded server) 2009-10-06 20:15:09 +02:00
unknown
445ad6bd37 Merge fixes for --big tests and compiler warnings. 2009-10-06 20:05:49 +02:00
unknown
5c7232af15 Make sure that partition tests are included in mysql-test-run by default. 2009-10-06 16:02:53 +02:00
unknown
09ab8f348f Fix test failures in innodb-index and partition_special_*:
- innodb-index needs regexp replace for embedded like other similar tests.

 - partitions_special_* need to be modified for the extension from 16 to 32
   max key parts allowed that was made in MariaDB.
2009-10-06 13:39:57 +02:00
unknown
8a970cb076 Fix broken --vs-config option of mysql-test-run.pl. 2009-10-06 08:46:45 +02:00
unknown
d64dc0c827 MBug#443092: test cases mysql and mysql_upgrade fails with wildcard DNS
When DNS is not working and returns some address even for non-existing
host names, some test cases fail with wrong error.

Fix by disabling these tests on such systems.
2009-10-05 15:22:23 +02:00
unknown
02c33646b3 Test suite fixes:
- Don't omit the @@debug variable from testcase check, since it can cause real problems.
 - Fix some bad merges by reverting to be identical to MySQL 5.1.

mysql-test/include/mtr_check.sql:
  Don't omit the @@debug variable from testcase check, since it can cause real problems.
mysql-test/r/mysqlbinlog_row_big.result:
  Fix incorrect merge.
mysql-test/r/variables-big.result:
  Fix incorrect merge, by reverting to MySQL 5.1 version.
mysql-test/t/mysqlbinlog_row_big.test:
  Fix incorrect merge.
mysql-test/t/variables-big.test:
  Fix incorrect merge, by reverting to MySQL 5.1 version.
2009-10-04 01:20:51 +02:00
unknown
22a9f9b243 Fix merge-big.test to properly restore debug settings.
Otherwise following tests go crazy in the log, writing gigabytes of data
and causing havoc.
2009-10-03 21:12:24 +02:00
Sergey Petrunya
37c6613e15 Merge 2009-10-03 23:02:31 +04:00
Sergey Petrunya
e60a48b011 Fix mysql-test-run --embedded:
- Don't run testcase for BUG#45632 with embedded server.
2009-10-03 22:56:54 +04:00
unknown
3e052e0f4a Merge Monty's fixes from main into release branch.
- MariaDB naming.
 - Error reporting with mysqld --help --verbose.
2009-10-02 14:55:16 +02:00
Michael Widenius
cbf16194ca When using --help --verbose give error and abort if there are any unknown options
mysql-test/r/mysqld_option_err.result:
  Test that mysqld --not-known-option --help --verbose gives error
mysql-test/t/mysqld_option_err.test:
  Test that mysqld --not-known-option --help --verbose gives error
2009-10-02 14:09:01 +03:00
unknown
0f502cc5d9 Apply patch from Bug#46010.
This is needed to fix failures seen in Buildbot (main.ctype_gbk_binlog).
Problem is that some tests did not RESET MASTER, causing them to pick up random
binlog files depending on prior tests.
2009-09-30 08:35:31 +02:00
unknown
d8aa3dbd34 Fix race in test of times shown in SHOW FULL PROCESSLIST.
(These are by their nature difficult to test reliably due to differences in timing).
2009-09-29 22:19:43 +02:00
unknown
a84aa37830 Fix running test suite from installed directory rather than source directory.
Fix trivial typo in BUILD/* scripts.

BUILD/SETUP.sh:
  Fix typo.
mysql-test/mysql-test-run.pl:
  Fix mysql-test-run.pl to be able to find plugins used in testing also when running the
  test suite from an installed mysqld package.
2009-09-29 21:02:48 +02:00
unknown
12f18c8800 Fix all innodb tests being disabled when running testsuite as root. 2009-09-26 04:25:56 +02:00
unknown
faaace2fdd Fix some test failures found during RPM package building:
- mysqlslap result file update after merge.
 - Fix skipping certain tests when running test suite as root, got broken somehow.

mysql-test/mysql-test-run.pl:
  Somehow skipping tests when running as root got broken. The mysqltest if() no longer seems
  to accept YES as a true value, so use 1 for true value instead.
mysql-test/r/mysqlslap.result:
  Result file update after change in engine behaviour of mysqlslap.
mysql-test/t/mysqld_option_err.test:
  This test does not work when run as root.
2009-09-25 16:38:02 +02:00
unknown
44718ad445 Merge MySQL-5.1.38 and XtraDB-7 into MariaDB.
Merge Percona microsec_process patch.
Includes lots of after-merge fixes, Windows fixes, and other misc. small fixes.
2009-09-25 10:56:53 +02:00
Igor Babaev
9c6ad3d013 Merge 2009-09-24 23:46:22 -07:00
Igor Babaev
d210e5fde6 Took care of mysql test suite failures on Windows.
mysql-test/suite/rpl/t/rpl_binlog_corruption.test:
  Disabled the test for Windows (see bug #47639)
mysql-test/suite/rpl/t/rpl_killed_ddl.test:
  Disabled the test for Windows (see bug #47638)
vio/viosocket.c:
  Added an implementation of vio_poll_read for Windows.
  Winsock does not support the poll function.
  So the existing generic implementation of vio_poll_read
  could not be used for Windows.
2009-09-24 23:42:43 -07:00
unknown
9404bbc363 merge 2009-09-24 15:49:39 +03:00
unknown
a4a6f1d5af Ability to stop mysql-test-run.pl temporary (useful for them who run buildbot slave on thier work computers) 2009-09-24 15:19:15 +03:00
unknown
e16081e1ac Merge Percona microsec_process patch into MariaDB.
This adds a TIME_MS column to SHOW FULL PROCESSLIST and
INFORMATION_SCHEMA.PROCESSLIST that works like the TIME column, but
in units of milliseconds with microsecond precision.

Note that this also changes behaviour of the existing TIME column. In
the MySQL server, the TIME column changes when a thread sets @TIMESTAMP.
This is contrary to documentation and also potentially confusing, so
could in any case be considered a bug. With this patch, to ensure
consistency between TIME and TIME_MS, setting @TIMESTAMP has no effect
on either value.

Add a test case for the TIME and TIME_MS columns.
Update existing test cases for changed behaviour.

Author: Percona
Signed-off-by: Kristian Nielsen <knielsen@knielsen-hq.org>


mysql-test/r/create.result:
  Result file update.
mysql-test/r/information_schema.result:
  Add test case.
  Result file update (changed behaviour).
mysql-test/t/information_schema.test:
  Add test case.
  Adjust test case for changed behaviour.
mysql-test/t/not_embedded_server.test:
  Update (commented-out) test case for newly added column.
sql/sql_show.cc:
  Merge Percona microsec_process patch into MariaDB.
2009-09-23 13:03:47 +02:00
Igor Babaev
cb4121f26f Applied the fix for bug #47016 - a failure of rpl_do_grant
watched on Windows.
2009-09-19 20:02:26 -07:00
Igor Babaev
7c8192df0e Merge 2009-09-19 15:11:19 -07:00
Igor Babaev
6811136cc3 Made innodb_xtradb_bug317074.test to be a 'big' test
to avoid a timeout failure of it on Windows.
2009-09-18 12:27:04 -07:00
Igor Babaev
c78dad1556 Applied the fix for bug #46931 from mysql-5.1 main trunk
to fix a failure in rpl_get_master_version_and_clock.test
2009-09-18 12:02:57 -07:00
Sergey Petrunya
6e0da2750c Gcov support improvements
- address review feedback (cleaner perl code)
2009-09-18 05:15:29 +04:00
Sergey Petrunya
55298d1b3e A change of direction for fix 10 csets ago:
- When the table is created with an attribute that is not supported by
  the storage engine, the attribute ought to be still kept.
2009-09-18 05:04:43 +04:00
Sergey Petrunya
bb2b859225 Fix mysql-test-run on windows:
Make it not to add '--console' when '--log-error' option is present
- Review feedback
2009-09-18 04:55:27 +04:00
Sergey Petrunya
23958fe046 Apply the following MySQL's fix:
Bug #46212 safe_process: FATAL ERROR, Unknown option: --nocore
Also fixed mysqld.cc to avoid popup-boxes
2009-09-18 02:46:10 +04:00
Sergey Petrunya
3878ce1267 Fix mysql-test-run on windows:
- Make it not to add '--console' when '--log-error' option is present
2009-09-17 04:13:50 +04:00
Sergey Petrunya
2f93e7cd3f MWL#17: Table elimination: fixes for windows
include/my_global.h:
  MWL#17: Table elimination: fixes for windows
  - Add ALIGN_MAX_UNIT (assume malloc returns data aligned to this much)
mysql-test/r/table_elim.result:
  MWL#17: Table elimination: fixes for windows
  - Use only lower-case as EXPLAIN [EXTENDED] changes case of table names
    on windows
mysql-test/t/table_elim.test:
  MWL#17: Table elimination: fixes for windows
  - Use only lower-case as EXPLAIN [EXTENDED] changes case of table names
    on windows
sql/opt_table_elimination.cc:
  MWL#17: Table elimination: fixes for windows
  - Add extra alignment-padding-space for stack-allocated buffers.
2009-09-16 23:05:03 +04:00
Sergey Petrunya
11e380d2c8 Update tests results after previous cset. 'TRANSACTIONAL=1' attribute goes
after the table has been converted to MyISAM and back. (PAGE_CHECKSUM is
 still there)

mysql-test/suite/maria/r/maria3.result:
  Update tests results after previous cset. 'TRANSACTIONAL=1' attribute goes 
  after the table has been converted to MyISAM and back. (PAGE_CHECKSUM is 
  still there)
2009-09-16 22:25:18 +04:00
unknown
2bb0fddf8e After-merge fixes for MySQL 5.1.38 merge.
Temporarily silence test failure due to MBug#430669 in test case introduced from
MySQL 5.1.38.
2009-09-16 13:51:05 +02:00
unknown
e8d7e27fed More after-merge fixes for merging MySQL 5.1.38 into MariaDB.
mysql-test/t/mysqldump.test:
  Make test case work when build directory is not world readable
  (this is the case for Buildbot checkouts).
mysys/my_getopt.c:
  Restore bugfix which was lost in previous merge.
storage/xtradb/buf/buf0flu.c:
  Fix extranous line caused by bad merge.
2009-09-15 14:53:07 +02:00
unknown
2a4c97fc3e MySQL 5.1.38 merge into MariaDB.
Merge remaining bits of mysql-5.1.38 into MariaDB (9 commits were missing
from the original merge).
2009-09-15 14:12:51 +02:00
Sergey Petrunya
7fd102468c mysql-test/include/concurrent.inc:
Merge
2009-09-15 15:26:29 +04:00
Sergey Petrunya
151e5d586c Merge lp:maria -> lp:~maria-captains/maria/maria-5.1-merge 2009-09-15 14:46:35 +04:00
unknown
9ec5b6f444 MySQL 5.1.38 after-merge fixes.
Fix some mistakes in the original merge found during review.

mysql-test/include/concurrent.inc:
  Add missing lines mistakenly omitted in merge.
mysql-test/include/mix1.inc:
  Revert wrong change done during merge.
mysql-test/include/wait_for_status_var.inc.moved:
  Remove file which was accidentally not removed during conflict resolution in merge.
mysql-test/r/innodb_mysql.result:
  Revert result file change following fixing root problem in merge.
2009-09-15 08:08:54 +02:00