Commit graph

11 commits

Author SHA1 Message Date
unknown
ef20543d82 correct comment as bug is fixed 2007-06-28 00:52:05 +02:00
unknown
d3a94951e7 WL#3303
- correct includes
2007-06-27 22:23:44 +02:00
unknown
bd4ac4b335 WL#3303
- undoing disable of ndb tests
2007-06-27 13:32:25 +02:00
unknown
6541852709 BUG#28722 (Multi-engine statements on has_own_binlogging engine):
Test fixes resulting from changed semantics.


mysql-test/extra/rpl_tests/rpl_row_UUID.test:
  Using same engine throughout to prevent NDB tests from failing.
mysql-test/r/binlog_multi_engine.result:
  Result change.
mysql-test/r/ndb_read_multi_range.result:
  Result change.
mysql-test/r/ndb_trigger.result:
  Result change.
mysql-test/r/rpl_ndb_UUID.result:
  Result change.
mysql-test/r/rpl_row_UUID.result:
  Result change.
mysql-test/t/binlog_multi_engine.test:
  Removing garbage.
mysql-test/t/ndb_read_multi_range.test:
  Using ndbcluster for table used inside trigger.
mysql-test/t/ndb_trigger.test:
  Using ndbcluster for table used inside trigger.
2007-06-22 01:39:23 +02:00
unknown
10b10375db Merge kindahl-laptop.dnsalias.net:/home/bkroot/mysql-5.1-rpl
into  kindahl-laptop.dnsalias.net:/home/bk/b28722-mysql-5.1-rpl


mysql-test/r/binlog_multi_engine.result:
  Manual merge
mysql-test/t/binlog_multi_engine.test:
  Manual merge
2007-06-21 13:52:56 +02:00
unknown
d2d630c2ee BUG#28722 (Multi-engine statements on has_own_binlogging engine):
WL#3931 (Multi-table statement involving self-logging engines):

Adding logic to generate error if more than one engine is involved in
the statement and at least one engine is self-logging (i.e., has the
HA_HAS_OWN_BINLOGGING table flags set).


mysql-test/r/binlog_multi_engine.result:
  Result change.
mysql-test/t/binlog_multi_engine.test:
  Errors now generated for some statements due to NDB setting the
  HA_HAS_OWN_BINLOGGING flag.
sql/sql_base.cc:
  Computing both the intersection and union of all table flags in the
  logic to decide logging format.
  
  Calculating if there are more than one engine involved in the statement.
  For this case, we only consider engines that hold tables that data is
  written to.
  
  Adding logic to generate error if more than one engine is involved in
  the statement and at least one engine is self-logging (i.e., has the
  HA_HAS_OWN_BINLOGGING table flags set).
  ---
  Renaming variable.
2007-06-21 13:34:06 +02:00
unknown
afabda8f64 Some test case fixes.
mysql-test/r/binlog_multi_engine.result:
  Result change
mysql-test/t/binlog_multi_engine.test:
  Fixing test case. Keeping some bad statements in the test since I don't
  want to disable the entire test. Have marked the offending statement
  so that they can easily be found.
2007-06-19 22:18:16 +02:00
unknown
48c9f3bcd3 Fixes to make team-tree green.
mysql-test/r/binlog_multi_engine.result:
  Result change
mysql-test/t/binlog_multi_engine.test:
  Commenting out statements that generate non-deterministic results.
2007-06-18 11:29:32 +02:00
unknown
f3dc047890 WL#3303 (RBR: Engine-controlled logging format):
Test case fixes.


mysql-test/r/binlog_multi_engine.result:
  Result change.
mysql-test/r/rpl_ndb_stm_innodb.result:
  Result change.
mysql-test/t/binlog_multi_engine.test:
  NDB tests only work in MIXED or ROW mode. Adding some cleanup actions.
mysql-test/t/loaddata_autocom_ndb.test:
  NDB requires MIXED or ROW mode.
mysql-test/t/ndb_alter_table.test:
  NDB requires MIXED or ROW mode, but will switch to row format
  automatically, so we only run these tests under ROW mode.
mysql-test/t/ndb_alter_table2.test:
  NDB requires MIXED or ROW mode, but will switch to row format
  automatically, so we only run these tests under ROW mode.
mysql-test/t/ndb_alter_table3.test:
  NDB requires MIXED or ROW mode, but will switch to row format
  automatically, so we only run these tests under ROW mode.
mysql-test/t/ndb_autodiscover.test:
  NDB requires MIXED or ROW mode, but will switch to row format
  automatically, so we only run these tests under ROW mode.
