Commit graph

59314 commits

Author SHA1 Message Date
Michael Widenius
ffee15b124 Merge with bug fix 2009-10-06 09:20:31 +03:00
Michael Widenius
0e9e201d03 Merge with trunk 2009-10-06 09:15:12 +03:00
Michael Widenius
e147ca1561 Don't call _ma_decrement_open_count() for ma_extra(HA_EXTRA_PREPARE_FOR_DROP).
Don't call _mi_decrement_open_count() for mi_extra(HA_EXTRA_PREPARE_FOR_DROP).
This ensures that if we empty the key cache and a drop table fails later, the index will be automaticly rebuilt

storage/maria/ma_extra.c:
  Don't call _ma_decrement_open_count() for ma_extra(HA_EXTRA_PREPARE_FOR_DROP).
  This ensures that if we empty the key cache and a drop table fails later, the index will be automaticly rebuilt
storage/maria/ma_locking.c:
  Simple optimization: Don't call maria_lock_database() if locking is disabled
storage/myisam/mi_extra.c:
  Don't call _mi_decrement_open_count() for mi_extra(HA_EXTRA_PREPARE_FOR_DROP).
  Simplify code to remove if
2009-10-06 09:13:56 +03: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
76d47f53d4 MBug#443014: Too many 'skipped' messages in mysql-test-run
Remove mysql-test-run.pl unnecessary and confusing 'skipped' messages.

 - In mysql-test-run.pl, we auto-generate combinations of replication
   tests. But this sometimes generates combinations that are meaningless,
   like running a test that requires row-based replication with
   statement-based. These superfluous combinationes should not be
   reported as skipped, they should just be deleted.

 - Remove ndb suites from default suites, as we do not support NDB
   in MariaDB.

Keep skip messages resulting from running mysql-test-run.pl in special
ways, eg. --mysqld=--binlog-format=statement.
2009-10-05 14:26:57 +02:00
Sergey Petrunya
a9e0f792f5 Fix a problem in windows build introduced a few csets ago (in
"Merge Monty's fixes from main into release branch" .. cset):
- mysql_get_server_name() is a new client API function and so should
  be exported from libmysql[d].

libmysql/libmysql.def:
  mysql_get_server_name() is a new client API function and so should
  be exported from libmysql[d].
libmysqld/libmysqld.def:
  mysql_get_server_name() is a new client API function and so should
  be exported from libmysql[d].
2009-10-05 02:22:57 +04: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
59f80387ba Fix some compiler warnings cause by GCC bug: http://gcc.gnu.org/bugzilla/show_bug.cgi?id=29478
storage/maria/ma_blockrec.c:
  GCC warns about const vs. non-const despite cast
  (but it is in any case cleaner to avoid the cast completely)
support-files/compiler_warnings.supp:
  Silence a wrong compiler warning caused by GCC bug.
2009-10-03 22:13:58 +02:00
Sergey Petrunya
d1ad1bdc0f Fix embedded build on Windows: contents of storage/xtradb think they are
'innobase'.
2009-10-03 23:24:13 +04: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
unknown
ef639e9d2c Add missing windows files to make dist. 2009-10-02 14:53:05 +02:00
Michael Widenius
820c4902a9 Fixed typo 2009-10-02 14:56:11 +03: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
Michael Widenius
f77e2692dc Added client functions:
- mysql_get_server_name()
  This returns MySQL or MariaDB depending on the server type
- mariadb_connection()
  This returns 1 if you are connected to a MariaDB server

Modifed the MySQL command line client to print out if you are connected to MariaDB or MySQL
Better default prompt (shows server you are connected to and base directory)

client/mysql.cc:
  Print out if you are connected to MariaDB or MySQL
  Better default prompt (shows server you are connected to and base directory)
  Added option \N to prompt to print server name.
configure.in:
  Changed maria to MariaDB in version string
include/mysql.h:
  Added mysql_get_server_name() and mariadb_connection()
include/mysql.h.pp:
  Update for new API functions
