[MDEV-438] Microseconds: Precision is ignored in CURRENT_TIMESTAMP(N) when it is given as a default column value Created: 2012-08-07  Updated: 2012-12-17  Resolved: 2012-12-17

Status: Closed
Project: MariaDB Server
Component/s: None
Affects Version/s: 10.0.0, 5.5.25, 5.3.7
Fix Version/s: 10.0.1, 5.5.29, 5.3.10

Type: Bug Priority: Minor
Reporter: Elena Stepanova Assignee: Sergei Golubchik
Resolution: Fixed Votes: 0
Labels: None


 Description   

CREATE TABLE t (a TIMESTAMP(3) NOT NULL DEFAULT CURRENT_TIMESTAMP(0));
# Query OK, 0 rows affected (0.20 sec)
 
INSERT INTO t VALUES (NULL);
# Query OK, 1 row affected (0.04 sec)
 
SELECT * FROM t;
# +-------------------------+
# | a                       |
# +-------------------------+
# | 2012-08-07 04:18:48.353 |
# +-------------------------+
# 1 row in set (0.00 sec)

Inserting CURRENT_TIMESTAMP(0) explicitly works as expected:

INSERT INTO t VALUES (CURRENT_TIMESTAMP(0));
# Query OK, 1 row affected (0.04 sec)
 
SELECT * FROM t;
# +-------------------------+
# | a                       |
# +-------------------------+
# | 2012-08-07 04:18:48.353 |
# | 2012-08-07 04:23:51.000 |
# +-------------------------+
# 2 rows in set (0.01 sec)



 Comments   
Comment by Sergei Golubchik [ 2012-10-10 ]

in MySQL it's fixed differently. one might specify a precision, but the precision must match the column's precision. Let's do the same, for compatibility reasons.

Comment by Sergei Golubchik [ 2012-12-17 ]

pushed a 10.0 specific fix into 10.0-base

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