cm1 5.3 SR1 5315_20191030 Patch

Patch ID - 5315_20191105

This is a cumulative/rollup patch for CM1 5.3 SR1.  As with any CM1 Patch that updates a Widget or published JavaScript,  a Full Publish is recommended after applying this patch. 

An updated list of Known Issues can be found at the bottom of this page. 

For details on bug fixes and improvements in previous patch updates, please see the release notes for prior patches. Links to prior patch release notes are provided below:

Issues addressed in this patch:

  

[CMS-3201] - New Person Assets aren't automatically assigned to their organization, must be edit and saved twice

A problem was corrected with the Person, Department, and Organization assets that would cause Approved assets not to show up in Directory pages until the Person, Department, and Organization assets were edited and re-saved at least twice.  After this update, Approving these Asset types will work as expected and not require double approvals.

[CMS-5487] - Performance: Maximum Total List Length property for List widgets

A performance improvement opportunity was identified where list widgets such as the Page Autolist, Blog List, Image List, File List, and Category List have been updated to include a new option to specify the Maximum Total results in the list with a new Layout property.  To take advantage of this new property, review Templates that include list widgets and determine if the design requires all pages or assets that match the list criteria, or if it can be limited.

For example, on a Home page template, you may display a recent news section that is only ever displaying the 5 most recent news articles and a link to the News section of your site.  If this list is hiding Pagination, then to get the best performance, you could update the Layout properties for the Page Auto List widget to set a Maximum Total Results of 5.  After making this change to the Template, Pages that use that template will now only query for the top 5 Pages that match the list criteria.  This can make a big impact on Page Edit/Preview/Publish performance when queries might match hundreds or thousands of Pages / Assets.  Note that this may require additional steps for customers running the MySQL 5.5 or 5.6 database engine on Windows.

Customers using MySQL version 5.6 database server on Windows, may encounter an error on startup after applying the patch related to the new indexes.  If the service fails to start after patching and the error "unable to process schema changes for table" is found in the server's <installDir>\logs\AppServer\server.log file. The following steps can be taken to re-configure the MySQL Server instance to support longer indexes.

        1. Stop the Percussion Service.

        2.  Set following config in the MySQL configuration file my.ini

           innodb_file_format=Barracuda
           innodb_large_prefix=1
           innodb_file_per_table=ON


       3.  Restart the MySQL Server service.
       4.  After restarting the MySQL Server service, connect to the MySQL Server SQL editor with the command line mysql tool or MySQL Workbench. 
            Run each of the ALTER TABLE SQL statements listed below:

           ALTER TABLE CT_PAGE_PAGE_CATEGORIES_SET ROW_FORMAT=DYNAMIC;
           ALTER TABLE CT_PAGE_PAGE_TAGS_SET ROW_FORMAT=DYNAMIC;
           ALTER TABLE CT_PERCCALENDARASSET ROW_FORMAT=DYNAMIC;
           ALTER TABLE CT_PAGE_PAGE_CALENDAR_SET ROW_FORMAT=DYNAMIC;
     
      5. Start the Percussion Service
      After these changes the MySQL Server will support the longer indexes required by these backend tables.  

[CMS-5765] - Unable to save Full Calendar Page Link on Calendar Widget if Page Path is more than 50 characters

A problem was corrected with the Calendar widget where the Full Calendar Page Link would prevent saving the Calendar and would result in an error.  The system will now accept Page links with paths up to 1024 characters long. If you were impacted by this issue, you may want to verify the Full Calendar Page link on Pages containing Calendar assets.

[CMS-5930] - RSS Widget: External RSS feed doesn't load when the url contains ampersand in it

When using the RSS Widget to display and external RSS feed, if the external RSS feed link contained an ampersand (&) or other special character in its url, the external feed would fail to load with an error.  This problem has been corrected by this update and External RSS Feeds with & or other special characters in the URL will display now correctly. No action is required to get this fix. 

[CMS-5944] - Form Widget: Form submission should verify reCaptcha even when form gets posted to external service

The reCaptcha support in the forms widget has been updated to include forms that post to remote services like Salesforce or Pardot. 

[CMS-5959] - Form Widget: Form submission fails with unhandled error when email notification fails

In the event that an error occurred when submitting a form with Email notification, or Form Email fields configured, the form would process correctly but incorrectly display an error page if an email configuration was in error or not configured.  After this patch, the success page will be displayed and the configuration error will be written to the DTS Form service logs.

[CMS-6057] - Form Widget:  When reCaptcha support is is turned on in the DTS, and a Form does not include a reCaptcha control, the post would fail with an unexpected error.

A problem was corrected with the Form Widget when reCaptcha was enabled but a form was submitted without a reCaptcha control on it.  This behavior has been improved in this patch and the correct error page is now displayed and an entry is written to the Forms log indicating the problem form.  Note that when enabling reCaptcha support, all Forms are expected to have a reCaptcha form field.

[CMS-5971] - Revert button in Page Revision History not working in latest Chrome update

A Chrome web browser updated introduced a problem with the Revert button on Page Revision history preventing display of the button. This has been resolved in this update. 

