Bug #80361 --explicit-defaults-for-timestamp is not a dynamic variable
Submitted: 14 Feb 2016 2:22 Modified: 29 Feb 2016 9:48
Reporter: Justin Swanhart Email Updates:
Status: Not a Bug Impact on me:
None 
Category:MySQL Server Severity:S1 (Critical)
Version:5.7 OS:Any
Assigned to: CPU Architecture:Any

[14 Feb 2016 2:22] Justin Swanhart
Description:
This is related to bug #80360

It is not possible to fix scripts or statements from old scripts that raise 'invalid default value' for timestamp columns that are generated by SQL statements like CREATE TABLE .. SELECT.

It is necessary to start the server with --explicit-defaults-for-timestamp=NO in order to run these legacy scripts, or even new scripts that use CREATE .. AS.

How to repeat:
set explicit_defaults_for_timestamp=NO; in a stored routine.  An error is raised.

Suggested fix:
Make explicit_defaults_for_timestamp a dynamic variable
[14 Feb 2016 20:34] Miguel Solorzano
no dynamic

Attachment: no_dynamic.png (image/png, text), 143.32 KiB.

[14 Feb 2016 20:36] Miguel Solorzano
Thank you for the bug report. Yes that variable isn't dynamic, please see:

http://dev.mysql.com/doc/refman/5.7/en/server-system-variables.html
[28 Feb 2016 20:47] Justin Swanhart
THE POINT IS IT SHOULD BE!
[29 Feb 2016 9:48] Miguel Solorzano
It's by design so you can file a feature request not a bug.