Cloud CMS Release 3.2.93

The following are the new features, enhancements and fixed issues for Cloud CMS 3.2.93 release.

Upgrade Considerations

Please review the upgrade considerations provided here:
https://gitana.io/documentation/gitana/3.2/guide/guide/docker/upgrades/3-2-93.html

With this upgrade:

  • MongoDB 4.4 or above is required.
  • You will need to perform a cold restart of your API cluster.

New Features

MongoDB Support

  • Support for additional MongoDB settings (applicationName, uri, compressionEnabled, compressionType, authMechanism, authSource).
  • Support for MongoDB standard and SRV connection strings via the uri property.

For more information see:
https://gitana.io/documentation/gitana/3.2/guide/guide/docker/configuration/api-server#mongodb-connection-string
https://gitana.io/documentation/gitana/3.2/guide/guide/docker/configuration/api-server#all-mongodb-configuration-parameters

Enhancements

Authorities / Permissions

  • Updated the explain() logic to capture more information so as to provide better insight and better tools for diagnosing ACL checks and rationale.

Branches

  • Added an API method to transactionally swap branch aliases. This allows for a staged branch to be swapped into an active alias with a single call.

Cache

  • Improved performance for text collection matchers used during the execution of cache predication operations. These now make use of Trie models for faster matching.
  • Adjusted the default sizes of a number of system caches to optimize for memory and performance

Cluster

  • Improvements to the cluster maintenance background worker to more accurately clean up stalled or errant jobs.

Dependences

  • Updated various third-party dependencies to the latest version.
  • Applied updates to address latest CVE security scan.

Health Check

  • The /diag/healthcheck route now returns a mongodb block which computes timing and performance stats for the underlying MongoDB database connection. This includes timing statistics and scores several document operations in a collection (create, update, delete and query).

Job Dispatcher

  • Improved performance of job dispatching that spreads jobs across the cluster with greater equity and higher throughput.
  • Added initial support for service levels and priority assigment of jobs upon allocation to the queue.
  • Improved support for equitable selection of jobs on a per-tenant basis to ensure that any individual tenant doesn’t dominate the queue when dispatching jobs submitted by multiple tenants.

Find

  • Improved performance for Find API calls that utilize field projections.

General

  • Optimized the initialization of the Spring startup context for faster wiring and smaller beans.
  • Reduced the size of some dependencies by reducing the use of all-in parent libraries (which included some dependencies which were not required).

Locks

  • Improvements to the distributed and local lock service to implement faster locks with true atomicity for an edge case.

Policies

  • Faster invocation and improved error messages for cases where definitions are missing from the dictionary view.

Startup

  • Removed the branch cache initializer on startup to greatly reduce startup time.

Transfer Import

  • Optimizations for H2 / Fast DB with faster locks and improvements to chunk handling.

Tree

  • The org.gitana.platform.services.filefolder.tree.maxDepth configuration option can now be used to specify the maximum depth for tree calls universally across the cluster. By default, this is set to -1 which means that no maximum depth is asserted.

User Interface

  • Faster navigation and faster rendering of node picker modals.
  • Update to the latest version of the Alpaca Forms Engine.
  • Added branch/workspace alias property to properties and overview pages.
  • Added an action to swap a branch/workspace alias.

Fixes

Application / App Users

  • Fix so that the application user is always added to the appusers and appusers-<applicationId> teams upon applicaton create.
  • Fix so that applications that are created against an existing stack or proect are auto-assigned to their respective stacks.

Cluster

  • Fix so that cluster changeset invalidation works properly for cases where errant changeset records are written during a shutdown.

Job Dispatcher

  • Fix so that some jobs will not longer get preferrentially bulked on a single cluster member and are instead more properly spread across the cluster.
  • Fix for a potential bug whereby awaiting jobs could fail to select and dispatch if the queue draw mechanism were overwhelmed.

Merge

  • Fix so that the merge of definitions properly work for some cases where the dependency keys were not matching.
  • Fix for certain cases where sorts on merging nodes could fail to sort due to a TimSort comparator error.

Preview

  • Fix so that the preview route now checks attachment streams for availability ahead of committing to the output stream to handle some cases where attachments were not being exported during transfer.

Projects

  • Fixed a bug where project copies could fail when the project was large and the import time excessive such that the cluster maintainer thread would errantly determine the import thread to be in a bad state and clean it up.

SSO

  • Fix so that group mappings process their rule aggregations correctly when sync’ing a user for the first time.

Tags

  • Fix so that tags are now cleaned up and illegal tags removed from the tags array upon create, update or refresh.

Transfer Import

  • Fixed a bug where the underlying H2 DB store would incorrectly calculate a buffer for large imports on ephemeral partitions.

User Interface

  • Fix so that the API Keys page renders properly for both project-bound and platform-bound API keys.
  • Fix so that stream error handling works better by making better use of more recent Node stream events and callbacks.
  • Fix so that application user pages work as intended.
  • Fix so that the pagination skip resets properly to 0 when the filter text is changed on the documents and content instances pages.









Ready to Get Started?

Unlock your data with smart content services and real-time deployment


Try Gitana for free Ask for a demo