MINI MINI MANI MO

Path : /opt/mysql/mysql-test/suite/ndb_binlog/t/
File Upload :
Current File : //opt/mysql/mysql-test/suite/ndb_binlog/t/ndb_binlog_log_transaction_id.test

# The include statement below is a temp one for tests that are yet to
#be ported to run with InnoDB,
#but needs to be kept for tests that would need MyISAM in future.
--source include/force_myisam_default.inc

--source include/have_ndb.inc
--source include/have_log_bin.inc
--source include/have_debug.inc

use test;

create table t1 (a int primary key, b int) engine=ndb;
create table t2 (a int primary key, b int) engine=ndb;

--echo Single row autocommit transactions
--echo Should have 1 transaction id
insert into t1 values (1,1);

let $wait_binlog_event= COMMIT;
--source include/wait_for_binlog_event.inc
--source suite/ndb_binlog/t/ndb_binlog_get_row_extra_data.inc
reset master;

--echo Should have 1 transaction id
insert into t1 values (2,2);

let $wait_binlog_event= COMMIT;
--source include/wait_for_binlog_event.inc
--source suite/ndb_binlog/t/ndb_binlog_get_row_extra_data.inc
reset master;

--echo Should have 1 transaction id
update t1 set b=20 where a=2;

let $wait_binlog_event= COMMIT;
--source include/wait_for_binlog_event.inc
--source suite/ndb_binlog/t/ndb_binlog_get_row_extra_data.inc
reset master;

--echo Multi row autocommit transaction
--echo Should have 1 transaction id
delete from t1;

let $wait_binlog_event= COMMIT;
--source include/wait_for_binlog_event.inc
--source suite/ndb_binlog/t/ndb_binlog_get_row_extra_data.inc
reset master;

--echo Multi row explicit transaction
--echo Should have 1 transaction id
begin;
insert into t1 values (3,3);
insert into t1 values (4,4);
insert into t1 values (5,5);
commit;

let $wait_binlog_event= COMMIT;
--source include/wait_for_binlog_event.inc
--source suite/ndb_binlog/t/ndb_binlog_get_row_extra_data.inc
reset master;

--echo Should have 1 transaction id
begin;
insert into t1 values (6,6);
update t1 set b=40 where a=4;
delete from t1 where a=5;
commit;

let $wait_binlog_event= COMMIT;
--source include/wait_for_binlog_event.inc
--source suite/ndb_binlog/t/ndb_binlog_get_row_extra_data.inc
reset master;

--echo Multi table explicit transaction
--echo Should have 1 transaction id
begin;
insert into t1 values (7,7);
insert into t2 values (7,7);
insert into t2 values (8,8);
commit;

let $wait_binlog_event= COMMIT;
--source include/wait_for_binlog_event.inc
--source suite/ndb_binlog/t/ndb_binlog_get_row_extra_data.inc
reset master;

--echo Multiple autocommit transactions
--echo Should have 2 transaction ids
insert into t1 values (8,8);
insert into t1 values (9,9);

let $wait_binlog_event= COMMIT;
--source include/wait_for_binlog_event.inc
--source suite/ndb_binlog/t/ndb_binlog_get_row_extra_data.inc
reset master;

--echo Multiple autocommit transactions on single row
--echo Should have 3 transaction ids
insert into t1 values (10,10);
update t1 set b=100 where a=10;
delete from t1 where a=10;

let $wait_binlog_event= COMMIT;
--source include/wait_for_binlog_event.inc
--source suite/ndb_binlog/t/ndb_binlog_get_row_extra_data.inc
reset master;

--echo Multiple explicit transactions
--echo Should have 2 transaction ids
begin;
insert into t1 values (11,11);
delete from t1;
commit;

begin;
insert into t2 values (11,11);
delete from t2;
commit;

let $wait_binlog_event= COMMIT;
--source include/wait_for_binlog_event.inc
--source suite/ndb_binlog/t/ndb_binlog_get_row_extra_data.inc
reset master;


drop table t1;
drop table t2;

OHA YOOOO