mariadb/mysql-test/suite/rpl_ndb/r
Alfranio Correia 3fad4e8df1 BUG#49019 Mixing self-logging eng. and regular eng. does not switch to row in mixed mode
Reading from a self-logging engine and updating a transactional engine such as Innodb
generates changes that are written to the binary log in the statement format and may
make slaves diverge. In the mixed mode, such changes should be written to the binary
log in the row format.

Note that the issue does not happen if we mix a self-logging engine and MyIsam
as this case is caught by checking the mixture of non-transactional and transactional
engines.

So, we classify a mixed statement where one reads from NDB and writes into another 
engine as unsafe:

if (multi_engine && flags_some_set & HA_HAS_OWN_BINLOGGING)
  lex->set_stmt_unsafe(LEX::BINLOG_STMT_UNSAFE_MULTIPLE_ENGINES_AND_SELF_LOGGING_ENGINE);

mysql-test/suite/rpl_ndb/r/rpl_ndb_mixed_engines_transactions.result:
  Augmented test case to check mixed statements
mysql-test/suite/rpl_ndb/t/rpl_ndb_mixed_engines_transactions.test:
  Augmented test case to check mixed statements
sql/share/errmsg-utf8.txt:
  Added ER_BINLOG_UNSAFE_MULTIPLE_ENGINES_AND_SELF_LOGGING_ENGINE
sql/sql_class.cc:
  Redefined flags' name in order to have two sets of flags: (i) flags that are checked when there
  is a write operation; (ii) flags that are checked regardless of the type of the operation.
  
  Classified a mixed statement where one reads from NDB and writes into another engine as unsafe:
  
    if (multi_engine && flags_some_set & HA_HAS_OWN_BINLOGGING)
      lex->set_stmt_unsafe(LEX::BINLOG_STMT_UNSAFE_MULTIPLE_ENGINES_AND_SELF_LOGGING_ENGINE);
sql/sql_lex.cc:
  Added error ER_BINLOG_UNSAFE_MULTIPLE_ENGINES_AND_SELF_LOGGING_ENGINE
sql/sql_lex.h:
  Added BINLOG_STMT_UNSAFE_MULTIPLE_ENGINES_AND_SELF_LOGGING_ENGINE
