[RDD] Ubuntu 16.04 - and at the end the font...
waynemerricks at thevoiceasia.com
Tue May 31 16:26:45 EDT 2016
The problem is not what value but the way it handles NULL values when
the column is set to NOT NULL.
In older versions, NULL or no value set on a date or time or datetime
just becomes 0000-00-00 00:00:00 (or a variation). In 5.7 it errors
saying "this can't be NULL" and just stops.
I've just updated the github issue (121). Thankfully the only place
I've found (after a lot of searching) that breaks are the *_LOG and LOGS
tables (there are some others but the code that deals with them
explicitly sets date/time/datetime values).
The sticking point is I'm not sure how Riv decides what happens with
LOG start/stop dates that are in the past (it obviously was fine with
0000-00-00). More importantly I don't yet know how it purges logs
(again because 0000-00-00 doesn't seem to get purged). Unfortunately,
MySQL v5.7 doesn't let you set a default date as 0000-00-00 (it says
So yeah I'm carefully trying to make changes without breaking stuff.
On 2016-05-31 21:18, Rob Landry wrote:
> On Fri, 27 May 2016, Wayne Merricks wrote:
>> There are quite a few different database issues with Rivendell where
>> older versions of MySQL implied NULL values or converted NULL dates to
>> 0000-00-00 00:00:00 but with MySQL v5.7 you can't do that any more (at
>> best 0000-00-00 gives you an invalid date error).
> So, if you add a record to a table containing a date field without
> specifying a value for that field, what value does MySQL 5.7 assume?
More information about the Rivendell-dev