mirror of
https://github.com/MariaDB/server.git
synced 2025-01-16 20:12:31 +01:00
351a8eecf0
Changing the way how a the following conditions are evaluated: WHERE timestamp_column=datetime_const_expr (for all comparison operators: =, <=>, <, >, <=, >=, <> and for NULLIF) Before the change it was always performed as DATETIME. That was not efficient, as involved per-row TIMESTAMP->DATETIME conversion for timestamp_column. For example, in case of the SYSTEM time zone it involved a localtime_r() call, which is known to be slow. After the change it's performed as TIMESTAMP in many cases. This allows to avoid per-row conversion, as it works the other way around: datetime_const_expr is converted to TIMESTAMP once before the execution stage. Note, datetime_const_expr must be inside monotone continuous periods of the current time zone, i.e. not near these anomalies: - DST changes (spring forward, fall back) - leap seconds |
||
---|---|---|
.. | ||
r | ||
t | ||
common.inc | ||
common.opt | ||
common_finish.inc | ||
disabled.def | ||
engines.combinations | ||
engines.inc | ||
innodb.combinations | ||
innodb.inc | ||
key_type.combinations | ||
key_type.inc | ||
wait_system_clock.inc |