mysql-test/t/ndb_autodiscover2.test:
  NDB requires MIXED or ROW mode, but will switch to row format
  automatically, so we only run these tests under ROW mode.
mysql-test/t/ndb_autodiscover3.test:
  NDB requires MIXED or ROW mode, but will switch to row format
  automatically, so we only run these tests under ROW mode.
mysql-test/t/ndb_basic.test:
  NDB requires MIXED or ROW mode, but will switch to row format
  automatically, so we only run these tests under ROW mode.
mysql-test/t/ndb_binlog_log_bin.test:
  NDB requires MIXED or ROW mode, but will switch to row format
  automatically, so we only run these tests under ROW mode.
mysql-test/t/ndb_binlog_multi.test:
  NDB requires MIXED or ROW mode, but will switch to row format
  automatically, so we only run these tests under ROW mode.
mysql-test/t/ndb_bitfield.test:
  NDB requires MIXED or ROW mode, but will switch to row format
  automatically, so we only run these tests under ROW mode.
mysql-test/t/ndb_blob.test:
  NDB requires MIXED or ROW mode, but will switch to row format
  automatically, so we only run these tests under ROW mode.
mysql-test/t/ndb_blob_partition.test:
  NDB requires MIXED or ROW mode, but will switch to row format
  automatically, so we only run these tests under ROW mode.
mysql-test/t/ndb_cache.test:
  NDB requires MIXED or ROW mode, but will switch to row format
  automatically, so we only run these tests under ROW mode.
mysql-test/t/ndb_cache2.test:
  NDB requires MIXED or ROW mode, but will switch to row format
  automatically, so we only run these tests under ROW mode.
mysql-test/t/ndb_cache_multi.test:
  NDB requires MIXED or ROW mode, but will switch to row format
  automatically, so we only run these tests under ROW mode.
mysql-test/t/ndb_cache_multi2.test:
  NDB requires MIXED or ROW mode, but will switch to row format
  automatically, so we only run these tests under ROW mode.
mysql-test/t/ndb_charset.test:
  NDB requires MIXED or ROW mode, but will switch to row format
  automatically, so we only run these tests under ROW mode.
mysql-test/t/ndb_condition_pushdown.test:
  NDB requires MIXED or ROW mode, but will switch to row format
  automatically, so we only run these tests under ROW mode.
mysql-test/t/ndb_config.test:
  NDB requires MIXED or ROW mode, but will switch to row format
  automatically, so we only run these tests under ROW mode.
mysql-test/t/ndb_config2.test:
  NDB requires MIXED or ROW mode, but will switch to row format
  automatically, so we only run these tests under ROW mode.
mysql-test/t/ndb_cursor.test:
  NDB requires MIXED or ROW mode, but will switch to row format
  automatically, so we only run these tests under ROW mode.
mysql-test/t/ndb_database.test:
  NDB requires MIXED or ROW mode, but will switch to row format
  automatically, so we only run these tests under ROW mode.
mysql-test/t/ndb_dd_alter.test:
  NDB requires MIXED or ROW mode, but will switch to row format
  automatically, so we only run these tests under ROW mode.
mysql-test/t/ndb_dd_backuprestore.test:
  NDB requires MIXED or ROW mode, but will switch to row format
  automatically, so we only run these tests under ROW mode.
mysql-test/t/ndb_dd_basic.test:
  NDB requires MIXED or ROW mode, but will switch to row format
  automatically, so we only run these tests under ROW mode.
mysql-test/t/ndb_dd_ddl.test:
  NDB requires MIXED or ROW mode, but will switch to row format
  automatically, so we only run these tests under ROW mode.
mysql-test/t/ndb_dd_disk2memory.test:
  NDB requires MIXED or ROW mode, but will switch to row format
  automatically, so we only run these tests under ROW mode.
mysql-test/t/ndb_dd_dump.test:
  NDB requires MIXED or ROW mode, but will switch to row format
  automatically, so we only run these tests under ROW mode.
mysql-test/t/ndb_dd_sql_features.test:
  NDB requires MIXED or ROW mode, but will switch to row format
  automatically, so we only run these tests under ROW mode.
mysql-test/t/ndb_gis.test:
  NDB requires MIXED or ROW mode, but will switch to row format
  automatically, so we only run these tests under ROW mode.
mysql-test/t/ndb_index.test:
  NDB requires MIXED or ROW mode, but will switch to row format
  automatically, so we only run these tests under ROW mode.
mysql-test/t/ndb_index_ordered.test:
  NDB requires MIXED or ROW mode, but will switch to row format
  automatically, so we only run these tests under ROW mode.
