Details
-
Type:
Bug
-
Status: Closed (View Workflow)
-
Priority:
Major
-
Resolution: Fixed
-
Affects Version/s: 10.0, 10.1
-
Fix Version/s: 10.1.7
-
Component/s: Optimizer
-
Labels:
Description
This script:
DROP TABLE IF EXISTS t1;
|
CREATE TABLE t1 (a VARCHAR(10) CHARACTER SET cp1251 COLLATE cp1251_ukrainian_ci);
|
INSERT INTO t1 VALUES (' 1'),('`1');
|
SELECT * FROM t1 WHERE (a XOR '0');
|
returns one row:
+------+
|
| a |
|
+------+
|
| 1 |
|
+------+
|
Now if I make the WHERE condition even stricter:
SELECT * FROM t1 WHERE a=' 1' AND (a XOR '0');
|
it erroneously returns two rows:
+------+
|
| a |
|
+------+
|
| 1 |
|
| `1 |
|
+------+
|
Attachments
Issue Links
- blocks
-
MDEV-8728 Fix a number of problems in equal field and equal expression propagation
-
- Closed
-