1
0
mirror of https://github.com/MariaDB/server.git synced 2025-07-07 06:01:31 +03:00
Files
mariadb/mysql-test/suite/innodb/r/alter_not_null_debug.result
Thirunarayanan Balathandayuthapani 6e90c195ed MDEV-16365 Setting a column NOT NULL fails to return error for
NULL values when there is no DEFAULT

- Merged the alter_non_null test case to alter_not_null test case.
Renamed the alter_non_null_debug to alter_not_null_debug test case
2018-07-02 12:45:02 +05:30

79 lines
2.1 KiB
Plaintext

CREATE TABLE t1(c1 INT NOT NULL, c2 INT, PRIMARY KEY(c1))ENGINE=INNODB;
INSERT INTO t1 VALUES(1, 1);
SET DEBUG_SYNC= 'row_merge_after_scan
SIGNAL opened WAIT_FOR flushed';
affected rows: 0
ALTER TABLE t1 CHANGE c2 c2 INT NOT NULL DEFAULT 2;
connect con1,localhost,root;
SET DEBUG_SYNC= 'now WAIT_FOR opened';
affected rows: 0
INSERT INTO t1 VALUES(2, NULL);
affected rows: 1
UPDATE t1 SET c1 = 3 WHERE c2 = 1;
affected rows: 1
info: Rows matched: 1 Changed: 1 Warnings: 0
SET DEBUG_SYNC= 'now SIGNAL flushed';
affected rows: 0
connection default;
affected rows: 0
info: Records: 0 Duplicates: 0 Warnings: 1
Warnings:
Warning 1265 Data truncated for column 'c2' at row 3
SELECT * FROM t1;
c1 c2
2 0
3 1
DROP TABLE t1;
CREATE TABLE t1(c1 INT NOT NULL, c2 INT, PRIMARY KEY(c1))ENGINE=INNODB;
INSERT INTO t1 VALUES(1, 1);
SET DEBUG_SYNC= 'row_merge_after_scan
SIGNAL opened WAIT_FOR flushed';
affected rows: 0
ALTER TABLE t1 CHANGE c2 c2 INT NOT NULL DEFAULT 2;
connection con1;
SET DEBUG_SYNC= 'now WAIT_FOR opened';
affected rows: 0
INSERT INTO t1 VALUES(2, 3);
affected rows: 1
UPDATE t1 SET c1 = 3 WHERE c2 = 1;
affected rows: 1
info: Rows matched: 1 Changed: 1 Warnings: 0
SET DEBUG_SYNC= 'now SIGNAL flushed';
affected rows: 0
connection default;
affected rows: 0
info: Records: 0 Duplicates: 0 Warnings: 0
SELECT * FROM t1;
c1 c2
2 3
3 1
DROP TABLE t1;
CREATE TABLE t1(c1 INT NOT NULL, c2 INT, c3 INT, PRIMARY KEY(c1))ENGINE=INNODB;
INSERT INTO t1 VALUES(1, 2, 3);
SET DEBUG_SYNC= 'row_merge_after_scan
SIGNAL opened WAIT_FOR flushed';
affected rows: 0
ALTER IGNORE TABLE t1 CHANGE c2 c2 INT NOT NULL DEFAULT 2;
connection con1;
SET DEBUG_SYNC= 'now WAIT_FOR opened';
affected rows: 0
UPDATE t1 SET c2= 2 WHERE c1 = 1;
affected rows: 0
info: Rows matched: 1 Changed: 0 Warnings: 0
INSERT INTO t1 VALUES (2, NULL, 4);
affected rows: 1
SET DEBUG_SYNC= 'now SIGNAL flushed';
affected rows: 0
connection default;
affected rows: 0
info: Records: 0 Duplicates: 0 Warnings: 1
Warnings:
Warning 1265 Data truncated for column 'c2' at row 3
SELECT * FROM t1;
c1 c2 c3
1 2 3
2 0 4
DROP TABLE t1;
disconnect con1;
SET DEBUG_SYNC='RESET';