mysql-test/t/ndb_index_unique.test:
  NDB requires MIXED or ROW mode, but will switch to row format
  automatically, so we only run these tests under ROW mode.
mysql-test/t/ndb_insert.test:
  NDB requires MIXED or ROW mode, but will switch to row format
  automatically, so we only run these tests under ROW mode.
mysql-test/t/ndb_limit.test:
  NDB requires MIXED or ROW mode, but will switch to row format
  automatically, so we only run these tests under ROW mode.
mysql-test/t/ndb_loaddatalocal.test:
  NDB requires MIXED or ROW mode, but will switch to row format
  automatically, so we only run these tests under ROW mode.
mysql-test/t/ndb_lock.test:
  NDB requires MIXED or ROW mode, but will switch to row format
  automatically, so we only run these tests under ROW mode.
mysql-test/t/ndb_minmax.test:
  NDB requires MIXED or ROW mode, but will switch to row format
  automatically, so we only run these tests under ROW mode.
mysql-test/t/ndb_multi.test:
  NDB requires MIXED or ROW mode, but will switch to row format
  automatically, so we only run these tests under ROW mode.
mysql-test/t/ndb_partition_error.test:
  NDB requires MIXED or ROW mode, but will switch to row format
  automatically, so we only run these tests under ROW mode.
mysql-test/t/ndb_partition_key.test:
  NDB requires MIXED or ROW mode, but will switch to row format
  automatically, so we only run these tests under ROW mode.
mysql-test/t/ndb_partition_list.test:
  NDB requires MIXED or ROW mode, but will switch to row format
  automatically, so we only run these tests under ROW mode.
mysql-test/t/ndb_partition_range.test:
  NDB requires MIXED or ROW mode, but will switch to row format
  automatically, so we only run these tests under ROW mode.
mysql-test/t/ndb_read_multi_range.test:
  NDB requires MIXED or ROW mode, but will switch to row format
  automatically, so we only run these tests under ROW mode.
mysql-test/t/ndb_rename.test:
  NDB requires MIXED or ROW mode, but will switch to row format
  automatically, so we only run these tests under ROW mode.
mysql-test/t/ndb_replace.test:
  NDB requires MIXED or ROW mode, but will switch to row format
  automatically, so we only run these tests under ROW mode.
mysql-test/t/ndb_restore.test:
  NDB requires MIXED or ROW mode, but will switch to row format
  automatically, so we only run these tests under ROW mode.
mysql-test/t/ndb_restore_partition.test:
  NDB requires MIXED or ROW mode, but will switch to row format
  automatically, so we only run these tests under ROW mode.
mysql-test/t/ndb_restore_print.test:
  NDB requires MIXED or ROW mode, but will switch to row format
  automatically, so we only run these tests under ROW mode.
mysql-test/t/ndb_row_format.test:
  NDB requires MIXED or ROW mode, but will switch to row format
  automatically, so we only run these tests under ROW mode.
mysql-test/t/ndb_single_user.test:
  NDB requires MIXED or ROW mode, but will switch to row format
  automatically, so we only run these tests under ROW mode.
mysql-test/t/ndb_sp.test:
  NDB requires MIXED or ROW mode, but will switch to row format
  automatically, so we only run these tests under ROW mode.
mysql-test/t/ndb_subquery.test:
  NDB requires MIXED or ROW mode, but will switch to row format
  automatically, so we only run these tests under ROW mode.
mysql-test/t/ndb_temporary.test:
  NDB requires MIXED or ROW mode, but will switch to row format
  automatically, so we only run these tests under ROW mode.
mysql-test/t/ndb_transaction.test:
  NDB requires MIXED or ROW mode, but will switch to row format
  automatically, so we only run these tests under ROW mode.
mysql-test/t/ndb_trigger.test:
  NDB requires MIXED or ROW mode, but will switch to row format
  automatically, so we only run these tests under ROW mode.
mysql-test/t/ndb_truncate.test:
  NDB requires MIXED or ROW mode, but will switch to row format
  automatically, so we only run these tests under ROW mode.
mysql-test/t/ndb_types.test:
  NDB requires MIXED or ROW mode, but will switch to row format
  automatically, so we only run these tests under ROW mode.
mysql-test/t/ndb_update.test:
  NDB requires MIXED or ROW mode, but will switch to row format
  automatically, so we only run these tests under ROW mode.
mysql-test/t/ndb_view.test:
  NDB requires MIXED or ROW mode, but will switch to row format
  automatically, so we only run these tests under ROW mode.
