CopyStorm/Restore 8.42.2

Release Date: 18-Dec-2018

This is a  minor feature and bug fix release. As always, existing CopyStorm/Restore configuration files are backwards compatible.

Patch Levels

18-Dec-18 Original Release
20-Dec-18 Major optimization for restoring polymorphic tables (Tasks, Notes, Attachments, etc.).
24-Dec-18 The upcoming Salesforce metadata API bled a new keyword into older API versions (displayLocationInDecimal). Remove it dynamically to prevent SObject metadata parsers from choking.

Improve Metadata Tab Performance

A customer with >80,000 metadata objects helped us discover that the metadata selector does not scale well to large numbers. The selector has been replaced with a new implementation that initializes in under 2 seconds for even 100,000 metadata objects and supports group selection/deselection with a single click. If you ever have the need for a ComboBox with checkboxes that supports massive numbers of elements give us a call. We found nothing on the the web that has this level of capability.

Support Special Case of AccountContactRelation

CopyStorm/Restore now recognizes that AccountContactRelation records are created as a side effect of create a Contact record and will avoid trying to re-create relation records created as a side-effect. The symptom on previous CopyStorm/Restore releases was errors from Salesforce about attempting to create duplicate records.

Boost Performance for OpportunityContactRole

OpportunityContactRole is an odd table in that increasing the number of concurrent Salesforce writers actually reduces the rate at which records are restored. For example, in our labs a single thread restore of 2,259 records took 15 seconds which five threads took 6m24s.  The reason probably has to do with lock contention problems on the Salesforce end. To fix the problem CopyStorm/Restore addition addition table specific parameters internally to allow for table specific #Salesforce Writers default when one is not specified. Of course, a user can always override the most excellent defaults built into CopyStorm/Restore.

Add Support for New Metadata Types

Support for the following metadata types was added:

  • Flow
  • Workflow
  • ApprovalProcess

Increase Use of Caching for Salesforce Object Descriptors.

The CopyStorm/Storm GUI is a lot snappier because of improvements in how we cache Salesforce SObject descriptors. In addition, when a call to grab SObject descriptors is made progress will be displayed if the operation takes longer than a second.

Fix a Trigger and Validation Rule Selection Bug

The Select Active button now only selects items that are both active and visible. Previously the code would also select non-visible active items.

Improve Auto-Recovery for New Salesforce Conditions

The restore process automatically recovers and retries record restores for a variety of conditions. Retries are automatic and not reported to a user when they succeed. This release adds a few more error conditions from Salesforce where record restores will be automatically retried.

Add New Command Line Switches

The following command line switches have been added for overriding parameters in a CopyStorm/Medic configuration file.

  • -proxyHost
  • -proxyPort
  • -proxyUser
  • -proxyUser
  • -dbSchema