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 1 year ago. Updated over 1 year ago.

Status:Resolved Start date:2014-03-21
Priority:Should have Due date:
Assigned To:Oliver Hader % Done:

100%

Category:Workspaces Spent time: 6.76 hours
Target version:-
TYPO3 Version:6.2 Complexity:
PHP Version:5.3 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 Core - Bug #57303: DB Error when editing a record without versioning Closed 2014-03-25
related to Core - Bug #57291: RelationHandler->purgeItemArray() should use isTableWorks... Resolved 2014-03-25

Associated revisions

Revision d20ecc74
Added by Oliver Hader over 1 year 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 1 year 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 1 year 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 1 year 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 1 year ago

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

Also available in: Atom PDF