-
Abhishek Ranjan authored
Change default value of explicit_defaults_for_timestamp to ON. Add deprecation warning when the value of explicit_defaults_for_timestamp is changed from TRUE to FALSE. In MySQL 5.6 explicit_defaults_for_timestamp option was introduced (and deprecated) in WL#6292 with the intention of suggesting users to switch to new behavior. In most cases though, users ignore the warnings from explicit_defaults_for_timestamp. This worklog will change the default value of explicit_defaults_for_timestamp to TRUE, with users able to revert back to the FALSE behavior in mysql-8.0. Fix test cases to execute with default behavior by: i> Record new default value of explicit_defaults_for_timestamp option. ii> Record the result difference by not promotion of timestamp columns by default. iii> Timestamp columns are now nullable by default and no auto promotion happens. Record test output. iv> Test tried to insert ZERO date in NO_ZERO_DATE mode. This is not allowed for timestamp column by default. Adjusted test case. v> Fix sql mode to test the intended behavior of the test and record result file. vi> There are error scenario to check that CREATE TABLE statement fails with 2 timestamp column with NO_ZERO_DATE sql. This is deprecated behavior. Removed the test scenario. vii> Record the extra warning when trying to insert NULL to TIMESTAMP NOT NULL column. Value inserted in the table changed from current_timestamp value to '0000-00-00 00:00:00'.
Abhishek Ranjan authoredChange default value of explicit_defaults_for_timestamp to ON. Add deprecation warning when the value of explicit_defaults_for_timestamp is changed from TRUE to FALSE. In MySQL 5.6 explicit_defaults_for_timestamp option was introduced (and deprecated) in WL#6292 with the intention of suggesting users to switch to new behavior. In most cases though, users ignore the warnings from explicit_defaults_for_timestamp. This worklog will change the default value of explicit_defaults_for_timestamp to TRUE, with users able to revert back to the FALSE behavior in mysql-8.0. Fix test cases to execute with default behavior by: i> Record new default value of explicit_defaults_for_timestamp option. ii> Record the result difference by not promotion of timestamp columns by default. iii> Timestamp columns are now nullable by default and no auto promotion happens. Record test output. iv> Test tried to insert ZERO date in NO_ZERO_DATE mode. This is not allowed for timestamp column by default. Adjusted test case. v> Fix sql mode to test the intended behavior of the test and record result file. vi> There are error scenario to check that CREATE TABLE statement fails with 2 timestamp column with NO_ZERO_DATE sql. This is deprecated behavior. Removed the test scenario. vii> Record the extra warning when trying to insert NULL to TIMESTAMP NOT NULL column. Value inserted in the table changed from current_timestamp value to '0000-00-00 00:00:00'.
Loading