[MDEV-14042] Inconsistent behavior of virtual column depending on system function Created: 2017-10-10  Updated: 2017-10-10

Status: Open
Project: MariaDB Server
Component/s: Virtual Columns
Affects Version/s: 10.2
Fix Version/s: 10.2

Type: Bug Priority: Major
Reporter: Elena Stepanova Assignee: Sergei Golubchik
Resolution: Unresolved Votes: 0
Labels: None


 Description   

MariaDB [test]> CREATE TABLE t1 (d DATE, v TINYINT(1) AS (d >= CURDATE()));
Query OK, 0 rows affected (0.21 sec)
 
MariaDB [test]> INSERT INTO t1 (d) VALUES (CURDATE());
Query OK, 1 row affected (0.04 sec)

OK

MariaDB [test]> SELECT * FROM t1;
+------------+------+
| d          | v    |
+------------+------+
| 2017-10-11 |    1 |
+------------+------+
1 row in set (0.00 sec)
 
MariaDB [test]> SELECT d, v FROM t1;
+------------+------+
| d          | v    |
+------------+------+
| 2017-10-11 |    1 |
+------------+------+
1 row in set (0.00 sec)

MariaDB [test]> SET timestamp = @@timestamp + 3600*24;
Query OK, 0 rows affected (0.00 sec)

First one is not OK

MariaDB [test]> SELECT * FROM t1;
+------------+------+
| d          | v    |
+------------+------+
| 2017-10-11 |    1 |
+------------+------+
1 row in set (0.00 sec)
 
MariaDB [test]> SELECT d, v FROM t1;
+------------+------+
| d          | v    |
+------------+------+
| 2017-10-11 |    0 |
+------------+------+
1 row in set (0.00 sec)

Test case

CREATE TABLE t1 (d DATE, v TINYINT(1) AS (d >= CURDATE()));
INSERT INTO t1 (d) VALUES (CURDATE());
SELECT * FROM t1;
SELECT d, v FROM t1;
SET timestamp = @@timestamp + 3600*24;
SELECT * FROM t1;
SELECT d, v FROM t1;
 
DROP TABLE t1;


Generated at Thu Feb 08 08:10:28 UTC 2024 using Jira 8.20.16#820016-sha1:9d11dbea5f4be3d4cc21f03a88dd11d8c8687422.