Bug #30951 | makedate returns different results depending on version of mysql | ||
---|---|---|---|
Submitted: | 11 Sep 2007 11:11 | Modified: | 26 Oct 2007 2:31 |
Reporter: | Shane Bester (Platinum Quality Contributor) | Email Updates: | |
Status: | Closed | Impact on me: | |
Category: | MySQL Server: General | Severity: | S2 (Serious) |
Version: | OS: | Any | |
Assigned to: | Tatiana Azundris Nuernberg | CPU Architecture: | Any |
Tags: | makedate |
[11 Sep 2007 11:11]
Shane Bester
[11 Sep 2007 11:38]
MySQL Verification Team
Thank you for the bug report.
[11 Oct 2007 7:54]
Tatiana Azundris Nuernberg
5.1+ behaviour is correct.
[11 Oct 2007 10:01]
Bugs System
A patch for this bug has been committed. After review, it may be pushed to the relevant source trees for release in the next version. You can access the patch from: http://lists.mysql.com/commits/35333 ChangeSet@1.2531, 2007-10-11 11:32:18+02:00, tnurnberg@sin.intern.azundris.com +3 -0 Bug#30951: makedate returns different results depending on version of mysql makedate() incorrectly moved year values in [100;200[ into 1970-2069 range.
[11 Oct 2007 15:57]
Ingo Strüwing
Approved. I would like to have a slightly more verbose changeset comment though.
[11 Oct 2007 16:16]
Tatiana Azundris Nuernberg
Doc-Team: since this is a backport from 5.1, makedate() behaviour is now the same across versions five and up. (As is, to my knowledge, all time/date behaviour(?).) Since it was decided not to change the behaviour of 4.1, makedate() behaviour, like that of many other time/date functions, is different in 4.1 from that in 5+.
[12 Oct 2007 10:31]
Bugs System
A patch for this bug has been committed. After review, it may be pushed to the relevant source trees for release in the next version. You can access the patch from: http://lists.mysql.com/commits/35462 ChangeSet@1.2531, 2007-10-12 11:46:48+02:00, tnurnberg@sin.intern.azundris.com +3 -0 Bug#30951: makedate returns different results depending on version of mysql makedate() will fold years below 100 into the 1970-2069 range. CS removes code that also wrongly folded years between 100 and 200 into that range, which should be left unchanged. Backport from 5.1.
[15 Oct 2007 13:16]
Tatiana Azundris Nuernberg
pushed to 5.0.52/maint on Fri 2007/10/12
[18 Oct 2007 21:35]
Bugs System
Pushed into 5.1.23-beta
[18 Oct 2007 21:36]
Bugs System
Pushed into 5.0.52
[26 Oct 2007 2:31]
Paul DuBois
Noted in 5.0.52, 5.1.23 changelogs. MAKEDATE() incorrectly moved year values in the 100-200 range into the 1970-2069 range. (This is legitimate for 00-99, but three-digit years should be used unchanged.)