Different results depending on table access method with TIME column and CURDATE()

Bug #731229 reported by Philip Stoev
6
This bug affects 1 person
Affects Status Importance Assigned to Milestone
MariaDB
Fix Released
High
Sergei Golubchik

Bug Description

The following query:

SELECT * FROM t1 WHERE f1 < CURDATE();

returns different results in 5.1-micro depending on the access method. FORCE KEY returns no rows while IGNORE KEY returns 2 (that is, all) rows in the table. In mysql-5.1 , both access methods return no rows.

Test case:

DROP TABLE IF EXISTS t1;
CREATE TABLE t1 (f1 time , f2 varchar(5), KEY(f1));
INSERT INTO t1 VALUES ('00:20:01','a'),('00:20:03','b');
SELECT * FROM t1 FORCE KEY (f1) WHERE f1 < CURDATE();
SELECT * FROM t1 IGNORE KEY (f1) WHERE f1 < CURDATE();

In either version, for either access method, no warning is given even though we are comparing a DATE function to a TIME column.

Related branches

Changed in maria:
milestone: none → 5.3
assignee: nobody → Sergei (sergii)
Changed in maria:
status: New → Fix Committed
importance: Undecided → High
Changed in maria:
status: Fix Committed → Fix Released
To post a comment you must log in.
This report contains Public information  
Everyone can see this information.

Other bug subscribers

Remote bug watches

Bug watches keep track of this bug in other bug trackers.