[CMS-6003] - Security:  RSS Feed external URL - potential remote script injection

A security vulnerability was found with the readExternalFeed API. This method has been updated to only accept feeds provided by the RSS Widget and will reject external feeds submitted by other means.  A Full Publish of all pages containing RSS widgets should be run after applying this patch to prevent unauthorized errors on pages that use the RSS Widget.

[CMS-6014] - Javascript: "value not defined" error on Tag / Category list widgets on published website

A JavaScript error was corrected that could prevent Tag or Category lists from rendering correctly after the previous patch update. 

[CMS-6043] - Performance: Add indexes to the CT_PAGE_PAGE_CATEGORIES_SET at patch install / upgrade

A performance improvement was made to the content database that greatly improves queries that were using Tag or Categories.  This update will be applied automatically when the patch is installed.

[CMS-5945] - Publishing: Optimize the S3 publisher to only re-publish assets if their MD5 signature has changed since last publish

An improvement was made to the S3 publisher where Assets will only be re-published if the binary data in the Asset has changed since it was last published.  This change may be enabled by adding the following property to the <InstallDir>/rxconfig/Server/server.properties file:

optimizePublishWithMD5Check=true

In addition when running in a non AWS EC2 server environment, the Region of the S3 bucket must be defined in AppServer/server/rx/deploy/rxapp.ear/rxapp.war/WEB-INF/config/user/spring/publisher-beans.xml file.  By adding the targetRegion property to the S3 publisher definition.  Replace us-east-1 in the example below, with the AWS region that your S3 bucket is deployed in. 

After changing these files, the Percussion service should be stopped and started so that the system picks up the new configuration.

<bean id="sys_amazons3" class="com.percussion.rx.delivery.impl.PSAmazonS3DeliveryHandler">

<!-- targetRegion - when configured sets the primary region where the S3 bucket is deployed. Defaults to region of EC2 instance when running on EC2 or the default AWS region if not on EC2. for S3 publishing.-->

<property name="targetRegion" value="us-east-1"/>

</bean>

[CMS-6067] - Widget Builder Image field incorrectly creating `LINKID` as varchar(1000)

A problem was corrected where the Widget builder is creating the LinkID as a varchar(1000) this creates an artificial limit on the number of Image fields that may be added to the Widget and causes customers to run into premature row size exceeded errors when maintaining Widgets.

Now, the LINKID column is created or updated(after re-deployment of older custom widgets) as INT(10) instead of varchar(1000) for table CT_<WIDGETNAME>

Installation Notes & Common Issues

Memory Requirements

Patch updates include additional caches that can increase the minimum memory requirements from 2GB to 4GB.  Verify that the memory setting in PercussionServer.lax file is set to at least a value of -xmX 4096m when patching to avoid unexpected outages due to out of memory errors.

Database Updates

Beginning with Patch 5315_20181221 the update engine now supports database schema updates as part of the update process. As a result the patch relies on the installer database configuration file to successfully run. In environments where the database setup has changed, or a server / RDBMS migration has occurred, it is possible that the installation database configuration file may be out of date which would cause the patch to fail. To avoid this problem, prior to installing the Patch verify that the contents of the <InstallDir>/rxconfig/Installer/rxrepository.properties file are correct. Updating this file is covered in the Appendix A section of the Migrating Percussion Environments help page.

Common Issues / Workarounds

Updates can occasionally fail to apply for a variety of reasons. To help streamline troubleshooting, we have created a new Common Issues / Workarounds page to collect the steps to correct these issues if you run into them when patching. As always if you run into a problem applying a patch, please contact the Technical Support team at percussion.support@intsof.com, and they will be happy to assist.

Known Issue List

  • CMS-5294 - The Ignore Unmodified Assets publishing feature does not work correctly on systems with 2000 or more Assets. We recommend that this option be unchecked in your publishing configuration to avoid publishing failures.

  • CMS-3614 - After applying the patch end users may need to clear their browser cache in the CM1 user interface in order to see the new changes to the Rich text Editor and plugins.
  • CMS-3257 - Customers using the MySQL database server as the backing database for the DTS, will lose the MySQL Connector jar if it was previously placed into the <InstallDir>/Deployment/Server/perc-lib directory. To correct this problem the MySQL Connector for Java may be installed or symlinked into the <InstallDir>/Deployment/Server/lib directory. Percussion does not include this connector as part of our installation due to license incompatibility issues.
  • CMS-3490 - Customers patching the DTS on Windows Servers will need to reinstall the DTS Windows service by using the "<InstallDir>\Deployment\Server\bin\service.bat remove" and "<InstallDir>\Deployment\Server\bin\service.bat install" commands. Once the service has been successfully re-installed, the Percussion DTS Windows Service will start 

Uninstalling the Patch

This patch includes an uninstall option to support rollback in the event the patch introduces a problem or issue. The patch can be downloaded from the Support portal. For instructions on installing or uninstalling the patch, please review the Readme file provided in the patch folder. Note: To install a patch after uninstalling an existing patch, uninstall the existing patch, start the service back up normal, shut the service down and then install a patch.