[MAGNOLIA-6427] WorkspaceMapping not correctly supported Created: 27/Oct/15  Updated: 19/May/22  Resolved: 19/May/22

Status: Closed
Project: Magnolia
Component/s: core
Affects Version/s: 5.3.11
Fix Version/s: None

Type: Bug Priority: Neutral
Reporter: Richard Unger Assignee: Unassigned
Resolution: Won't Do Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified
Environment:

LFRZ (but this is a general problem)


Issue Links:
causality
caused by MAGNOLIA-6093 Create mgnlSystem and mgnlVersion wor... Closed
Template:
Acceptance criteria:
Empty
Task DoD:
[ ]* Doc/release notes changes? Comment present?
[ ]* Downstream builds green?
[ ]* Solution information and context easily available?
[ ]* Tests
[ ]* FixVersion filled and not yet released
[ ]  Architecture Decision Record (ADR)
Bug DoR:
[ ]* Steps to reproduce, expected, and actual results filled
[ ]* Affected version filled
Date of First Response:

 Description   

Magnolia's repository configuration (repositories.xml) and workspace mapping logic permit mapping "logical" workspace names to "real" workspace names.

See: info.magnolia.repository.definition.WorkspaceMappingDefinition

Example XML:

    <RepositoryMapping>
        <Map name="website" repositoryName="magnolia" workspaceName="website" />
        ...
    </RepositoryMapping>

However, various other parts of magnolia don't respect this mapping, leading to incorrect behaviour if the logical workspace name and physical workspace name is not the same.

For example, see:
info.magnolia.ui.vaadin.integration.jcr.JcrItemUtil.getItemId(Item)
--> here ItemIds are created using the "real" workspace name, it should however be the "logical" workspace name

or see:
info.magnolia.ui.framework.action.AbstractCommandAction.buildParams(Item)
--> here the "real" workspace name gets put in the command params, rather than the logical name.

Basically, AFAICS this will cause problems whenever the logical and physical names don't match exactly.
And it will cause even more headaches when the logical workspace name is different from the physical workspace name, and the physical name is present also as a logical name...
Eg; when including the workspace "website" from an old repository, using the logical name "old_website".

A subtle error, to be sure, but to be consistent magnolia either needs to fix this, or to remove the ability to set logical workspace names in repositories.xml.

I think maybe the way to solve this is by adding this logic to the Node/Session/Workspace wrappers...



 Comments   
Comment by Roman Kovařík [ 19/May/22 ]

Hello,

This ticket is now marked as closed due to one of the following reasons:

  • A long period of inactivity
  • Uses an old or Beta version of an application, module, or framework that we no longer support
  • The issue is no longer reproducible or has been fixed in later versions

If you are still facing a problem or consider this issue still relevant, please feel free to re-open the ticket and we will reach out to you.

Thank you,
The Magnolia Team

Generated at Mon Feb 12 04:14:25 CET 2024 using Jira 9.4.2#940002-sha1:46d1a51de284217efdcb32434eab47a99af2938b.