libmysql/libmysql.c:
  Added client functions:
  - mysql_get_server_name()
    This returns MySQL or MariaDB depending on the server type
  - mariadb_connection()
    This returns 1 if you are connected to a MariaDB server
2009-10-02 13:36:28 +03:00
unknown
0e90c84826 Add a simple way to robustly get the name of the generated source tarball, so as to not
to have to rely on fragile regexp-parsing of configure.in.
2009-10-02 11:40:03 +02:00
Sergey Petrunya
b883abd675 Temporary solution: skip PBXT (like we do e.g. for --skip-innodb) in embedded
server, as it doesn't work there.

sql/sql_plugin.cc:
  Temporary solution: skip PBXT (like we do e.g. for --skip-innodb) in embedded server, as it doesn't work there.
2009-10-02 01:27:39 +04:00
Sergey Petrunya
016ea0c5e3 Fix embedded server windows build: add opt_table_elimination.cc to list of files 2009-10-01 14:46:59 +04:00
unknown
7bf7a43712 Add environment variable MTR_EXTRA_OPTIONS to influence make test* targets.
This allows to eg use --mem or --parallel for better performance on big boxes.
2009-09-30 14:45:03 +02:00
unknown
af3dbb6898 Merge autotools fixes to be able to build with builddir != srcdir.
Author: Peter Lieverdink
2009-09-30 13:28:01 +02:00
unknown
cadcc55bab Completely disable the innodb plugin.
Don't ever build it, and don't include it in source tarballs.
(we keep the sources in bzr to not get conflicts on every upstream change).
2009-09-30 09:25:12 +02: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
Peter Lieverdink
157fa0bb8d Used the correct path to the bundled libevent includes. 2009-09-30 09:36:15 +10:00
Peter Lieverdink
9f3e98b7ae Make sure to use the correct location for config.h when generating event-config.h 2009-09-30 09:00:57 +10:00
Peter Lieverdink
e4ee17b4a8 Look for libreadline in the light location on *both* tests. 2009-09-30 08:50:10 +10: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 )
mysql-test/suite/rpl/t/rpl_killed_ddl.test:
  Disabled the test for Windows (see bug )
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 - 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
cbb8c3f0b0 Fixed bug - a failure with main.myisam_crash_before_flush_keys.test
on Windows.
2009-09-19 14:21:29 -07:00
Hakan Kuecuekyilmaz
824c6d1c3e Merge. 2009-09-18 21:32:50 +02: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 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
Hakan Kuecuekyilmaz
6cf15d0857 Merge. 2009-09-18 05:37:03 +02:00
Hakan Kuecuekyilmaz
1ee2d81734 Fix for
mysqlslap: setting --engine does not get replicated
    http://bugs.mysql.com/bug.php?id=46967

and
    mysqlslap: specifying --engine and --create does not
    work with --engine=<storage_engine>:<option>
    https://bugs.launchpad.net/maria/+bug/429773

Problems were that an --engine=<storage_engine> was translated
to a "set storage_engine = <storage_engine>", wich is _not_
replicated. A --engine=<storage_engine>:<option> was not always
properly parsed and in some cases crashed.

Fixed by eliminating "set storage_engine = ..." and adding
proper DDL generation. Initialized an unitialized buffer to
prevent crashes and fixed to use proper pointer for in
case of --engine=<storage_engine>:<option> being the last
element in list of --engines.

Also cleaned up code for better readability.

Q: Should MySQL's replication actually replicate a
   "set storage_engine = ..." command or not?
A: No it should not. It is documented here:
   http://dev.mysql.com/doc/refman/5.1/en/replication-features-variables.html
   ...
   "The storage_engine system variable is not replicated, which is a
   good thing for replication between different storage engines." ...

Before the patch, mysqlslap was behaving this way:

+-------------------------------+--------+-------------+
|                               | single | replication |
+-------------------------------+--------+-------------+
| Before patch                                         | 
+-------------------------------+--------+-------------+
| --engine[1]                                          |
+-----+-------------------------+--------+-------------+
| 1.1 | eng1                    |  OK    |   Not OK    |
| 1.2 | eng1,eng2               |  OK    |   Not OK    |
| 1.3 | eng1,eng2,eng3          |  OK    |   Not OK    |
| 1.4 | memory:option           |  OK    |   Not OK    |
| 1.5 | memory:option,eng1      |  OK    |   Not OK    |
| 1.6 | eng1,memory:option      | Not OK |   Not OK    |
| 1.7 | memory:option,eng1,eng2 | Crash  |   Not OK    |
| 1.8 | eng1,memory:option,eng2 |  OK    |   Not OK    |
| 1.9 | eng1,eng2,memory:option | Not OK |   Not OK    |
+-----+-------------------------+--------+-------------+
+-------------------------------+--------+-------------+
| --create --engine[2]                                 |
+-----+-------------------------+--------+-------------+
| 2.1 | eng1                    |  OK    |   Not OK    |
| 2.2 | eng1,eng2               |  OK    |   Not OK    |
| 2.3 | eng1,eng2,eng3          |  OK    |   Not OK    |
| 2.4 | memory:option           | Not OK |   Not OK    |
| 2.5 | memory:option,eng1      | Not OK |   Not OK    |
| 2.6 | eng1,memory:option      | Not OK |   Not OK    |
| 2.7 | memory:option,eng1,eng2 | Crash  |   Not OK    |
| 2.8 | eng1,memory:option,eng2 | Not OK |   Not OK    |
| 2.9 | eng1,eng2,memory:option | Not OK |   Not OK    |
+-----+-------------------------+--------+-------------+

After my final patch, mysqlslap now runs like this:

+-------------------------------+--------+-------------+
|                               | single | replication |
+-------------------------------+--------+-------------+
| After third patch                                    | 
+-------------------------------+--------+-------------+
| --engine[1]                                          |
+-----+-------------------------+--------+-------------+
| 1.1 | eng1                    |  OK    |  OK         |
| 1.2 | eng1,eng2               |  OK    |  OK         |
| 1.3 | eng1,eng2,eng3          |  OK    |  OK         |
| 1.4 | memory:option           |  OK    |  OK         |
| 1.5 | memory:option,eng1      |  OK    |  OK         |
| 1.6 | eng1,memory:option      |  OK    |  OK         |
| 1.7 | memory:option,eng1,eng2 |  OK    |  OK         |
| 1.8 | eng1,memory:option,eng2 |  OK    |  OK         |
| 1.9 | eng1,eng2,memory:option |  OK    |  OK         |
+-----+-------------------------+--------+-------------+
+-------------------------------+--------+-------------+
| --create --engine[2]                                 |
+-----+-------------------------+--------+-------------+
| 2.1 | eng1                    |  OK    |  OK         |
| 2.2 | eng1,eng2               |  OK    |  OK         |
| 2.3 | eng1,eng2,eng3          |  OK    |  OK         |
| 2.4 | memory:option           |  OK    |  OK         |
| 2.5 | memory:option,eng1      |  OK    |  OK         |
| 2.6 | eng1,memory:option      |  OK    |  OK         |
| 2.7 | memory:option,eng1,eng2 |  OK    |  OK         |
| 2.8 | eng1,memory:option,eng2 |  OK    |  OK         |
| 2.9 | eng1,eng2,memory:option |  OK    |  OK         |
+-----+-------------------------+--------+-------------+
2009-09-18 05:30:54 +02: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
f974f10cf1 Apply Igor's fix:
Fixed a failure of the merge_innodb test on windows.


storage/myisammrg/ha_myisammrg.cc:
  Fixed a failure of the merge_innodb test on windows.
2009-09-18 03:01:09 +04:00
Sergey Petrunya
23958fe046 Apply the following MySQL's fix:
Bug  safe_process: FATAL ERROR, Unknown option: --nocore
Also fixed mysqld.cc to avoid popup-boxes
2009-09-18 02:46:10 +04:00