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

3088 Commits

Author SHA1 Message Date
Mats Kindahl
4c30c09105 Automerge 2008-08-27 16:21:10 +02:00
Mats Kindahl
dd34cceb4c Result file change. 2008-08-27 16:17:55 +02:00
Mats Kindahl
3b6195a78c Automerge 2008-08-27 11:05:04 +02:00
Mats Kindahl
f1b8441e02 Merge b38773-5.1-rpl-merge into 5.1-rpl-merge 2008-08-27 11:02:37 +02:00
Mats Kindahl
6461089817 Bug #38773: DROP DATABASE cause switch to stmt-mode when there are temporary
tables open

When executing a DROP DATABASE statement in ROW mode and having temporary
tables open at the same time, the existance of temporary tables prevent
the server from switching back to row mode after temporarily switching to
statement mode to handle the logging of the statement.

Fixed the problem by removing the code to switch to statement mode and added
code to temporarily disable the binary log while dropping the objects in the
database.
2008-08-27 10:40:11 +02:00
He Zhenxing
90b072cbde Fix cherry picking patch of BUG#37051 2008-08-26 20:11:56 +08:00
He Zhenxing
78e1f5d523 Cherry picking patch for BUG#37051 2008-08-26 18:01:49 +08:00
Alexander Barkov
c490167334 Merging latest changes. 2008-08-26 14:58:23 +05:00
Andrei Elkin
3a1c50bc53 Bug #36968 rpl_temporary_errors.test produces warning in pushbuild
Backporting fixes to 5.1 from 6.0.
2008-08-25 15:40:44 +03:00
Matthias Leich
ece678c5a2 Fix for Bug#38270 Test "processlist_priv_ps" fails on varying "processlist" output
Details of the fix:
- wrong command and state in processlist -> insert poll routine
- unexpected additional session -> abort if unexpected session found
2008-08-21 16:38:49 +02:00
Mattias Jonsson
42fe1205a0 Backport of patch for Bug#34604 (from 6.0)
post push fix for bug#20129, test failed due to non existing
source files.
2008-08-20 17:29:14 +02:00
Mats Kindahl
25bb56accb Merging with 5.1-rpl. 2008-08-20 10:42:39 +02:00
Mats Kindahl
1bfa707a7a Bug #38773: DROP DATABASE cause switch to stmt-mode when there are temporary tables open
When executing a DROP DATABASE statement in ROW mode and having temporary
tables open at the same time, the existance of temporary tables prevent
the server from switching back to row mode after temporarily switching to
statement mode to handle the logging of the statement.

Fixed the problem by removing the code to switch to statement mode and added
code to temporarily disable the binary log while dropping the objects in the
database.
2008-08-20 10:06:50 +02:00
Sven Sandberg
28ce5ab20e Bug#35807 - INSTALL PLUGIN replicates row-based, but not stmt-based
INSTALL PLUGIN and UNINSTALL PLUGIN worked with statement-based and
mixed-mode replication only, but not with row-based replication.

There is no statement-based replication of these statements.
But there was row-based replication of the inserts and deletes
to and from the mysql.plugin table.

The fix is to suppress binlogging during insert and delete to
and from the mysql.plugin table.
2008-08-19 17:35:56 +02:00
Mats Kindahl
e28826766f Merging with 5.1-rpl 2008-08-19 15:42:10 +02:00
Mats Kindahl
f0bf4a47ca Bug #34707: Row based replication: slave creates table within wrong database
The failure was caused by executing a CREATE-SELECT statement that creates a
table in another database than the current one. In row-based logging, the
CREATE statement was written to the binary log without the database, hence
creating the table in the wrong database, causing the following inserts to
fail since the table didn't exist in the given database.

Fixed the bug by adding a parameter to store_create_info() that will make
the function print the database name before the table name and used that
in the calls that write the CREATE statement to the binary log. The database
name is only printed if it is different than the currently selected database.

The output of SHOW CREATE TABLE has not changed and is still printed without
the database name.
2008-08-19 13:18:59 +02:00
Mattias Jonsson
1833014b06 merge 2008-08-19 12:26:30 +02:00
Mattias Jonsson
63f983aceb Post push fix for valgrind warning in ha_partition.cc
Bug#35161
Fixed memory leak when failing to open a partition.

Bug#20129
Added tests for verifying REPAIR PARTITION.
2008-08-19 11:44:22 +02:00
Chad MILLER
0cf71401b3 Merge from 5.0-bugteam. 2008-08-15 16:42:29 -04:00
Davi Arnaut
fd793526b4 Merge from mysql-5.1 main. 2008-08-15 12:58:19 -03:00
He Zhenxing
f94e914d47 post fixes after merge 2008-08-15 10:31:04 +08:00
He Zhenxing
ea30bcda06 auto merge 2008-08-14 17:59:12 +08:00
He Zhenxing
c6c2e66c67 Merge 5.1-rpl-testfixes -> 5.1-rpl 2008-08-14 17:38:22 +08:00
He Zhenxing
646c509b18 Auto merge from mysql-5.1 main 2008-08-14 14:27:18 +08:00
Andrei Elkin
2923e91b5a Bug #38738 rpl_ndb_mixed_engines_transactions result content mismatch
pb notices differences in results at the very beginning of the test.

