Skip to content
  • Benni Mack's avatar
    [!!!][TASK] Do not create new version placeholders in workspaces anymore · 74899ecf
    Benni Mack authored
    Creating a new record in a workspace adds two database rows.
    One that is the "placeholder", which - since v10.4 - contains
    the same metadata as the other record:
    * t3ver_wsid = workspaceID
    * t3ver_oid = 0 (simulating behavior of an "online pendant record")
    * t3ver_state = 1
    And the "versionized" record, identified by:
    * t3ver_wsid = workspaceID
    * t3ver_oid = uid of the new placeholder record
    * t3ver_state = -1
    As of TYPO3 v10, the first record is not needed anymore,
    the versioned record can be queried directly, however, since
    the relations (except MM) point to the placeholder record,
    this one is kept.
    As result, only one record is created from now on:
    * t3ver_wsid = workspaceID
    * t3ver_oid = 0 (no online counterpart)
    * t3ver_state = 1
    On reading, the record is queried directly (no overlay needed anymore!)
    with the existing Database Doctrine Restrictions. On publishing, the
    record just gets the state/stage/wsid set and is "live".
    This brings fundamental benefits:
    * No overlays needed when querying
    * Fewer database records (placeholders are not helpful)
    * Conceptual problems with placeholder and shadowed fields are removed
    Resolves: #92791
    Releases: master
    Change-Id: I0288cc63fe72d8442d586f309bd4054ac44e829b
    Tested-by: default avatarTYPO3com <>
    Tested-by: default avatarChristian Kuhn <>
    Tested-by: default avatarOliver Bartsch <>
    Tested-by: default avatarBenni Mack <>
    Reviewed-by: default avatarChristian Kuhn <>
    Reviewed-by: default avatarOliver Bartsch <>
    Reviewed-by: default avatarBenni Mack <>