1
0
mirror of https://github.com/MariaDB/server.git synced 2025-12-19 22:42:44 +03:00
Commit Graph

26282 Commits

Author SHA1 Message Date
Bjorn Munch
0aca4f0011 Bug #46625 Pushbuild2: does not notice test failure in "Innodb Plugin" mode
Disallow (and don't use) space in combination names
2009-10-08 11:14:42 +02:00
Satya B
d88861948d Applying InnoDB Plugin 1.0.5 snapshot , part 1
From revision r5537 to r5636
r5527 is already applied before

Detailed revision comments:
For HotBackup builds we don't want to hide the symbols.

r5537 | vasil | 2009-07-21 04:31:26 -0500 (Tue, 21 Jul 2009) | 5 lines
branches/zip:

Fixups in ChangeLog: sort filenames alphabetically and wrap to 78 chars per
line.

r5539 | vasil | 2009-07-21 05:28:27 -0500 (Tue, 21 Jul 2009) | 4 lines
branches/zip:

Add a test program to check whether the PAUSE instruction is available.

r5625 | vasil | 2009-08-04 00:52:48 -0500 (Tue, 04 Aug 2009) | 32 lines
branches/zip: Merge 5518:5622 from branches/5.1, resolving conflict in r5622
(after resolving the conflict Makefile.am was not changed so I have made
a dummy change so I can commit and thus record that branches/5.1 has been
merged in branches/zip up to 5622):

  ------------------------------------------------------------------------
  r5622 | vasil | 2009-08-03 15:27:00 +0300 (Mon, 03 Aug 2009) | 20 lines
  Changed paths:
     M /branches/5.1/Makefile.am
  
  branches/5.1:
  
  Merge a change from MySQL:
  
    ------------------------------------------------------------
    revno: 2988
    committer: Satya B <satya.bn@sun.com>
    branch nick: mysql-5.1-bugteam
    timestamp: Wed 2009-07-01 11:06:05 +0530
    message:
      Fix build failure after applying Innodb snapshot 5.1-ss5282
      
      After applying Innodb snapshot 5.1-ss5282, build was broken
      because of missing header file. 
      
      Adding the header file to Makefile.am after informing the 
      innodb developers.
    modified:
      storage/innobase/Makefile.am
  
  ------------------------------------------------------------------------

r5626 | vasil | 2009-08-04 00:53:31 -0500 (Tue, 04 Aug 2009) | 4 lines
branches/zip:

Revert the dummy change from c5625.

r5629 | marko | 2009-08-04 06:42:44 -0500 (Tue, 04 Aug 2009) | 1 line
branches/zip: mysql-test: Pass MTR's internal checks.
r5635 | marko | 2009-08-05 06:06:55 -0500 (Wed, 05 Aug 2009) | 2 lines
branches/zip: Replace <number> with NUMBER in some comments,
to avoid problems with Doxygen XML output.
r5636 | marko | 2009-08-05 07:27:30 -0500 (Wed, 05 Aug 2009) | 2 lines
branches/zip: lock_rec_validate_page(): Add the parameter zip_size.
This should help track down Mantis Issue #289.
2009-10-08 14:43:16 +05:30
Magnus Blåudd
fabde82dbd Bug#47801 The plugin test fails with the Embedded Server on Windows
- Remove the "hack" from mtr.pl that skipped searching for the .dll files
  when embedded and windows. Now the variables will be preoperly initialized.
 - Make the tests detect that they can't run on windows+embedded
2009-10-08 10:39:15 +02:00
Magnus Blåudd
7a633b68d2 Merge 2009-10-08 10:32:43 +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
jyang
523967e3d7 branches/5.1: Fix bug #47777. Treat the Geometry data same as
Binary BLOB in ha_innobase::store_key_val_for_row(), since the
Geometry data is stored as Binary BLOB in Innodb.

Review: rb://180 approved by Marko Makela.
2009-10-07 22:27:08 +00: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
Luis Soares
9226c847f5 BUG#44661: automerge local 5.1-bt bug branch --> local 5.1-bt up to date 2009-10-07 22:26:36 +01: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
Georgi Kodinov
1a48dd4e2b Bug #43029: FORCE INDEX FOR ORDER BY is ignored when join
buffering is used

FORCE INDEX FOR ORDER BY now prevents the optimizer from 
using join buffering. As a result the optimizer can use
indexed access on the first table and doesn't need to 
sort the complete resultset at the end of the statement.
2009-10-07 18:03:42 +03:00
Vladislav Vaintroub
b96230c858 merge 2009-10-07 16:34:45 +02:00
Magnus Blåudd
610778dcce BUG#47612 - fix review comment 2009-10-07 16:25:36 +02:00
unknown
ed40801d9d Fix test case partition_recover_myisam for --embedded-server. 2009-10-07 09:57:48 +02:00
unknown
8ea19fa73e Merge a bunch of small fixes from release tree into main lp:maria. 2009-10-06 20:37:55 +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
Magnus Blåudd
6ff8f716c3 Bug#47867 compiler warning _WIN32_WINNT macro redefinition
- Remove the conflicting macro definitions since we define a higher value
   directly in the cmake files.
2009-10-06 18:10:34 +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
Bjorn Munch
6eb9c2bec9 merge of 47383 from 5.1-mtr 2009-10-06 14:37:37 +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
Alfranio Correia
15127bcdf3 mysql-5.1-bugteam (local) --> mysql-5.1-bugteam 2009-10-06 11:25:36 +01:00
Bjorn Munch
3141528ea8 Bug #47811 ./mysql-test-run.pl --valgrind uses old (too narrow) allignment
Remove the alignment option, let valgrind use its default
2009-10-06 10:42:05 +02:00
Bjorn Munch
109ae607fb Bug #46327 MTR2 prevents gcov data accumulation
mysqladmin fails on Linux in 6.0 without --character-sets-dir
Also added timeout for server shutdown, hope this will solve it
2009-10-06 10:35:35 +02:00
Georgi Kodinov
b202a9860c merge mysql-5.1-pe 2009-10-06 10:10:47 +03:00
unknown
8a970cb076 Fix broken --vs-config option of mysql-test-run.pl. 2009-10-06 08:46:45 +02:00
Alfranio Correia
7e0da4352c BUG#47678 Changes to n-tables that happen early in a trans. are only flushed upon commit
Let
    - T be a transactional table and N non-transactional table.
    - B be begin, C commit and R rollback.
    - N be a statement that accesses and changes only N-tables.
    - T be a statement that accesses and changes only T-tables.

In RBR, changes to N-tables that happen early in a transaction are not immediately flushed
upon committing a statement. This behavior may, however, break consistency in the presence
of concurrency since changes done to N-tables become immediately visible to other
connections. To fix this problem, we do the following:

  . B N N T C would log - B N C B N C B T C.
  . B N N T R would log - B N C B N C B T R.

Note that we are not preserving history from the master as we are introducing a commit that
never happened. However, this seems to be more acceptable than the possibility of breaking
consistency in the presence of concurrency.
2009-10-06 01:54:00 +01:00
Alfranio Correia
14d1909440 BUG#47287 RBR: replication diff on basic case with txn- and non-txn tables in a statement
Let
  - T be a transactional table and N non-transactional table.
  - B be begin, C commit and R rollback.
  - M be a mixed statement, i.e. a statement that updates both T and N.
  - M* be a mixed statement that fails while updating either T or N.

This patch restore the behavior presented in 5.1.37 for rows either produced in
the RBR or MIXED modes, when a M* statement that happened early in a transaction
had their changes written to the binary log outside the boundaries of the
transaction and wrapped in a BEGIN/ROLLBACK. This was done to keep the slave
consistent with with the master as the rollback would keep the changes on N and
undo them on T. In particular, we do what follows:

  . B M* T C would log - B M* R B T C.

Note that, we are not preserving history from the master as we are introducing a
rollback that never happened. However, this seems to be more acceptable than
making the slave diverge. We do not fix the following case:

  . B T M* C would log B T M* C.

The slave will diverge as the changes on T tables that originated from the M
statement are rolled back on the master but not on the slave. Unfortunately, we
cannot simply rollback the transaction as this would undo any uncommitted
changes on T tables.

SBR is not considered in this patch because a failing statement is written to
the binary along with the error code and a slave executes and then rolls back
the statement when it has an associated error code, thus undoing the effects
on T. In RBR and MBR, a full-fledged fix will be pushed after the WL 2687.
2009-10-06 01:38:58 +01: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
John H. Embretsen
85bb4aa09e Bug#47746 - main.innodb_mysql fails sporadically:
Mask part of EXPLAIN output with '#' to account for varying row count estimation.

mysql-test/include/mix1.inc:
  Mask 'rows' column in EXPLAIN output (number varies sometimes between 1 and 2).
mysql-test/r/innodb_mysql.result:
  Update result file after masking of rows estimation in EXPLAIN output.
2009-10-05 15:16:27 +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
Satya B
95c6cc51a5 Applying InnoDB snapshot 5.1-ss5921, part 2. Fixes BUG#44369
BUG#44369 - InnoDB: Does not uniformly disallow disallowed column names

Detailed revision comments:

r5741 | jyang | 2009-09-03 07:16:01 +0300 (Thu, 03 Sep 2009) | 5 lines
branches/5.1: Block creating table with column name conflicting
with Innodb reserved key words. (Bug #44369) rb://151 approved
by Sunny Bains.


r5760 | jyang | 2009-09-04 07:07:34 +0300 (Fri, 04 Sep 2009) | 3 lines
branches/5.1: This is to revert change 5741. A return status for
create_table_def() needs to be fixed.

r5834 | jyang | 2009-09-11 00:43:05 +0300 (Fri, 11 Sep 2009) | 5 lines
branches/5.1: Block creating table with column name conflicting
with Innodb reserved key words. (Bug #44369) rb://151 approved
by Sunny Bains.
2009-10-05 16:47:48 +05:30
Satya B
b9ce9f79d6 Applying InnoDB snapshot 5.1-ss5921, Part 1. Fixes BUG#46000
1. BUG#46000 - using index called GEN_CLUST_INDEX crashes server

Detailed revision comments:

r5895 | jyang | 2009-09-15 03:39:21 +0300 (Tue, 15 Sep 2009) | 5 lines
branches/5.1: Disallow creating index with the name of
"GEN_CLUST_INDEX" which is reserved for the default system
primary index. (Bug #46000) rb://149 approved by Marko Makela.
2009-10-05 16:39:07 +05:30
Bjorn Munch
861cf983fc Bug #47243 Allow MTR to read max auto setting for --parallel from env. variable
In stead of hard-coded 8, read from $MTR_MAX_PARALLEL if set
2009-10-05 13:08:10 +02:00
Georgi Kodinov
00968ae167 fixed typos in exeprimental list 2009-10-05 11:18:59 +03:00
Gleb Shchepa
33cd911a16 Bug #44139: Table scan when NULL appears in IN clause
SELECT ... WHERE ... IN (NULL, ...) does full table scan,
even if the same query without the NULL uses efficient range scan.

The bugfix for the bug 18360 introduced an optimization:
if
  1) all right-hand arguments of the IN function are constants
  2) result types of all right argument items are compatible
     enough to use the same single comparison function to
     compare all of them to the left argument,

then

  we can convert the right-hand list of constant items to an array
  of equally-typed constant values for the further
  QUICK index access etc. (see Item_func_in::fix_length_and_dec()).

The Item_null constant item objects have STRING_RESULT
result types, so, as far as Item_func_in::fix_length_and_dec()
is aware of NULLs in the right list, this improvement efficiently
optimizes IN function calls with a mixed right list of NULLs and
string constants. However, the optimization doesn't affect mixed
lists of NULLs and integers, floats etc., because there is no
unique common comparator.


New optimization has been added to ignore the result type
of NULL constants in the static analysis of mixed right-hand lists.
This is safe, because at the execution phase we care about
presence of NULLs anyway.

1. The collect_cmp_types() function has been modified to optionally
   ignore NULL constants in the item list.
2. NULL-skipping code of the Item_func_in::fix_length_and_dec()
   function has been modified to work not only with in_string
   vectors but with in_vectors of other types.


mysql-test/r/func_in.result:
  Added test case for the bug #44139.
mysql-test/t/func_in.test:
  Added test case for the bug #44139.
sql/item_cmpfunc.cc:
  Bug #44139: Table scan when NULL appears in IN clause
  
  1. The collect_cmp_types() function has been modified to optionally
     ignore NULL constants in the item list.
  2. NULL-skipping code of the Item_func_in::fix_length_and_dec()
     function has been modified to work not only with in_string
     vectors but with in_vectors of other types.
2009-10-05 10:27:36 +05:00
Georgi Kodinov
39c7863dd6 rpl.rpl_trigger made experimental because of bug #47810 :
rpl.rpl_trigger.test fails with valgrind errors with the innodb plugin
2009-10-04 13:31:55 +03:00
Georgi Kodinov
103cd1898a Make innodb-autoinc.test experimental until bug#47809 is fixed. 2009-10-04 13:16:56 +03:00
Georgi Kodinov
795a335b33 Disable innodb_information_schema.test until bug #47808 is fixed. 2009-10-04 13:15:53 +03: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
Ingo Struewing
91178418a2 auto-merge 2009-10-02 13:27:48 +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
Bjorn Munch
28b190b272 Bug #47383 let mysql-test-run.pl run innodb tests using the plugin
Alt. solution: let the "InnoDB plugin" combinations apply
Added some alternative plugin paths (I need to move the code anyway)
2009-10-02 10:36:38 +02:00
Ingo Struewing
1f37e3d834 auto-merge 2009-10-01 15:54:11 +02:00
Peter Lieverdink
cbaa5aaf47 Typo fixes for "usefull" -> "useful". 2009-10-01 09:40:51 +10:00
unknown
41e0d0a3ab Bug #45677 Slave stops with Duplicate entry for key PRIMARY when using trigger
The problem is that there is only one autoinc value associated with 
the query when binlogging. If more than one autoinc values are used 
in the query, the autoinc values after the first one can be inserted 
wrongly on slave. So these autoinc values can become inconsistent on 
master and slave.

The problem is resolved by marking all the statements that invoke 
a trigger or call a function that updated autoinc fields as unsafe, 
and will switch to row-format in Mixed mode. Actually, the statement 
is safe if just one autoinc value is used in sub-statement, but it's 
impossible to check how many autoinc values are used in sub-statement.)

mysql-test/suite/rpl/r/rpl_auto_increment_update_failure.result:
  Test result for bug#45677
mysql-test/suite/rpl/t/rpl_auto_increment_update_failure.test:
  Added test to verify the following two properties:
  P1) insert/update in an autoinc column causes statement to 
  be logged in row format if binlog_format=mixed
  P2) if binlog_format=mixed, and a trigger or function contains 
      two or more inserts/updates in a table that has an autoinc 
      column, then the slave should not go out of sync, even if 
      there are concurrent transactions.
sql/sql_base.cc:
  Added function 'has_write_table_with_auto_increment' to check 
  if one (or more) write tables have auto_increment columns.
  
  Removed function 'has_two_write_locked_tables_with_auto_increment', 
  because the function is included in function 
  'has_write_table_with_auto_increment'.
2009-10-01 07:19:36 +08:00