stonedb
stonedb copied to clipboard
bug: SELECT name, LENGTH(name), n FROM t2 WHERE name='cc '; The query result data is incomplete
Describe the problem
CREATE TABLE t1 (name varchar(255))engine=stonedb;
CREATE TABLE t2 (name varchar(255), n int, KEY (name(3)))engine=stonedb;
INSERT INTO t1 VALUES ('ccc'), ('bb'), ('cc '), ('aa '), ('aa');
INSERT INTO t2 VALUES ('bb',1), ('aa',2), ('cc ',3);
INSERT INTO t2 VALUES (concat('cc ', 0x06), 4);
INSERT INTO t2 VALUES ('cc',5), ('bb ',6), ('cc ',7);
SELECT name, LENGTH(name), n FROM t2 WHERE name='cc ';
##The error results are as follows
+------+--------------+------+
| name | LENGTH(name) | n |
+------+--------------+------+
| cc | 3 | 7 |
+------+--------------+------+
1 row in set (0.01 sec)
Expected behavior
##The following is:innodb test result
SELECT name, LENGTH(name), n FROM t2 WHERE name='cc ';
+-------+--------------+------+
| name | LENGTH(name) | n |
+-------+--------------+------+
| cc | 5 | 3 |
| cc | 2 | 5 |
| cc | 3 | 7 |
+-------+--------------+------+
3 rows in set (0.01 sec)
How To Reproduce
CREATE TABLE t1 (name varchar(255))engine=stonedb;
CREATE TABLE t2 (name varchar(255), n int, KEY (name(3)))engine=stonedb;
INSERT INTO t1 VALUES ('ccc'), ('bb'), ('cc '), ('aa '), ('aa');
INSERT INTO t2 VALUES ('bb',1), ('aa',2), ('cc ',3);
INSERT INTO t2 VALUES (concat('cc ', 0x06), 4);
INSERT INTO t2 VALUES ('cc',5), ('bb ',6), ('cc ',7);
SELECT name, LENGTH(name), n FROM t2 WHERE name='cc ';
Environment
- StoneDB for mysql5.7 (release)
- Ubuntu 20.04.4
Are you interested in submitting a PR to solve the problem?
- [ ] Yes, I will!
With both stonedb_insert_delayed=0/1
:
mysql> select * from t2;
+-------+------+
| name | n |
+-------+------+
| bb | 1 |
| aa | 2 |
| cc | 3 |
| cc | 4 |
| cc | 5 |
| bb | 6 |
| cc | 7 |
+-------+------+
distinct not work?
mysql> select distinct name from t2;
+-------+
| name |
+-------+
| bb |
| aa |
| cc |
| cc |
| cc |
| bb |
| cc |
+-------+
7 rows in set (0.01 sec)
stonedb 5.7_v1.0.1,Regression This bug still exists
ACK
#247
If the verification is successful, the space problem is not handled