loading table of contents...

Release Notes / Version 11.2110

Table Of Contents

CoreMedia Core

Fixed Bug that Required Exact User Names for Login

Fixed the bug that users from a specially customized user provider could not log in with a different identifier than the user name. For releases before 2007.1, custom user providers could return users for other login identifiers, but more recent releases prevented this. The possibility has been restored now, so that these custom user providers continue to work.


Fixed NullPointerException in FeedableImpl

When the type of a collection set as feedable element cannot be determined, the type now correctly defaults to String.


Enhanced Robustness in Translation Workflows (Pre-Processing Stage)

When translation workflows create contents in derived target sites, they may stumble across issues while doing so. Previously, this may have left created targets checked out by the artificial user translation-workflow-robot .

The processing in this pre-processing stage of the translation (and synchronization) workflow has been enhanced, so that at best effort, contents should not be left checked out by the artificial user.

Corresponding exceptions are still forwarded and will escalate the translation workflow. They should not be ignored, but investigated, as the intermediate content state may now be corrupted.


The License Check Now Considers IPs of all Network Interfaces

For IP based licenses all network interfaces are considered now and the check passes if there is at least one IP that can be successfully validated against the IP range configured in the license.


cm cleanversions: Respect Versions Being in Translation

Prior to this fix, cm cleanversions may have removed versions of a master content which are referenced from an active translation or synchronization workflow. This may cause those workflows to escalate.

Now, cm cleanversions respects these so-called Merge Versions , which are those versions of a master content, which are just about to be translated into some derived content .

An update is strongly recommended, if you regularly use cm cleanversions with rather strict limits regarding -keep-days for example.


Recommended Change for CleanInTranslation

The scheduled task CleanInTranslation (package: com.coremedia.translate.workflow ) got extended by a constructor having an additional parameter: confidenceThreshold .

confidenceThreshold defaults to 0 (zero), which simulates the old behavior using the former (still existing) constructor.

To change the threshold, you have to update your BlueprintWorkflowServerAutoConfiguration , like for example to recommended threshold of 1 (one):

CleanInTranslation cleanInTranslation(List<TranslationWorkflowDerivedContentsStrategy> strategies,
                                      ContentRepository contentRepository,
                                      SitesService sitesService) {
  // 1 is the recommended threshold
  return new CleanInTranslation(strategies, contentRepository, sitesService, 1);

Why should I consider changing the threshold (and what is it for)?

Increasing the threshold decreases the likeliness of a false-negative "in-translation" state. Editors would see this as, for example, not being warned, when a given content is already in translation.

Along with cm cleanversions such false-negative state may even cause translation or synchronization workflows to escalate.

With 2201.1 a configuration option will be introduced for CleanInTranslation , which will then default to 1.

More technically, the threshold defines how often to run additional checks, if a master version is meanwhile referenced by a translation or synchronization workflow prior to consider it as stalled and remove the corresponding marker (known as Merge Version ).

The lower you choose your scheduling interval for CleanInTranslation within BlueprintWorkflowServerAutoConfiguration (and thus, increasing the execution frequency), the higher you may want to choose the threshold. In general, 1 (one) should be sufficient. More than 10 is discouraged, as it will take longer until possibly false-positive "in translation" warnings appear for editors.


Start Translation Workflow Validation: May Report "No content to translate."

When trying to start a translation workflow in CoreMedia Studio, it may report No content to translate. although contents have been selected.

This may happen, when you added contents from different sites or when you added a content which is not within a site.

This behavior is fixed now, and you will instead see the expected violation issues, such as:

  • There is a content item that does not belong to a site.

  • There are content items that belong to different sites.


Performance Tuning: CleanInTranslation

The scheduled workflow process CleanInTranslation has been optimized for performance.

As an additional adjustment, it is strongly recommended adding the following adjustments to your system:

Database Index: For the database of Content Management Server, add the following index:

create index nmergeversionsIndex on Resources (nMergeVersions_);

Using exactly this index definition ensures, that you will not collide with later versions of CMCC, which ship automatically having this index.

Adjust Scheduling: In BlueprintWorkflowServerAutoConfiguration reduce the frequency ( fixedDelay ) of CleanInTranslation . The default delay is 5 seconds. We recommend a delay of at least 5 minutes, instead. In later versions, we will default to 15 minutes even.

Scheduler to adjust:

@Scheduled(initialDelay = 10_000, fixedDelay = 5_000)
void doCleanInTranslation() {;

For example, change it to:

    initialDelay = 10,
    fixedDelay = 900,
    timeUnit = TimeUnit.SECONDS)
void doCleanInTranslation() {;


Improve Robustness and Error Messages for Translation Workflow Rollback

Translation Workflows are now more robust against errors during Rollback and generate more helpful log messages.


Limit Content Server Threads Checking Database Connections

Fixed the bug that the number of threads used by the Content Server for checking database connections wasn't limited. This could have led to instabilities in cases, where many calls to the database are blocked due to some problems with the database. By default, the number of such threads is now limited to twice the maximum number of database connections. The limit can be changed with configuration property sql.pool.check-connection-max-threads as described in the Deployment Manual in section "CoreMedia Properties Overview | Content Server Properties | Properties for the Connection to the Database".


Fixed Parsing of Workflow Timer Element

Timer elements in workflow definitions with relative values but without explicitly setting the property relative are now recognized correctly as 'relative' even for values > 999.


Search Results

Table Of Contents