Bug #69247

Epic #68397: Make TYPO3 work with MySQL strict mode

Inserting records fails when the model has a incompatible default value

Added by Morton Jonuschat about 4 years ago. Updated about 2 years ago.

Status:
Closed
Priority:
Must have
Category:
Extbase
Target version:
Start date:
2015-08-21
Due date:
% Done:

100%

TYPO3 Version:
7
PHP Version:
5.6
Tags:
Complexity:
Is Regression:
No
Sprint Focus:

Description

Inserting a new record through an extbase repository fails if the model and the database schema have incompatible defaults.

Example:

If the model has a property `title` without any default value assigned (so its NULL for PHP) and the database schema has the column defined as `title varchar(255) DEFAULT '' NOT NULL` extbase tries to insert an explicit NULL into the database.

This is due to the new default value determination insertObject().


Related issues

Related to TYPO3 Core - Bug #69084: Adding Objects with NOT NULL columns is broken Closed 2015-08-15

Associated revisions

Revision 0e37d598 (diff)
Added by Morton Jonuschat about 4 years ago

[FOLLOWUP][BUGFIX] Extbase: Use fully populated records in insertObject()

As it is common practice to define object properties in Extbase models
without default values (resulting in a NULL value) while defining the
database columns as `DEFAULT '' NOT NULL` these columns need to be
skipped when preparing a new record for insertion into the database.
This allows the database to use the configured defaults for columns
not included in the insert statement.

To properly support strict databases in an Extbase extension/model it is
required to configure identical/compatible default values in the
database schema and the model. This problem cannot be solved completely
programmatically.

Resolves: #69247
Related: #69084
Releases: master
Change-Id: I9de6a68a9eac25e171e3bfde6314366dad1ae346
Reviewed-on: http://review.typo3.org/42821
Reviewed-by: Markus Klein <>
Reviewed-by: Wouter Wolters <>
Tested-by: Markus Klein <>
Reviewed-by: Anja Leichsenring <>
Tested-by: Anja Leichsenring <>

History

#1 Updated by Morton Jonuschat about 4 years ago

  • Status changed from New to In Progress

#2 Updated by Gerrit Code Review about 4 years ago

  • Status changed from In Progress to Under Review

Patch set 1 for branch master of project Packages/TYPO3.CMS has been pushed to the review server.
It is available at http://review.typo3.org/42821

#3 Updated by Gerrit Code Review about 4 years ago

Patch set 2 for branch master of project Packages/TYPO3.CMS has been pushed to the review server.
It is available at http://review.typo3.org/42821

#4 Updated by Morton Jonuschat about 4 years ago

  • Status changed from Under Review to Resolved
  • % Done changed from 0 to 100

#5 Updated by Riccardo De Contardi about 2 years ago

  • Status changed from Resolved to Closed

Also available in: Atom PDF