Absense of mysql.ndb_apply_status must be benign anyway, but the warning should not happen
if have_ndb.inc is invoked ahead of ndb_master-slave.
Fixed with relocation of the macros.
2008-08-14 00:18:31 +03:00
Matthias Leich
5d48042e45 Fix for Bug#37853
Test "funcs_1.processlist_val_ps" fails in various ways
+ corrections of logic in poll routines
+ minor improvements
2008-08-13 21:44:54 +02:00
Serge Kozlov
35e47b31a2 Bug#18817, removing --binlog-format option from .opt files 2008-08-13 23:12:51 +04:00
Mattias Jonsson
f84bf0077d manual merge of bug#37402 2008-08-12 12:26:23 +02:00
He Zhenxing
87b43cf0df Apply tomas's patch to fix rpl_row_basic.test, this can fix BUG#37884,
BUG#38369, enable rpl_row_basic_7ndb test
2008-08-12 17:09:36 +08:00
Mattias Jonsson
4cb12690c7 Bug#20129: ALTER TABLE ... REPAIR PARTITION ... complains that
partition is corrupt

Updated result files after merge
2008-08-12 10:02:30 +02:00
Mattias Jonsson
1e73141b65 manual merge of Bug#20129 into 5.1-bugteam 2008-08-11 20:06:08 +02:00
Mattias Jonsson
07e9a6dc2a Bug#20129: ALTER TABLE ... REPAIR PARTITION ... complains that
partition is corrupt

The main problem was that ALTER TABLE t ANALYZE/CHECK/OPTIMIZE/REPAIR
PARTITION took another code path (over mysql_alter_table instead of
mysql_admin_table) which differs in two ways:
1) alter table opens the tables in a different way than admin tables do
   resulting in returning with error before it tried the command
2) alter table does not start to send any diagnostic rows to the client
   which the lower admin functions continue to use -> resulting in
   assertion crash

The fix:
Remapped ALTER TABLE t ANALYZE/CHECK/OPTIMIZE/REPAIR PARTITION to use
the same code path as ANALYZE/CHECK/OPTIMIZE/REPAIR TABLE t.
Adding check in mysql_admin_table to setup the partition list for
which partitions that should be used.


Partitioned tables will still not work with
REPAIR TABLE/PARTITION USE_FRM, since that requires moving partitions
to tables, REPAIR TABLE t USE_FRM, and check that the data still
fulfills the partitioning function and then move the table back to
being a partition.

NOTE: I have removed the following functions from the handler
interface:
analyze_partitions, check_partitions, optimize_partitions,
repair_partitions
Since they are not longer needed.
THIS ALTERS THE STORAGE ENGINE API
2008-08-11 20:02:03 +02:00
Mattias Jonsson
854e230707 merge into an updated 5.1-bugteam tree 2008-08-11 16:15:39 +02:00
He Zhenxing
337029cae2 Auto merge 2008-08-06 18:41:27 +08:00
Sven Sandberg
73e253370b merged 5.1 main to 5.1-rpl
manually resolved conflicts:
Text conflict in client/mysqltest.c
Contents conflict in mysql-test/include/have_bug25714.inc
Text conflict in mysql-test/include/have_ndbapi_examples.inc
Text conflict in mysql-test/mysql-test-run.pl
Text conflict in mysql-test/suite/parts/inc/partition_check_drop.inc
Text conflict in mysql-test/suite/parts/inc/partition_layout.inc
Text conflict in mysql-test/suite/parts/inc/partition_layout_check1.inc
Text conflict in mysql-test/suite/parts/inc/partition_layout_check2.inc
Text conflict in mysql-test/suite/parts/r/partition_alter1_1_2_myisam.result
Text conflict in mysql-test/suite/parts/r/partition_alter1_1_myisam.result
Text conflict in mysql-test/suite/parts/r/partition_alter1_2_myisam.result
Text conflict in mysql-test/suite/parts/r/partition_alter2_myisam.result
Text conflict in mysql-test/suite/parts/r/partition_alter3_innodb.result
Text conflict in mysql-test/suite/parts/r/partition_alter3_myisam.result
Text conflict in mysql-test/suite/parts/r/partition_basic_innodb.result
Text conflict in mysql-test/suite/parts/r/partition_basic_myisam.result
Text conflict in mysql-test/suite/parts/r/partition_basic_symlink_myisam.result
Text conflict in mysql-test/suite/parts/r/partition_engine_myisam.result
Text conflict in mysql-test/suite/parts/r/partition_syntax_myisam.result
Text conflict in mysql-test/suite/rpl_ndb/t/disabled.def
Text conflict in mysql-test/t/disabled.def
2008-08-04 07:04:47 +02:00
He Zhenxing
e6ac8830a4 BUG#37051 Replication rules not evaluated correctly
The problem of this bug is that we need to get the list of tables
to be updated for a multi-table update statement, which requires to
open all the tables referenced by the statement and resolve all
the fields involved in update in order to figure out the list of
tables for update. However if there are replicate filter rules,
some tables might not exist on slave and result in a failure
before we could examine the filter rules.

