← Back to team overview

maria-developers team mailing list archive

Multiple default values for timestamps

 

Hey folks,

On IRC I read somewhere that multiple timestamps cant have multiple
default values using NOW() (error ER_TOO_MUCH_AUTO_TIMESTAMP_COLS). I
tried to find out why this limitation is in place, but was not able to
do so. The only thing I (or rather someone in #mysql and #maria) was
able to find was this, in sql/field.cc (line 4729):
> Actually SQL-99 says that we should allow niladic functions (like NOW())
> as defaults for any field. Current limitations (only NOW() and only
> for one TIMESTAMP field) are because of restricted binary .frm format
> and should go away in the future.

I removed the check that spits out this error and updated the tests.
Now I'll admit I'm not sure how to properly test this, but so far the
entire testsuite passes. It may be that I'm missing any reasons for
this limitation, or that tests may be missing/inaccurate. If you have
any opinions on this, please let me know.

You can find it in:
lp:~freeaqingme/maria/improv-allowMultipleCurTimestampInDefaultOnTable

Regards,

Dolf Schimmel
-- Freeaqingme

p.s. Sorry for the long branchname, couldn't think of something
shorter that was still descriptive :D



Follow ups