2010-02-22 03:25:33 +00:00
..
rpl_ndb_2innodb.result WL#4738 streamline/simplify @@variable creation process 2009-12-22 10:35:56 +01:00
rpl_ndb_2myisam.result WL#4738 streamline/simplify @@variable creation process 2009-12-22 10:35:56 +01:00
rpl_ndb_2ndb.result correcting wrong test case 2008-02-11 15:06:07 +01:00
rpl_ndb_2other.result BUG#38350: Many tests don't clean up after themselves on exit. 2008-11-13 20:19:00 +01:00
rpl_ndb_apply_status.result Bug#28170 replicate-ignore-db=mysql should not ignore mysql.ndb_apply_status 2007-11-02 13:07:14 +01:00
rpl_ndb_auto_inc.result
rpl_ndb_bank.result
rpl_ndb_basic.result backporting bug@27808 fixes 2009-10-01 19:44:53 +03:00
rpl_ndb_binlog_format_errors.result next-mr -> next-4284 merge. 2010-02-05 20:04:38 +03:00
rpl_ndb_blob.result
rpl_ndb_blob2.result
rpl_ndb_circular.result backporting bug@27808 fixes 2009-10-01 19:44:53 +03:00
rpl_ndb_circular_2ch.result Bug #41732 rpl_ndb_circular_2ch needs an updated configuration file 2009-02-02 22:31:01 +02:00
rpl_ndb_circular_simplex.result merging 5.1 main -> rpl+2. Some manual work required mostly due to bug46640 2009-11-06 18:35:04 +02:00
rpl_ndb_commit_afterflush.result
rpl_ndb_ctype_ucs2_def.result BUG#38350: Many tests don't clean up after themselves on exit. 2008-11-13 20:19:00 +01:00
rpl_ndb_dd_basic.result
rpl_ndb_dd_partitions.result Manual merge from mysql-trunk-merge. 2010-01-19 19:36:14 +03:00
rpl_ndb_ddl.result Patch for WL#3736: Extended Table, Column and Index Comments. 2010-02-20 13:07:32 +03:00
rpl_ndb_delete_nowhere.result
rpl_ndb_do_db.result
rpl_ndb_do_table.result
rpl_ndb_extraCol.result merge mysql-5.1-rep+2-delivery1 --> mysql-5.1-rpl-merge 2010-01-07 15:39:11 +00:00
rpl_ndb_func003.result BUG#49222: Mark RAND() as unsafe 2010-01-13 10:00:03 +01:00
rpl_ndb_idempotent.result backporting bug@27808 fixes 2009-10-01 19:44:53 +03:00
rpl_ndb_innodb2ndb.result Bug#14326: No formatting of partitioning clause in SHOW CREATE TABLE output 2008-11-04 08:43:21 +01:00
rpl_ndb_innodb_trans.result WL#4189 2007-12-12 18:19:24 +01:00
rpl_ndb_insert_ignore.result
rpl_ndb_load.result
rpl_ndb_log.result WL#2687 WL#5072 BUG#40278 BUG#47175 2009-11-03 19:02:56 +00:00
rpl_ndb_mixed_engines_transactions.result BUG#49019 Mixing self-logging eng. and regular eng. does not switch to row in mixed mode 2010-02-22 03:25:33 +00:00
rpl_ndb_mixed_implicit_commit_binlog.result Post-fix for WL#2687 WL#5072 BUG#40278 BUG#47175 2009-11-13 00:17:10 +00:00
rpl_ndb_mixed_tables.result Disabling tests that are not relevant after BUG#40116, these will be enabled 2009-09-28 13:44:45 +02:00
rpl_ndb_multi.result fixing tests results: rpl_ndb_log, rpl_ndb_multi, sp_trans_log; adding replicate-ignore_server_ids specific tests 2009-10-02 16:15:54 +03:00
rpl_ndb_multi_update2.result
rpl_ndb_multi_update3.result
rpl_ndb_myisam2ndb.result Bug#14326: No formatting of partitioning clause in SHOW CREATE TABLE output 2008-11-04 08:43:21 +01:00
rpl_ndb_relayrotate.result
rpl_ndb_rep_ignore.result
rpl_ndb_row_001.result Use absolute path to allow tets to be run also when datadir differs 2007-12-19 09:42:31 +01:00
rpl_ndb_row_implicit_commit_binlog.result Post-fix for WL#2687 WL#5072 BUG#40278 BUG#47175 2009-11-13 00:17:10 +00:00
rpl_ndb_set_null.result BUG#49481: RBR: MyISAM and bit fields may cause slave to stop on delete: 2010-01-21 17:20:24 +00:00
rpl_ndb_sp003.result
rpl_ndb_sp006.result Post fix result file 2009-10-03 09:40:32 +08:00
rpl_ndb_stm_innodb.result Merge BUG#43263 from 5.0-bugteam to 5.1-bugteam 2009-05-31 13:44:41 +08:00
rpl_ndb_sync.result backporting bug@27808 fixes 2009-10-01 19:44:53 +03:00
rpl_ndb_trig004.result
rpl_ndb_UUID.result
rpl_ndbapi_multi.result
rpl_row_basic_7ndb.result WL#5151: Conversion between different types when 2009-12-16 13:28:47 +01:00
rpl_truncate_7ndb.result WL#342 heartbeat 2009-09-29 14:16:23 +03:00
rpl_truncate_7ndb_2.result Bug#39803 Test rpl.rpl_truncate_7ndb_2 failing 2008-09-15 15:13:43 -04:00