close

Filter

loading table of contents...

Release Notes / Version 10.2107

Table Of Contents

Fixed: Contents May Have Been Removed from Translation Workflow for No Obvious Reason

Context: The content property ignoreUpdates , which is used for synchronized sites, to block receiving updates from master, accidentally made it to nested derived sites, which, as one possible effect prevented contents in derived sites from receiving any updates via translation. This is true for any workflows using FilteredDerivedContentsAction .

Main Change:

Translation Workflow: Introduced option ignoreContentStateIgnoreUpdates to translation.xml , configured for FilterDerivedContentsAction and AutoMergeTranslationAction . If set, and set to true, it will trigger ignoring a state ignoreUpdates which may have accidentally propagated from synchronized parent sites.

Additional Changes:

ContentObjectSiteAspect (cap-multisite): Introduced new method isIgnoreUpdates() . This should be used in favor of getIgnoreUpdates() . getIgnoreUpdates() will be deprecated as of 2101.1.

Ignore Updates from Master (Property: ignoreUpdates ) not propagated anymore to derived sites: Along with this update, the property ignoreUpdates is not propagated anymore to derived sites. Thus, if you set to ignore updates from master for a synchronized site S, a site S' derived from Site S will not automatically ignore updates from S, as it did before.

This straightens the behavior, that auto-merge strategies already ignored this property before, thus changing the property value in Site S and applying it to already existing Site S' never made it to S'.

Upgrade Notes:

  • If you are not using synchronized sites, no upgrade steps are required.

  • If you don't use the ignoreUpdates flag for synchronized contents, no upgrade steps are required.

  • If you have a setup like a synchronized master site with derived sites, which shall receive translations, it is strongly recommended, updating your translation workflow definitions (thus, not synchronization workflow) adding ignoreContentStateIgnoreUpdates as follows:

<AutomatedTask name="GetDerivedContents" ...>
  <!-- ... -->
  <Action
    class="com.coremedia.translate.workflow.FilterDerivedContentsAction"
    masterContentObjectsVariable="masterContentObjects"
    derivedContentsVariable="derivedContents"
    ignoreContentStateIgnoreUpdates="true"
  />
  <!-- ... -->
</AutomatedTask>

<!--
  You may need to update several occurrences of
  AutoMergeTranslationAction in your workflow.
-->
<UserTask name="Translate..." ...>
  <!-- ... -->
  <EntryAction
    class="com.coremedia.translate.workflow.AutoMergeTranslationAction"
    derivedContentsVariable="derivedContents"
    ...
    ignoreContentStateIgnoreUpdates="true"
      />
  <!-- ... -->
</UserTask>

If not applying these upgrade steps, you may experience contents in synchronized sites, which you will never be able to translate to any nested derived sites. They will be removed as target documents without notice.

Alternative Upgrade Notes:

As alternative to updating the translation workflow definition, you may set ignoreUpdates to false for any contents especially in sites which shall receive translations. A UAPI client is required, as the default Blueprint UI does not provide access to this property in translation sites, yet.

Additional Upgrade Notes for Nested Synchronized Sites

If you happen to have synchronized sites, which are (direct or indirect) childs of a synchronized master site, you may want to check if the state of any ignoreUpdates flags, which are set to values different to 0 (thus: interpreted as boolean true ). You may experience contents, where this flag accidentally ignores updates from master.

(CMS-18511)

Search Results

Table Of Contents