mirror of
https://github.com/MariaDB/server.git
synced 2025-12-01 17:39:21 +03:00
Problem was that there was extra condition !thd->lex->no_write_to_binlog before call to begin TOI. It seems that this variable is not initialized. TRUNCATE does not support [NO_WRITE_TO_BINLOG | LOCAL] keywords, thus we should not check this condition. All this was hidden in a macro, so I decided to remove those macros that were used only a few places with actual function calls.
40 lines
1.0 KiB
Plaintext
40 lines
1.0 KiB
Plaintext
--source include/galera_cluster.inc
|
|
|
|
CREATE TABLE author (
|
|
id SMALLINT UNSIGNED NOT NULL AUTO_INCREMENT PRIMARY KEY,
|
|
name VARCHAR(100) NOT NULL
|
|
) ENGINE = InnoDB;
|
|
|
|
CREATE TABLE book (
|
|
id MEDIUMINT UNSIGNED NOT NULL AUTO_INCREMENT PRIMARY KEY,
|
|
title VARCHAR(200) NOT NULL,
|
|
author_id SMALLINT UNSIGNED NOT NULL,
|
|
CONSTRAINT `fk_book_author`
|
|
FOREIGN KEY (author_id) REFERENCES author (id)
|
|
ON DELETE CASCADE
|
|
ON UPDATE RESTRICT
|
|
) ENGINE = InnoDB;
|
|
|
|
INSERT INTO author (name) VALUES ('Abdul Alhazred');
|
|
INSERT INTO book (title, author_id) VALUES ('Necronomicon', LAST_INSERT_ID());
|
|
|
|
TRUNCATE TABLE book;
|
|
SELECT * FROM author;
|
|
SELECT * FROM book;
|
|
|
|
--connection node_2
|
|
SELECT * FROM author;
|
|
SELECT * FROM book;
|
|
INSERT INTO author (name) VALUES ('Abdul Alhazred');
|
|
INSERT INTO book (title, author_id) VALUES ('Necronomicon', LAST_INSERT_ID());
|
|
TRUNCATE TABLE book;
|
|
SELECT * FROM author;
|
|
SELECT * FROM book;
|
|
|
|
--connection node_1
|
|
TRUNCATE TABLE book;
|
|
SELECT * FROM author;
|
|
SELECT * FROM book;
|
|
|
|
DROP TABLE book, author;
|