mirror of
https://github.com/MariaDB/server.git
synced 2025-05-02 19:25:03 +03:00
WL#2952 - add simple single-table only transactions to federated. sql/ha_federated.cc: added handlerton functions for commit and rollback, added handler methods for same. sql/ha_federated.h: added member variable for transaction data (linked list of federated handlers used in transaction) and member functions for support commit and rollback. mysql-test/r/federated_transactions.result: New BitKeeper file ``mysql-test/r/federated_transactions.result'' mysql-test/t/federated_transactions.test: New BitKeeper file ``mysql-test/t/federated_transactions.test''
38 lines
1.1 KiB
Plaintext
38 lines
1.1 KiB
Plaintext
source include/federated.inc;
|
|
|
|
connection slave;
|
|
DROP TABLE IF EXISTS federated.t1;
|
|
#SHOW ENGINES;
|
|
CREATE TABLE federated.t1 (
|
|
`id` int(20) NOT NULL,
|
|
`name` varchar(32) NOT NULL default ''
|
|
)
|
|
DEFAULT CHARSET=latin1 ENGINE=BerkeleyDB;
|
|
|
|
connection master;
|
|
DROP TABLE IF EXISTS federated.t1;
|
|
# # correct connection, same named tables
|
|
--replace_result $SLAVE_MYPORT SLAVE_PORT
|
|
eval CREATE TABLE federated.t1 (
|
|
`id` int(20) NOT NULL,
|
|
`name` varchar(32) NOT NULL default ''
|
|
)
|
|
ENGINE="FEDERATED" DEFAULT CHARSET=latin1
|
|
CONNECTION='mysql://root@127.0.0.1:$SLAVE_MYPORT/federated/t1';
|
|
|
|
set autocommit=0;
|
|
INSERT INTO federated.t1 (id, name) VALUES (1, 'foo');
|
|
INSERT INTO federated.t1 (id, name) VALUES (2, 'fee');
|
|
COMMIT;
|
|
INSERT INTO federated.t1 (id, name) VALUES (3, 'fie');
|
|
INSERT INTO federated.t1 (id, name) VALUES (4, 'fum');
|
|
ROLLBACK;
|
|
set autocommit=1;
|
|
INSERT INTO federated.t1 (id, name) VALUES (5, 'foe');
|
|
INSERT INTO federated.t1 (id, name) VALUES (6, 'fig');
|
|
|
|
SELECT * FROM federated.t1;
|
|
DELETE FROM federated.t1;
|
|
|
|
source include/federated_cleanup.inc;
|