I think the whole problem can not be solved on slave alone,
the master must record and send the information of tables
involved for update to slave, so that the slave do not need to
open all the tables referenced by the multi-table update statement to
figure out which tables are involved for update.

So a status variable is added to Query_log event to store the
value of table map for update on master. And on slave, it will
try to get the value of this variable and use it to examine
filter rules without opening any tables on slave, if this values
is not available, the old approach is used and thus the bug will
still occur for when replicating from old masters.
2008-07-31 14:24:27 +08:00
Sven Sandberg
1562db45f1 merge 5.1 main -> 5.1-rpl-testfixes
all changes automerged without conflicts
2008-07-29 19:55:46 +02:00
Sven Sandberg
3d5289c2dd BUG#38068: binlog_stm_binlog fails sporadically in pushbuild
Post-push fix: updated some result files that were affected
by the previous fix to this bug.
2008-07-29 17:36:13 +02:00
Alexander Barkov
0e52492980 Bug#36597 Testsuite "jp": Suspicious results for some tests using sjis
Problem: Extra new line appeared in jisx0208_sjis2.dat in a mistake, which
broke jp_convert_sjis and jp_select_sjis tests.
Fix: removing extra line

  mysql-test/suite/jp/std_data/jisx0208_sjis2.dat:
      removing wrong extra new line

  mysql-test/suite/jp/t/disabled.def:     
      activating disabled tests
2008-07-29 10:43:57 +05:00
Serge Kozlov
f763a96d2b Bug#37732 2008-07-25 21:23:50 +04:00
Patrick Crews
44be24542a Bug#38383 - Certain funcs_1 trig tests are failing on Pushbuild.
Removing duplicate 'setup' portions of these include files.  Likely an editor error created dupe lines.
This is causing many Pushbuild errors
2008-07-25 13:14:52 -04:00
Georgi Kodinov
f6d66bd6f1 merge of 5.1-main to 5.1-bugteam 2008-07-25 18:06:47 +03:00
Georgi Kodinov
b467c15e36 Disabled 5.1 tests (and reported bugs) 2008-07-25 13:32:05 +03:00
Horst Hunger
5f3c15c2fe Merge from parent. 2008-07-24 09:49:29 +02:00
Sven Sandberg
fc0f24812f BUG#38068: binlog_stm_binlog fails sporadically in pushbuild
Problem: binlog_stm_binlog runs INSERT DELAYED queries, and
then prints the contents of the binlog. Before checking the
contents of the binlog, the test waits until the rows have
appeared in the table. However, this is not enough, since
INSERT DELAYED does not write rows to the binlog at the same
time as it writes them to the table. So there is a race.
Fix: Add a FLUSH TABLES before SHOW BINLOG EVENTS. That
waits until the insert_delayed thread is done.
2008-07-23 18:56:39 +02:00
Sven Sandberg
7750753312 BUG#37733: rpl.rpl_flushlog_loop 'row' fails sporadically on pushbuild
BUG#37884: rpl_row_basic_2myisam and rpl_row_basic_3innodb fail sporadically in pushbuild
These have been fixed in 5.1-rpl. Re-applying fix for BUG#37884
in 5.1-bugteam, and disabling rpl_flushlog_loop for BUG#37733 in
5.1-bugteam.
2008-07-23 16:34:02 +02:00
Horst Hunger
c199b9d51d Final fix for bug#36522 in 5.1. This new fix was necessary due to fix of bug 37708. 2008-07-23 16:06:44 +02:00
Sven Sandberg
b6545b30fa BUG#37717: rpl.rpl_stm_until 'stmt' fails sporadically on pushbuild
Problem: After START SLAVE, the Slave_IO_Status column of
SHOW SLAVE STATUS goes from No to Yes asynchronously. That
caused sporadic failures on pushbuild in rpl_stm_until since
the test contains SHOW SLAVE STATUS right after START SLAVE.
Fix: Wait until Slave_IO_Status becomes Yes after each
START SLAVE.
2008-07-23 13:23:52 +02:00
Sven Sandberg
bb945f70a1 BUG#37493: rpl_trunc_temp.test nondeterministic
Problem: the test waits for a 'DROP TEMPORARY TABLE' event to
appear in the master's binlog, then checks on the slave whether
the number of temporary tables has decreased. The slave does
not sync, causing a race.
Fix: check for the 'DROP TEMPORARY TABLE' event on slave
instead of on master.
2008-07-23 12:13:55 +02:00
Kristofer Pettersson
9d83bfb469 merge 5.1->5.1-bugteam 2008-07-22 12:56:36 +02:00