Joomla 4 and Zero Dates

Joomla 4 has enabled strict mode in MySQL and this means dropping support for zero dates. A zero date is a date or datetime string representing zero in the database. We are currently working through adjusting all core CB and plugin databases to support this as well.

Specifically a zero date is 0000-00-00 and a zero datetime is 0000-00-00 00:00:00. This usage has been deprecated since MySQL 5.7 and Joomla 4 has made the decision to stop supporting this (note this is the right decision and I appreciate Joomla doing this). This means instead of zero date they will now be NULL.

The usage of NULL dates will impact any site directly querying the database. So for example a userlist with an Advanced filter adding a custom filter to the userlist query against a date or datetime field. Those will, once we release zero date fixes, need to be changed to handle NULL.

We are currently in the process of automating the migration of all core CB tables and plugin tables that are using zero dates or datetimes to NULL usage. So this is only an advanced notice to any users who are directly querying any of CB or CBs plugin database tables and filtering on dates.

We expect this to be done and ready before Joomla 4 stable release with several plugins already fixed and released.

Facebook Twitter LinkedIn