[MDEV-25279] Time operations do not consider daylight savings Created: 2021-03-28 Updated: 2021-05-13 Resolved: 2021-05-13 |
|
| Status: | Closed |
| Project: | MariaDB Server |
| Component/s: | Data Manipulation - Insert, Time zones |
| Affects Version/s: | 10.3.27 |
| Fix Version/s: | N/A |
| Type: | Bug | Priority: | Critical |
| Reporter: | Marc | Assignee: | Sergei Golubchik |
| Resolution: | Duplicate | Votes: | 0 |
| Labels: | None | ||
| Environment: |
linux |
||
| Issue Links: |
|
||||||||
| Description |
|
NOW()+INTERVAL 1800 SECOND produces invalid date. and an insert statement like this produces the following error at 2021-03-28, 01:30:08 |
| Comments |
| Comment by Marc [ 2021-05-07 ] | |
|
Anything new on this issue? This data manipulation can happen at any time of the year. even though it is more likely when time savings is adjusted. | |
| Comment by Sergei Golubchik [ 2021-05-13 ] | |
|
The problem is that NOW() (which is a TIMESTAMP) is converted to a DATETIME for temporal arithmetic. Datetime value 2021-03-28 02:00:08 is perfectly valid. But it cannot be converted back to a timestamp again in your time zone. This will be fixed in MDEV-15750. Unfortunately, it's a rather big change, so might take a while. As a workaround, until MDEV-15750 is implemented, you can do your temporal arithmetic in timestamps, like
|