mysql-test/t/ndbapi.test:
  NDB requires MIXED or ROW mode, but will switch to row format
  automatically, so we only run these tests under ROW mode.
mysql-test/t/ps_7ndb.test:
  NDB requires MIXED or ROW mode, but will switch to row format
  automatically, so we only run these tests under ROW mode.
mysql-test/t/rpl_ndb_commit_afterflush.test:
  NDB requires MIXED or ROW mode, but will switch to row format
  automatically, so we only run these tests under ROW mode.
mysql-test/t/rpl_ndb_innodb_trans.test:
  NDB requires MIXED or ROW mode, but will switch to row format
  automatically, so we only run these tests under ROW mode.
mysql-test/t/rpl_ndb_stm_innodb.test:
  We need MIXED mode on slave since it is necessary to let the slave
  switch to row format when executing replicated statements.
mysql-test/t/strict_autoinc_5ndb.test:
  NDB requires MIXED or ROW mode, but will switch to row format
  automatically, so we only run these tests under ROW mode.
2007-06-14 11:05:48 +02:00
unknown
7eebcf2f99 BUG#23051 (READ COMMITTED breaks mixed and statement-based replication):
Post-merge fixes.


BitKeeper/deleted/.del-ndb_binlog_basic2.test:
  Delete: mysql-test/t/ndb_binlog_basic2.test
BitKeeper/deleted/.del-ndb_binlog_basic2.result:
  Delete: mysql-test/r/ndb_binlog_basic2.result
mysql-test/r/binlog_innodb.result:
  Result change
mysql-test/r/binlog_multi_engine.result:
  Result change
mysql-test/t/binlog_multi_engine.test:
  Changed error code
mysql-test/t/partition_hash.test:
  Changed error code
sql/sql_class.h:
  Fixes to select_create constructor argument list.
2007-06-13 12:28:35 +02:00
unknown
098e15c164 WL#3303 (RBR: Engine-controlled logging format):
Adding support to allow engines to tell what formats they can handle.
The server will generate an error if it is not possible to log the
statement according to the logging mode in effect.

Adding flags to several storage engines to state what they can handle.

Changes to NDB handler removing code that forces row-based mode and
adding flag saying that NDB can only handle row format.

Adding check that binlog flags are only used for real tables that are
opened for writing.


BitKeeper/deleted/.del-binlog_row_blackhole.result:
  Rename: mysql-test/r/binlog_row_blackhole.result -> BitKeeper/deleted/.del-binlog_row_blackhole.result
BitKeeper/deleted/.del-binlog_row_blackhole.test:
  Rename: mysql-test/t/binlog_row_blackhole.test -> BitKeeper/deleted/.del-binlog_row_blackhole.test
mysql-test/t/partition_hash.test:
  Adding error check for statement that might fail.
sql/ha_ndbcluster.cc:
  Removing statements that switch to row-based format.
  Adding row capabilities.
sql/handler.h:
  Adding handler/table flags to indicate that the engine is row- and/or
  statement-logging capable.
  
  Adding typedef for table_flags type.
sql/set_var.cc:
  Removing code that prevents changing binlog format when NDB is active.
sql/share/errmsg.txt:
  Adding error messages for when row- and/or statement-based logging
  formats cannot be used.
sql/sql_base.cc:
  Adding business logic in lock_tables() to decide when an error should
  be thrown because logging is not possible.
  Add logic to switch to row format when that is allowed and needed.
  ---
  Binlog flags should only be checked for real tables that are opened for
  writing. Adding code to check that.
storage/archive/ha_archive.h:
  Adding row- and statement-logging capabilities to engine.
storage/blackhole/ha_blackhole.h:
  Blackhole can handle statement-format only.
storage/csv/ha_tina.h:
  Adding row- and statement-logging capabilities to engine.
storage/example/ha_example.h:
  For the example engine, we arbitrarily decided that it only can handle
  row format.
storage/federated/ha_federated.h:
  Adding row- and statement-logging capabilities to engine.
storage/heap/ha_heap.h:
  Heap can handle both row- and statement-based logging format.
storage/myisam/ha_myisam.cc:
  MyISAM can handle both row- and statement-based logging format.
storage/myisammrg/ha_myisammrg.h:
  MyISAM can handle both row- and statement-based logging format.
mysql-test/r/binlog_multi_engine.result:
  New BitKeeper file ``mysql-test/r/binlog_multi_engine.result''
mysql-test/t/binlog_multi_engine.test:
  New BitKeeper file ``mysql-test/t/binlog_multi_engine.test''
2007-05-28 12:50:29 +02:00