Task #57169

Epic #55070: Workpackages

Epic #54851: WP: Workspaces IRRE & MM bugfixes

Story #54853: As a user I want to correctly create, modify, preview and publish IRRE & MM related workspace changes

Invalid relations of MM records in workspaces

Added by Oliver Hader over 5 years ago. Updated about 1 year ago.

Status:
Closed
Priority:
Should have
Assignee:
Category:
Workspaces
Target version:
-
Start date:
2014-03-21
Due date:
% Done:

100%

TYPO3 Version:
6.2
PHP Version:
5.3
Tags:
Complexity:
Sprint Focus:

Description

The basic problem with MM (ManyToMany) relations in workspaces is, that the intermediate table (MM table) does not have any information about actually being a reference in a particular workspace - there is no "t3ver_wsid" field. Thus, the meaning of a relation needs to be determined from the entities on both sides of the relation. The following is possible:
  • both sides of the relation are live -> valid in live only
  • exactly one side of the relation is versioned -> valid in a workspace only
  • both sides of the relation are versioned -> valid in a workspace only

The difficulties now start with versioning one side first and after some time the other side - thus the relation with exactly one version and one live entity needs to be turned into an entry pointing to both versions.


Related issues

Related to TYPO3 Core - Bug #57303: DB Error when editing a record without versioning Closed 2014-03-25
Related to TYPO3 Core - Bug #57291: RelationHandler->purgeItemArray() should use isTableWorkspaceEnabled check Closed 2014-03-25

Associated revisions

Revision d20ecc74 (diff)
Added by Oliver Hader over 5 years ago

[BUGFIX] Invalid relations of MM records in workspaces

The basic problem with MM (ManyToMany) relations in workspaces is
that the intermediate table (MM table) does not have any
information about actually being a reference in a particular
workspace - there is no "t3ver_wsid" field. Thus, the meaning of
a relation needs to be determined from the entities on both sides
of the relation. The following is possible:

  • both sides are live -> valid in live only
  • exactly one side is versioned -> valid in a workspace only
  • both sides are versioned -> valid in a workspace only

The difficulties now start with versioning one side first and
after some time the other side - thus the relation with exactly
one version and one live entity needs to be turned into an entry
pointing to both versions.

Resolves: #57169
Releases: 6.2
Change-Id: Idb043d520c30f15e85d54a016e52690f5f05cedc
Reviewed-on: https://review.typo3.org/28624
Reviewed-by: Oliver Hader
Tested-by: Oliver Hader

History

#1 Updated by Gerrit Code Review over 5 years ago

  • Status changed from New 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 https://review.typo3.org/28624

#2 Updated by Gerrit Code Review over 5 years ago

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

#3 Updated by Gerrit Code Review over 5 years ago

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

#4 Updated by Oliver Hader over 5 years ago

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

#5 Updated by Benni Mack about 1 year ago

  • Status changed from Resolved to Closed

Also available in: Atom PDF