mirror of
https://github.com/MariaDB/server.git
synced 2025-12-20 19:25:43 +01:00
Problem was that row_mysql_read_blob_ref can return NULL in case when blob datatype is used in a key and its real value is NULL. This NULL pointer is then used in memcpy function in wsrep_store_key_val_for_row. However, memcpy is defined so that argument 2 must not be NULL. Fixed by adding conditions before memcpy functions so that argument 2 is always non NULL. Additional fixes after review - Removed unnecessary copying key data from one buffer to another. Use original key data buffer as input and temporary buffer as output. Extra output buffer is needed because strnxfrm might expand input buffer contents. - Removed unnecessary initialization of variables and move declaration where first time needed. - Removed unnecessary intitialization of temporary buffer because we already keep track actual filled length. - Remove unneccessary extra call to charset->strnxfrm
627 lines
18 KiB
Text
627 lines
18 KiB
Text
connection node_2;
|
|
connection node_1;
|
|
SET GLOBAL sql_mode=0;
|
|
SET sql_mode=DEFAULT;
|
|
CREATE TABLE t (c INT,c2 BLOB NOT NULL,KEY k2 (c2 (1),c)) DEFAULT CHARSET=latin1 ROW_FORMAT=COMPACT;
|
|
INSERT INTO t (c) VALUES (1),(1),(1),(1),(1);
|
|
Warnings:
|
|
Warning 1364 Field 'c2' doesn't have a default value
|
|
SELECT * from t;
|
|
c c2
|
|
1
|
|
1
|
|
1
|
|
1
|
|
1
|
|
DROP TABLE t;
|
|
CREATE TABLE t (c INT,c2 BLOB NOT NULL,UNIQUE KEY k2 (c2 (1),c)) DEFAULT CHARSET=latin1 ROW_FORMAT=COMPACT;
|
|
INSERT INTO t (c) VALUES (1),(2),(3),(4),(5);
|
|
Warnings:
|
|
Warning 1364 Field 'c2' doesn't have a default value
|
|
UPDATE t SET c2=NULL WHERE c = 1;
|
|
Warnings:
|
|
Warning 1048 Column 'c2' cannot be null
|
|
UPDATE t SET c2="" WHERE c=1;
|
|
UPDATE t SET c2="TESTtest" WHERE c = 1;
|
|
UPDATE t SET c2="BUGbug" WHERE c2 = "TESTtest";
|
|
DELETE FROM t WHERE c2="BUGbug";
|
|
SELECT * from t;
|
|
c c2
|
|
2
|
|
3
|
|
4
|
|
5
|
|
DROP TABLE t;
|
|
CREATE TABLE t (c INT,c2 BLOB NOT NULL,KEY k2 (c, c2 (1))) DEFAULT CHARSET=latin1 ROW_FORMAT=COMPACT;
|
|
INSERT INTO t (c) VALUES (1),(2),(3),(4),(5);
|
|
Warnings:
|
|
Warning 1364 Field 'c2' doesn't have a default value
|
|
UPDATE t SET c2=NULL WHERE c = 1;
|
|
Warnings:
|
|
Warning 1048 Column 'c2' cannot be null
|
|
UPDATE t SET c2="" WHERE c=1;
|
|
UPDATE t SET c2="TESTtest" WHERE c = 1;
|
|
UPDATE t SET c2="BUGbug" WHERE c2 = "TESTtest";
|
|
DELETE FROM t WHERE c2="BUGbug";
|
|
SELECT * from t;
|
|
c c2
|
|
2
|
|
3
|
|
4
|
|
5
|
|
DROP TABLE t;
|
|
CREATE TABLE t (c INT,c2 VARCHAR(270) NOT NULL,UNIQUE KEY k2 (c2 (1),c)) DEFAULT CHARSET=latin1 ROW_FORMAT=COMPACT;
|
|
INSERT INTO t (c) VALUES (1),(2),(3),(4),(5);
|
|
Warnings:
|
|
Warning 1364 Field 'c2' doesn't have a default value
|
|
UPDATE t SET c2=NULL WHERE c = 1;
|
|
Warnings:
|
|
Warning 1048 Column 'c2' cannot be null
|
|
UPDATE t SET c2="" WHERE c=1;
|
|
UPDATE t SET c2="TESTtest" WHERE c = 1;
|
|
UPDATE t SET c2="BUGbug" WHERE c2 = "TESTtest";
|
|
DELETE FROM t WHERE c2="BUGbug";
|
|
SELECT * from t;
|
|
c c2
|
|
2
|
|
3
|
|
4
|
|
5
|
|
DROP TABLE t;
|
|
CREATE TABLE t (c INT,c2 VARCHAR(270) NOT NULL,KEY k2 (c, c2 (1))) DEFAULT CHARSET=latin1 ROW_FORMAT=COMPACT;
|
|
INSERT INTO t (c) VALUES (1),(2),(3),(4),(5);
|
|
Warnings:
|
|
Warning 1364 Field 'c2' doesn't have a default value
|
|
UPDATE t SET c2=NULL WHERE c = 1;
|
|
Warnings:
|
|
Warning 1048 Column 'c2' cannot be null
|
|
UPDATE t SET c2="" WHERE c=1;
|
|
UPDATE t SET c2="TESTtest" WHERE c = 1;
|
|
UPDATE t SET c2="BUGbug" WHERE c2 = "TESTtest";
|
|
DELETE FROM t WHERE c2="BUGbug";
|
|
SELECT * from t;
|
|
c c2
|
|
2
|
|
3
|
|
4
|
|
5
|
|
DROP TABLE t;
|
|
CREATE TABLE t (c INT,c2 CHAR(80) NOT NULL,UNIQUE KEY k2 (c2 (1),c)) DEFAULT CHARSET=latin1 ROW_FORMAT=COMPACT;
|
|
UPDATE t SET c2=NULL WHERE c = 1;
|
|
UPDATE t SET c2="" WHERE c=1;
|
|
UPDATE t SET c2="TESTtest" WHERE c = 1;
|
|
UPDATE t SET c2="BUGbug" WHERE c2 = "TESTtest";
|
|
DELETE FROM t WHERE c2="BUGbug";
|
|
INSERT INTO t (c) VALUES (1),(2),(3),(4),(5);
|
|
Warnings:
|
|
Warning 1364 Field 'c2' doesn't have a default value
|
|
SELECT * from t;
|
|
c c2
|
|
1
|
|
2
|
|
3
|
|
4
|
|
5
|
|
DROP TABLE t;
|
|
CREATE TABLE t (c INT,c2 CHAR(80) NOT NULL,KEY k2 (c, c2 (1))) DEFAULT CHARSET=latin1 ROW_FORMAT=COMPACT;
|
|
UPDATE t SET c2=NULL WHERE c = 1;
|
|
UPDATE t SET c2="" WHERE c=1;
|
|
UPDATE t SET c2="TESTtest" WHERE c = 1;
|
|
UPDATE t SET c2="BUGbug" WHERE c2 = "TESTtest";
|
|
DELETE FROM t WHERE c2="BUGbug";
|
|
INSERT INTO t (c) VALUES (1),(2),(3),(4),(5);
|
|
Warnings:
|
|
Warning 1364 Field 'c2' doesn't have a default value
|
|
SELECT * from t;
|
|
c c2
|
|
1
|
|
2
|
|
3
|
|
4
|
|
5
|
|
DROP TABLE t;
|
|
CREATE TABLE t (c INT,c2 TEXT NOT NULL,UNIQUE KEY k2 (c2 (1),c)) DEFAULT CHARSET=latin1 ROW_FORMAT=COMPACT;
|
|
INSERT INTO t (c) VALUES (1),(2),(3),(4),(5);
|
|
Warnings:
|
|
Warning 1364 Field 'c2' doesn't have a default value
|
|
UPDATE t SET c2=NULL WHERE c = 1;
|
|
Warnings:
|
|
Warning 1048 Column 'c2' cannot be null
|
|
UPDATE t SET c2="" WHERE c=1;
|
|
UPDATE t SET c2="TESTtest" WHERE c = 1;
|
|
UPDATE t SET c2="BUGbug" WHERE c2 = "TESTtest";
|
|
DELETE FROM t WHERE c2="BUGbug";
|
|
SELECT * from t;
|
|
c c2
|
|
2
|
|
3
|
|
4
|
|
5
|
|
DROP TABLE t;
|
|
CREATE TABLE t (c INT,c2 TEXT NOT NULL,KEY k2 (c, c2 (1))) DEFAULT CHARSET=latin1 ROW_FORMAT=COMPACT;
|
|
INSERT INTO t (c) VALUES (1),(2),(3),(4),(5);
|
|
Warnings:
|
|
Warning 1364 Field 'c2' doesn't have a default value
|
|
UPDATE t SET c2=NULL WHERE c = 1;
|
|
Warnings:
|
|
Warning 1048 Column 'c2' cannot be null
|
|
UPDATE t SET c2="" WHERE c=1;
|
|
UPDATE t SET c2="TESTtest" WHERE c = 1;
|
|
UPDATE t SET c2="BUGbug" WHERE c2 = "TESTtest";
|
|
DELETE FROM t WHERE c2="BUGbug";
|
|
SELECT * from t;
|
|
c c2
|
|
2
|
|
3
|
|
4
|
|
5
|
|
DROP TABLE t;
|
|
CREATE TABLE t (c INT PRIMARY KEY,c2 BLOB NOT NULL,UNIQUE KEY k2 (c2 (1),c)) DEFAULT CHARSET=latin1 ROW_FORMAT=COMPACT;
|
|
INSERT INTO t (c) VALUES (1),(2),(3),(4),(5);
|
|
Warnings:
|
|
Warning 1364 Field 'c2' doesn't have a default value
|
|
UPDATE t SET c2=NULL WHERE c = 1;
|
|
Warnings:
|
|
Warning 1048 Column 'c2' cannot be null
|
|
UPDATE t SET c2="" WHERE c=1;
|
|
UPDATE t SET c2="TESTtest" WHERE c = 1;
|
|
UPDATE t SET c2="BUGbug" WHERE c2 = "TESTtest";
|
|
DELETE FROM t WHERE c2="BUGbug";
|
|
SELECT * from t;
|
|
c c2
|
|
2
|
|
3
|
|
4
|
|
5
|
|
DROP TABLE t;
|
|
CREATE TABLE t (c INT PRIMARY KEY,c2 BLOB NOT NULL,KEY k2 (c, c2 (1))) DEFAULT CHARSET=latin1 ROW_FORMAT=COMPACT;
|
|
INSERT INTO t (c) VALUES (1),(2),(3),(4),(5);
|
|
Warnings:
|
|
Warning 1364 Field 'c2' doesn't have a default value
|
|
UPDATE t SET c2=NULL WHERE c = 1;
|
|
Warnings:
|
|
Warning 1048 Column 'c2' cannot be null
|
|
UPDATE t SET c2="" WHERE c=1;
|
|
UPDATE t SET c2="TESTtest" WHERE c = 1;
|
|
UPDATE t SET c2="BUGbug" WHERE c2 = "TESTtest";
|
|
DELETE FROM t WHERE c2="BUGbug";
|
|
SELECT * from t;
|
|
c c2
|
|
2
|
|
3
|
|
4
|
|
5
|
|
DROP TABLE t;
|
|
CREATE TABLE t (c INT PRIMARY KEY,c2 VARCHAR(270) NOT NULL,UNIQUE KEY k2 (c2 (1),c)) DEFAULT CHARSET=latin1 ROW_FORMAT=COMPACT;
|
|
INSERT INTO t (c) VALUES (1),(2),(3),(4),(5);
|
|
Warnings:
|
|
Warning 1364 Field 'c2' doesn't have a default value
|
|
UPDATE t SET c2=NULL WHERE c = 1;
|
|
Warnings:
|
|
Warning 1048 Column 'c2' cannot be null
|
|
UPDATE t SET c2="" WHERE c=1;
|
|
UPDATE t SET c2="TESTtest" WHERE c = 1;
|
|
UPDATE t SET c2="BUGbug" WHERE c2 = "TESTtest";
|
|
DELETE FROM t WHERE c2="BUGbug";
|
|
SELECT * from t;
|
|
c c2
|
|
2
|
|
3
|
|
4
|
|
5
|
|
DROP TABLE t;
|
|
CREATE TABLE t (c INT PRIMARY KEY,c2 VARCHAR(270) NOT NULL,KEY k2 (c, c2 (1))) DEFAULT CHARSET=latin1 ROW_FORMAT=COMPACT;
|
|
INSERT INTO t (c) VALUES (1),(2),(3),(4),(5);
|
|
Warnings:
|
|
Warning 1364 Field 'c2' doesn't have a default value
|
|
UPDATE t SET c2=NULL WHERE c = 1;
|
|
Warnings:
|
|
Warning 1048 Column 'c2' cannot be null
|
|
UPDATE t SET c2="" WHERE c=1;
|
|
UPDATE t SET c2="TESTtest" WHERE c = 1;
|
|
UPDATE t SET c2="BUGbug" WHERE c2 = "TESTtest";
|
|
DELETE FROM t WHERE c2="BUGbug";
|
|
SELECT * from t;
|
|
c c2
|
|
2
|
|
3
|
|
4
|
|
5
|
|
DROP TABLE t;
|
|
CREATE TABLE t (c INT PRIMARY KEY,c2 CHAR(80) NOT NULL,UNIQUE KEY k2 (c2 (1),c)) DEFAULT CHARSET=latin1 ROW_FORMAT=COMPACT;
|
|
UPDATE t SET c2=NULL WHERE c = 1;
|
|
UPDATE t SET c2="" WHERE c=1;
|
|
UPDATE t SET c2="TESTtest" WHERE c = 1;
|
|
UPDATE t SET c2="BUGbug" WHERE c2 = "TESTtest";
|
|
DELETE FROM t WHERE c2="BUGbug";
|
|
INSERT INTO t (c) VALUES (1),(2),(3),(4),(5);
|
|
Warnings:
|
|
Warning 1364 Field 'c2' doesn't have a default value
|
|
SELECT * from t;
|
|
c c2
|
|
1
|
|
2
|
|
3
|
|
4
|
|
5
|
|
DROP TABLE t;
|
|
CREATE TABLE t (c INT PRIMARY KEY,c2 CHAR(80) NOT NULL,KEY k2 (c, c2 (1))) DEFAULT CHARSET=latin1 ROW_FORMAT=COMPACT;
|
|
UPDATE t SET c2=NULL WHERE c = 1;
|
|
UPDATE t SET c2="" WHERE c=1;
|
|
UPDATE t SET c2="TESTtest" WHERE c = 1;
|
|
UPDATE t SET c2="BUGbug" WHERE c2 = "TESTtest";
|
|
DELETE FROM t WHERE c2="BUGbug";
|
|
INSERT INTO t (c) VALUES (1),(2),(3),(4),(5);
|
|
Warnings:
|
|
Warning 1364 Field 'c2' doesn't have a default value
|
|
SELECT * from t;
|
|
c c2
|
|
1
|
|
2
|
|
3
|
|
4
|
|
5
|
|
DROP TABLE t;
|
|
CREATE TABLE t (c INT PRIMARY KEY,c2 TEXT NOT NULL,UNIQUE KEY k2 (c2 (1),c)) DEFAULT CHARSET=latin1 ROW_FORMAT=COMPACT;
|
|
INSERT INTO t (c) VALUES (1),(2),(3),(4),(5);
|
|
Warnings:
|
|
Warning 1364 Field 'c2' doesn't have a default value
|
|
UPDATE t SET c2=NULL WHERE c = 1;
|
|
Warnings:
|
|
Warning 1048 Column 'c2' cannot be null
|
|
UPDATE t SET c2="" WHERE c=1;
|
|
UPDATE t SET c2="TESTtest" WHERE c = 1;
|
|
UPDATE t SET c2="BUGbug" WHERE c2 = "TESTtest";
|
|
DELETE FROM t WHERE c2="BUGbug";
|
|
SELECT * from t;
|
|
c c2
|
|
2
|
|
3
|
|
4
|
|
5
|
|
DROP TABLE t;
|
|
CREATE TABLE t (c INT PRIMARY KEY,c2 TEXT NOT NULL,KEY k2 (c, c2 (1))) DEFAULT CHARSET=latin1 ROW_FORMAT=COMPACT;
|
|
INSERT INTO t (c) VALUES (1),(2),(3),(4),(5);
|
|
Warnings:
|
|
Warning 1364 Field 'c2' doesn't have a default value
|
|
UPDATE t SET c2=NULL WHERE c = 1;
|
|
Warnings:
|
|
Warning 1048 Column 'c2' cannot be null
|
|
UPDATE t SET c2="" WHERE c=1;
|
|
UPDATE t SET c2="TESTtest" WHERE c = 1;
|
|
UPDATE t SET c2="BUGbug" WHERE c2 = "TESTtest";
|
|
DELETE FROM t WHERE c2="BUGbug";
|
|
SELECT * from t;
|
|
c c2
|
|
2
|
|
3
|
|
4
|
|
5
|
|
DROP TABLE t;
|
|
SET GLOBAL sql_mode=0;
|
|
SET sql_mode=DEFAULT;
|
|
CREATE TABLE t (c INT,c2 BLOB,KEY k2 (c2 (6),c)) DEFAULT CHARSET=latin1 ROW_FORMAT=COMPACT;
|
|
INSERT INTO t (c) VALUES (1),(1),(1),(1),(1);
|
|
UPDATE t SET c2=NULL WHERE c = 1;
|
|
UPDATE t SET c2="" WHERE c=1;
|
|
UPDATE t SET c2="TESTtest" WHERE c = 1;
|
|
UPDATE t SET c2="BUGbug" WHERE c2 = "TESTtest";
|
|
DELETE FROM t WHERE c2="BUGbug";
|
|
SELECT * FROM t;
|
|
c c2
|
|
DROP TABLE t;
|
|
CREATE TABLE t (c INT,c2 BLOB NOT NULL,KEY k2 (c2 (6),c)) DEFAULT CHARSET=latin1 ROW_FORMAT=COMPACT;
|
|
INSERT INTO t (c) VALUES (1),(1),(1),(1),(1);
|
|
Warnings:
|
|
Warning 1364 Field 'c2' doesn't have a default value
|
|
UPDATE t SET c2=NULL WHERE c = 1;
|
|
Warnings:
|
|
Warning 1048 Column 'c2' cannot be null
|
|
Warning 1048 Column 'c2' cannot be null
|
|
Warning 1048 Column 'c2' cannot be null
|
|
Warning 1048 Column 'c2' cannot be null
|
|
Warning 1048 Column 'c2' cannot be null
|
|
UPDATE t SET c2="" WHERE c=1;
|
|
UPDATE t SET c2="TESTtest" WHERE c = 1;
|
|
UPDATE t SET c2="BUGbug" WHERE c2 = "TESTtest";
|
|
DELETE FROM t WHERE c2="BUGbug";
|
|
SELECT * FROM t;
|
|
c c2
|
|
DROP TABLE t;
|
|
CREATE TABLE t (c INT NOT NULL PRIMARY KEY,c2 BLOB,KEY k2 (c2 (6),c)) DEFAULT CHARSET=latin1 ROW_FORMAT=COMPACT;
|
|
INSERT INTO t (c) VALUES (1),(2),(3),(4),(5);
|
|
UPDATE t SET c2=NULL WHERE c = 1;
|
|
UPDATE t SET c2="" WHERE c=1;
|
|
UPDATE t SET c2="TESTtest" WHERE c = 1;
|
|
UPDATE t SET c2="BUGbug" WHERE c2 = "TESTtest";
|
|
DELETE FROM t WHERE c2="BUGbug";
|
|
SELECT * FROM t;
|
|
c c2
|
|
2 NULL
|
|
3 NULL
|
|
4 NULL
|
|
5 NULL
|
|
DROP TABLE t;
|
|
CREATE TABLE t (c INT NOT NULL PRIMARY KEY,c2 BLOB NOT NULL,KEY k2 (c2 (6),c)) DEFAULT CHARSET=latin1 ROW_FORMAT=COMPACT;
|
|
INSERT INTO t (c) VALUES (1),(2),(3),(4),(5);
|
|
Warnings:
|
|
Warning 1364 Field 'c2' doesn't have a default value
|
|
UPDATE t SET c2=NULL WHERE c = 1;
|
|
Warnings:
|
|
Warning 1048 Column 'c2' cannot be null
|
|
UPDATE t SET c2="" WHERE c=1;
|
|
UPDATE t SET c2="TESTtest" WHERE c = 1;
|
|
UPDATE t SET c2="BUGbug" WHERE c2 = "TESTtest";
|
|
DELETE FROM t WHERE c2="BUGbug";
|
|
SELECT * FROM t;
|
|
c c2
|
|
2
|
|
3
|
|
4
|
|
5
|
|
DROP TABLE t;
|
|
CREATE TABLE t (c INT,c2 VARCHAR(270),KEY k2 (c2 (6),c)) DEFAULT CHARSET=latin1 ROW_FORMAT=COMPACT;
|
|
INSERT INTO t (c) VALUES (1),(1),(1),(1),(1);
|
|
UPDATE t SET c2=NULL WHERE c = 1;
|
|
UPDATE t SET c2="" WHERE c=1;
|
|
UPDATE t SET c2="TESTtest" WHERE c = 1;
|
|
UPDATE t SET c2="BUGbug" WHERE c2 = "TESTtest";
|
|
DELETE FROM t WHERE c2="BUGbug";
|
|
SELECT * FROM t;
|
|
c c2
|
|
DROP TABLE t;
|
|
CREATE TABLE t (c INT,c2 VARCHAR(270) NOT NULL,KEY k2 (c2 (6),c)) DEFAULT CHARSET=latin1 ROW_FORMAT=COMPACT;
|
|
INSERT INTO t (c) VALUES (1),(1),(1),(1),(1);
|
|
Warnings:
|
|
Warning 1364 Field 'c2' doesn't have a default value
|
|
UPDATE t SET c2=NULL WHERE c = 1;
|
|
Warnings:
|
|
Warning 1048 Column 'c2' cannot be null
|
|
Warning 1048 Column 'c2' cannot be null
|
|
Warning 1048 Column 'c2' cannot be null
|
|
Warning 1048 Column 'c2' cannot be null
|
|
Warning 1048 Column 'c2' cannot be null
|
|
UPDATE t SET c2="" WHERE c=1;
|
|
UPDATE t SET c2="TESTtest" WHERE c = 1;
|
|
UPDATE t SET c2="BUGbug" WHERE c2 = "TESTtest";
|
|
DELETE FROM t WHERE c2="BUGbug";
|
|
SELECT * FROM t;
|
|
c c2
|
|
DROP TABLE t;
|
|
CREATE TABLE t (c INT NOT NULL PRIMARY KEY,c2 VARCHAR(270),KEY k2 (c2 (6),c)) DEFAULT CHARSET=latin1 ROW_FORMAT=COMPACT;
|
|
INSERT INTO t (c) VALUES (1),(2),(3),(4),(5);
|
|
UPDATE t SET c2=NULL WHERE c = 1;
|
|
UPDATE t SET c2="" WHERE c=1;
|
|
UPDATE t SET c2="TESTtest" WHERE c = 1;
|
|
UPDATE t SET c2="BUGbug" WHERE c2 = "TESTtest";
|
|
DELETE FROM t WHERE c2="BUGbug";
|
|
SELECT * FROM t;
|
|
c c2
|
|
2 NULL
|
|
3 NULL
|
|
4 NULL
|
|
5 NULL
|
|
DROP TABLE t;
|
|
CREATE TABLE t (c INT NOT NULL PRIMARY KEY,c2 VARCHAR(270) NOT NULL,KEY k2 (c2 (6),c)) DEFAULT CHARSET=latin1 ROW_FORMAT=COMPACT;
|
|
INSERT INTO t (c) VALUES (1),(2),(3),(4),(5);
|
|
Warnings:
|
|
Warning 1364 Field 'c2' doesn't have a default value
|
|
UPDATE t SET c2=NULL WHERE c = 1;
|
|
Warnings:
|
|
Warning 1048 Column 'c2' cannot be null
|
|
UPDATE t SET c2="" WHERE c=1;
|
|
UPDATE t SET c2="TESTtest" WHERE c = 1;
|
|
UPDATE t SET c2="BUGbug" WHERE c2 = "TESTtest";
|
|
DELETE FROM t WHERE c2="BUGbug";
|
|
SELECT * FROM t;
|
|
c c2
|
|
2
|
|
3
|
|
4
|
|
5
|
|
DROP TABLE t;
|
|
CREATE TABLE t (c INT,c2 CHAR(80),KEY k2 (c2 (6),c)) DEFAULT CHARSET=latin1 ROW_FORMAT=COMPACT;
|
|
INSERT INTO t (c) VALUES (1),(1),(1),(1),(1);
|
|
UPDATE t SET c2=NULL WHERE c = 1;
|
|
UPDATE t SET c2="" WHERE c=1;
|
|
UPDATE t SET c2="TESTtest" WHERE c = 1;
|
|
UPDATE t SET c2="BUGbug" WHERE c2 = "TESTtest";
|
|
DELETE FROM t WHERE c2="BUGbug";
|
|
SELECT * FROM t;
|
|
c c2
|
|
DROP TABLE t;
|
|
CREATE TABLE t (c INT,c2 CHAR(80) NOT NULL,KEY k2 (c2 (6),c)) DEFAULT CHARSET=latin1 ROW_FORMAT=COMPACT;
|
|
INSERT INTO t (c) VALUES (1),(1),(1),(1),(1);
|
|
Warnings:
|
|
Warning 1364 Field 'c2' doesn't have a default value
|
|
UPDATE t SET c2=NULL WHERE c = 1;
|
|
Warnings:
|
|
Warning 1048 Column 'c2' cannot be null
|
|
Warning 1048 Column 'c2' cannot be null
|
|
Warning 1048 Column 'c2' cannot be null
|
|
Warning 1048 Column 'c2' cannot be null
|
|
Warning 1048 Column 'c2' cannot be null
|
|
UPDATE t SET c2="" WHERE c=1;
|
|
UPDATE t SET c2="TESTtest" WHERE c = 1;
|
|
UPDATE t SET c2="BUGbug" WHERE c2 = "TESTtest";
|
|
DELETE FROM t WHERE c2="BUGbug";
|
|
SELECT * FROM t;
|
|
c c2
|
|
DROP TABLE t;
|
|
CREATE TABLE t (c INT NOT NULL PRIMARY KEY,c2 CHAR(80),KEY k2 (c2 (6),c)) DEFAULT CHARSET=latin1 ROW_FORMAT=COMPACT;
|
|
INSERT INTO t (c) VALUES (1),(2),(3),(4),(5);
|
|
UPDATE t SET c2=NULL WHERE c = 1;
|
|
UPDATE t SET c2="" WHERE c=1;
|
|
UPDATE t SET c2="TESTtest" WHERE c = 1;
|
|
UPDATE t SET c2="BUGbug" WHERE c2 = "TESTtest";
|
|
DELETE FROM t WHERE c2="BUGbug";
|
|
SELECT * FROM t;
|
|
c c2
|
|
2 NULL
|
|
3 NULL
|
|
4 NULL
|
|
5 NULL
|
|
DROP TABLE t;
|
|
CREATE TABLE t (c INT NOT NULL PRIMARY KEY,c2 CHAR(80) NOT NULL,KEY k2 (c2 (6),c)) DEFAULT CHARSET=latin1 ROW_FORMAT=COMPACT;
|
|
INSERT INTO t (c) VALUES (1),(2),(3),(4),(5);
|
|
Warnings:
|
|
Warning 1364 Field 'c2' doesn't have a default value
|
|
UPDATE t SET c2=NULL WHERE c = 1;
|
|
Warnings:
|
|
Warning 1048 Column 'c2' cannot be null
|
|
UPDATE t SET c2="" WHERE c=1;
|
|
UPDATE t SET c2="TESTtest" WHERE c = 1;
|
|
UPDATE t SET c2="BUGbug" WHERE c2 = "TESTtest";
|
|
DELETE FROM t WHERE c2="BUGbug";
|
|
SELECT * FROM t;
|
|
c c2
|
|
2
|
|
3
|
|
4
|
|
5
|
|
DROP TABLE t;
|
|
CREATE TABLE t (c INT,c2 TEXT,KEY k2 (c2 (6),c)) DEFAULT CHARSET=latin1 ROW_FORMAT=COMPACT;
|
|
INSERT INTO t (c) VALUES (1),(1),(1),(1),(1);
|
|
UPDATE t SET c2=NULL WHERE c = 1;
|
|
UPDATE t SET c2="TESTtest" WHERE c = 1;
|
|
UPDATE t SET c2="BUGbug" WHERE c2 = "TESTtest";
|
|
DELETE FROM t WHERE c2="BUGbug";
|
|
SELECT * FROM t;
|
|
c c2
|
|
DROP TABLE t;
|
|
CREATE TABLE t (c INT,c2 TEXT NOT NULL,KEY k2 (c2 (6),c)) DEFAULT CHARSET=latin1 ROW_FORMAT=COMPACT;
|
|
INSERT INTO t (c) VALUES (1),(1),(1),(1),(1);
|
|
Warnings:
|
|
Warning 1364 Field 'c2' doesn't have a default value
|
|
UPDATE t SET c2=NULL WHERE c = 1;
|
|
Warnings:
|
|
Warning 1048 Column 'c2' cannot be null
|
|
Warning 1048 Column 'c2' cannot be null
|
|
Warning 1048 Column 'c2' cannot be null
|
|
Warning 1048 Column 'c2' cannot be null
|
|
Warning 1048 Column 'c2' cannot be null
|
|
UPDATE t SET c2="TESTtest" WHERE c = 1;
|
|
UPDATE t SET c2="BUGbug" WHERE c2 = "TESTtest";
|
|
DELETE FROM t WHERE c2="BUGbug";
|
|
SELECT * FROM t;
|
|
c c2
|
|
DROP TABLE t;
|
|
CREATE TABLE t (c INT NOT NULL PRIMARY KEY,c2 TEXT,KEY k2 (c2 (6),c)) DEFAULT CHARSET=latin1 ROW_FORMAT=COMPACT;
|
|
INSERT INTO t (c) VALUES (1),(2),(3),(4),(5);
|
|
UPDATE t SET c2=NULL WHERE c = 1;
|
|
UPDATE t SET c2="TESTtest" WHERE c = 1;
|
|
UPDATE t SET c2="BUGbug" WHERE c2 = "TESTtest";
|
|
DELETE FROM t WHERE c2="BUGbug";
|
|
SELECT * FROM t;
|
|
c c2
|
|
2 NULL
|
|
3 NULL
|
|
4 NULL
|
|
5 NULL
|
|
DROP TABLE t;
|
|
CREATE TABLE t (c INT NOT NULL PRIMARY KEY,c2 TEXT NOT NULL,KEY k2 (c2 (6),c)) DEFAULT CHARSET=latin1 ROW_FORMAT=COMPACT;
|
|
INSERT INTO t (c) VALUES (1),(2),(3),(4),(5);
|
|
Warnings:
|
|
Warning 1364 Field 'c2' doesn't have a default value
|
|
UPDATE t SET c2=NULL WHERE c = 1;
|
|
Warnings:
|
|
Warning 1048 Column 'c2' cannot be null
|
|
UPDATE t SET c2="TESTtest" WHERE c = 1;
|
|
UPDATE t SET c2="BUGbug" WHERE c2 = "TESTtest";
|
|
DELETE FROM t WHERE c2="BUGbug";
|
|
SELECT * FROM t;
|
|
c c2
|
|
2
|
|
3
|
|
4
|
|
5
|
|
DROP TABLE t;
|
|
SET GLOBAL sql_mode=DEFAULT;
|
|
CREATE TABLE t (c INT,c2 BLOB,KEY k2 (c2 (6),c)) DEFAULT CHARSET=latin1 ROW_FORMAT=COMPACT;
|
|
INSERT INTO t (c) VALUES (1),(1),(1),(1),(1);
|
|
UPDATE t SET c2=NULL WHERE c = 1;
|
|
UPDATE t SET c2="TESTtest" WHERE c = 1;
|
|
UPDATE t SET c2="BUGbug" WHERE c2 = "TESTtest";
|
|
DELETE FROM t WHERE c2="BUGbug";
|
|
SELECT * FROM t;
|
|
c c2
|
|
DROP TABLE t;
|
|
CREATE TABLE t (c INT,c2 VARCHAR(270),KEY k2 (c2 (6),c)) DEFAULT CHARSET=latin1 ROW_FORMAT=COMPACT;
|
|
INSERT INTO t (c) VALUES (1),(1),(1),(1),(1);
|
|
UPDATE t SET c2=NULL WHERE c = 1;
|
|
UPDATE t SET c2="TESTtest" WHERE c = 1;
|
|
UPDATE t SET c2="BUGbug" WHERE c2 = "TESTtest";
|
|
DELETE FROM t WHERE c2="BUGbug";
|
|
SELECT * FROM t;
|
|
c c2
|
|
DROP TABLE t;
|
|
CREATE TABLE t (c INT,c2 CHAR(80),KEY k2 (c2 (6),c)) DEFAULT CHARSET=latin1 ROW_FORMAT=COMPACT;
|
|
INSERT INTO t (c) VALUES (1),(1),(1),(1),(1);
|
|
UPDATE t SET c2=NULL WHERE c = 1;
|
|
UPDATE t SET c2="TESTtest" WHERE c = 1;
|
|
UPDATE t SET c2="BUGbug" WHERE c2 = "TESTtest";
|
|
DELETE FROM t WHERE c2="BUGbug";
|
|
SELECT * FROM t;
|
|
c c2
|
|
DROP TABLE t;
|
|
CREATE TABLE t (c INT,c2 TEXT,KEY k2 (c2 (6),c)) DEFAULT CHARSET=latin1 ROW_FORMAT=COMPACT;
|
|
INSERT INTO t (c) VALUES (1),(1),(1),(1),(1);
|
|
UPDATE t SET c2=NULL WHERE c = 1;
|
|
UPDATE t SET c2="TESTtest" WHERE c = 1;
|
|
UPDATE t SET c2="BUGbug" WHERE c2 = "TESTtest";
|
|
DELETE FROM t WHERE c2="BUGbug";
|
|
SELECT * FROM t;
|
|
c c2
|
|
DROP TABLE t;
|
|
CREATE TABLE t (c INT NOT NULL PRIMARY KEY,c2 BLOB,KEY k2 (c2 (6),c)) DEFAULT CHARSET=latin1 ROW_FORMAT=COMPACT;
|
|
INSERT INTO t (c) VALUES (1),(2),(3),(4),(5);
|
|
UPDATE t SET c2=NULL WHERE c = 1;
|
|
UPDATE t SET c2="TESTtest" WHERE c = 1;
|
|
UPDATE t SET c2="BUGbug" WHERE c2 = "TESTtest";
|
|
DELETE FROM t WHERE c2="BUGbug";
|
|
SELECT * FROM t;
|
|
c c2
|
|
2 NULL
|
|
3 NULL
|
|
4 NULL
|
|
5 NULL
|
|
DROP TABLE t;
|
|
CREATE TABLE t (c INT NOT NULL PRIMARY KEY,c2 VARCHAR(270),KEY k2 (c2 (6),c)) DEFAULT CHARSET=latin1 ROW_FORMAT=COMPACT;
|
|
INSERT INTO t (c) VALUES (1),(2),(3),(4),(5);
|
|
UPDATE t SET c2=NULL WHERE c = 1;
|
|
UPDATE t SET c2="TESTtest" WHERE c = 1;
|
|
UPDATE t SET c2="BUGbug" WHERE c2 = "TESTtest";
|
|
DELETE FROM t WHERE c2="BUGbug";
|
|
SELECT * FROM t;
|
|
c c2
|
|
2 NULL
|
|
3 NULL
|
|
4 NULL
|
|
5 NULL
|
|
DROP TABLE t;
|
|
CREATE TABLE t (c INT NOT NULL PRIMARY KEY,c2 CHAR(80),KEY k2 (c2 (6),c)) DEFAULT CHARSET=latin1 ROW_FORMAT=COMPACT;
|
|
INSERT INTO t (c) VALUES (1),(2),(3),(4),(5);
|
|
UPDATE t SET c2=NULL WHERE c = 1;
|
|
UPDATE t SET c2="TESTtest" WHERE c = 1;
|
|
UPDATE t SET c2="BUGbug" WHERE c2 = "TESTtest";
|
|
DELETE FROM t WHERE c2="BUGbug";
|
|
SELECT * FROM t;
|
|
c c2
|
|
2 NULL
|
|
3 NULL
|
|
4 NULL
|
|
5 NULL
|
|
DROP TABLE t;
|
|
CREATE TABLE t (c INT NOT NULL PRIMARY KEY,c2 TEXT,KEY k2 (c2 (6),c)) DEFAULT CHARSET=latin1 ROW_FORMAT=COMPACT;
|
|
INSERT INTO t (c) VALUES (1),(2),(3),(4),(5);
|
|
UPDATE t SET c2=NULL WHERE c = 1;
|
|
UPDATE t SET c2="TESTtest" WHERE c = 1;
|
|
UPDATE t SET c2="BUGbug" WHERE c2 = "TESTtest";
|
|
DELETE FROM t WHERE c2="BUGbug";
|
|
SELECT * FROM t;
|
|
c c2
|
|
2 NULL
|
|
3 NULL
|
|
4 NULL
|
|
5 NULL
|
|
DROP TABLE t;
|