Release Notes 3.2.62
Publication Date: December 16th 2020
The following are the new features, enhancements and fixed issues for Cloud CMS 3.2.62 release.
Update Recommendations (On-Premise Only)
With version 3.2.61 and beyond, we have disabled the deprecated Elastic Search Transport Client and have switched to using our Condor HTTP client. As such, connectivity between the `api` and `elasticsearch` services are no longer using port `9300` by default. They are now using port `9200` by default.
Please check your configuration to make sure that the API can connect to Elastic Search's HTTP Endpoint.
For information on configuring Elastic Search for Cloud CMS, please see: https://www.cloudcms.com/documentation/docker/configuration/api-server.html#using-the-condor-http-client
For improved performance, we recommend you rebuild your cluster indexes. To do so, we recommend using the `reindex-datastore` command via the Cloud CMS Command Line Client (http://www.cloudcms.com/documentation/cli.html#reindex-datastore).
You can execute it like this:
``` cloudcms admin reindex-datastore --datastoreTypeId cluster --datastoreId default --children --username <username> --password <password> ```
Where the `username` and `password` are the credentials for your administrator account.
New Features
Command Line Interface
- The CLI now supports transfer commands to enable developers or administrators to script the import and export of projects, repositories, branches, nodes and more.
- Now supports Node 15.x and beyond.
Supported Stacks
- Added support for MongoDB 4.0.21
- Added support for Elastic Search 6.8 and 7.9
- Added support for AWS ElasticSearch 6.8 and 7.9
Enhancements
Headers
- Added a `x-cloudcms-api-execution-branch-lock-wait-time-ms` response header that records the amount of time (in milliseconds) that the request waited for a branch-scope write lock (if applicable). This value is useful when measuring net throughput of concurrent write API calls.
GraphQL
- Improved performance of GraphQL collection queries by optimizing traversal of relator properties.
Path indexing
- Newly created repositories now have URI encoding enabled by default so that any branch-level path indexes with use URI encoding right away.
Publishing
- When running a resync of published nodes, a background job is now launched allowing long running publications to execute and be polled for completion.
Bug Fixes
AWS CloudWatch
- Fix so that the AWS CloudWatch Log4j2 Appender submits entries in the proper atomic order when running in a cluster.
Forms
- Fix so that circular references are detected more quickly and more accurately for certain conditions.
- Fix so that `$ref` properties are no longer traversed for cases where they are empty or have null data.
- Fix so that form options optimization allows for soft failures for cases where form references are missing.
GraphQL
- Fix so that a recursive condition is avoided which could cause the retrieval of associated nodes to time out.
Merge
- Fix so that merges work properly in cases where one or more node's changeset histories may offer circularly recursive lineages back to the ancestral node.
Publishing
- Fix so that imported content items with relator properties correctly refreshes in the completion phase of the import.
Relator Properties
- Fix so that updates to relator properties of type `array` will make the correct set of delta adjustments so as not to leave stray or excess associations in the graph.
Rules
- Fix so that property conditions properly check for nested path keys (as opposed to just top level property names)
- Fix so that compound conditions render and are editable within the UI as expected.
Search
- Fix so that bulk indexing exceptions are parsed with greater leniency so as to inform parent job of error messages.
Transfer
- Fix so that imported content will properly have its attachments populated for specific cases where relator properties are refreshed after import.
- Fix so that an export of node list items will additionally include any `a:has-item` associations as optional.
See Gitana with your own content
Talk with a solutions engineer about your content model, governance requirements and deployment — hosted in our cloud or running in yours.