What's new / Release notes |
This is a major release including both significant new functionality and performance improvements.
Some aspects of settings are specific to a particular environment, and therefore shouldn’t be overwritten during the deployment of configuration changes, even when the rest of the setting in question has changed. Examples are environment-specific connection settings and credentials, and server names.
The ability to preserve such information is now supported by Xoom. The nodes that are affected need to be specified in the Xoom knowledge base, and those nodes will be marked with xpi:keep-target attribute that will specify whether the target node’s value should be kept or not by giving them the values true or false respectively. This allows users to easily review and change the behaviour on deployment (i.e. whether to keep the target environment's value, or overwrite it) as desired for a particular node using simple search and replace.
In configuration, there are settings that contain sensitive information, such as connection strings to external databases or just passwords used to connect to external resources. In Service Optimization configuration, these settings are often stored in clear text, which means that they are clearly readable to anyone with suitable access.
In the past, Xoom stored those settings in their clear text form (essentially keeping the information retrieved from Service Optimization in the same form), which meant that anyone with access to a XoomXML file containing those settings could see their content. It also meant that these settings would be persistently stored in cases where there is a configuration library or in configuration versioning, which would often contravene the security policy. In order to address these situations, Xoom offered the Remove Sensitive Information report that, as its name suggests, removed the sensitive information entirely from configuration. This has the unfortunate side-effect of making it necessary to re-enter that information on the target system after deploying XoomXML files that have been cleaned in this way.
Parameter | Encrypts | Takes values | Default | Xoom release |
---|---|---|---|---|
Product.W6.Objects.EncryptAuditConnectionString | Connection strings inside Audit Definition’s connection settings. | true/false | true | 3.7 |
Product.W6.Objects.EncryptClickForecastDataSourcesConnectionString | Connection strings inside ClickForecast General Settings data sources definitions. | true/false | true | 3.7 |
Product.W6.Objects.EncryptGisProviderSettingsPassword | Passwords inside GIS Provider List Settings provider configuration sets’ country parameters. | true/false | true | 3.7 |
Product.W6.Objects.EncryptMapperDestinationPassword | Passwords inside Integration Manager’s destination credentials | true/false | true | 3.7 |
XSL transformations that result in an HTML or text file are now supported, as long as the XSLT in question correctly declares the result type. Because Xoom Processor works with sequences of XML documents, the results of these transformations can only be saved to a file or printed to the console, and can’t take part in further processing. However, the change enables HTML and text reports to be created automatically and en masse using Xoom Processor scripts.
Also in this release, Xoom Processor (xp.exe) has become a stand-alone tool that doesn’t need any other Xoom files to be present in order to run. This means that xp.exe can now be copied to a folder where it’s needed, and used from there without the need for installation, as long as the Xoom servers that it’s connecting to are properly installed and licensed.
Previous versions of Xoom always removed Revision and Stamp Properties from the XoomXML representation of those Service Optimization Objects that have them. From 3.7 the behaviour has been changed so that they are kept by default. Restore the behaviour by setting the following parameter to the value true. The major use case is in configuration versioning, where it would usually be desirable to see who made the last change.
Parameter | Description | Takes values | Default | Xoom release |
---|---|---|---|---|
Product.W6.Objects.RemoveRevisionAndStamp | On retrieval, removes Revision and Stamp from Objects that possess these Properties. | true/false | false | 3.7 |
Bad References report report. The report lists all items containing bad references. For each bad reference, it lists all paths within the item where the same bad reference is present. The report is very useful for identifying and correcting bad references in the configuration. Bad references often result in subtle, hard to identify problems in the behaviour of Service Optimization.
Extract Components report report. The report lists all ProgIDs (whether COM or .NET) and assembly references that appear in configuration, and from where in configuration they are referenced. Its main use is in the maintenance and upgrade scenarios, where there is a need to know which code components (in particular customisations) are actually in use.
Scheme Customisations report. The report lists all Scheme customisations in the system (based on the value of IsProduct Property). For custom Collections it lists their type and the Property they have, and for product Collections it lists all custom Property and how they are defined.
Unreferenced Items report report. The report lists all items in configuration that are not referenced from anywhere, together with their dependencies, in order to make it easier to understand their context. This report is particularly useful in the context of configuration clean-up.
Active Schedule Agents report report. When the Decomposition covers all territories the report now explicitly says so. Previously information about the territories was omitted in such situations.
Decomposition by Geography report. The report now has separate sections for Regions and Districts. In both cases, it distinguishes the items that are included in various Decompositions through Region (indicated with letter R), District (D) or by virtue of all territories being included (*).
Groups by Geography. The report now has separate sections for Regions and Districts, very similar to the Decomposition by Geography report above. In addition, it no longer lists Groups without any geographical references, which is most or all Groups in many cases.
References Report. The report now contains hyper-links from any dependents or dependencies to the target item. This makes it incredibly easy to explore configuration in both directions of dependency to understand which items are related.
AutoCapture tool has been replaced with two new tools: Diagnostic Snapshot and Xoom Corpus Generator. Like AutoCapture before them, both are command line tools.
Xoom Corpus Generator is a very similar tool, but is intended to be used without an existing Xoom installation. It is most relevant for capturing corpora for potential Xoom customers without their needing to install Xoom first.
All Xoom client tools now alert the user when the license is no longer compliant.
The installer has been rewritten from scratch in order to support future extensions for additional products, both in terms of what Xoom manages and in terms of add-on functionality for Service Optimization. In practice, the most important difference is that in the vast majority of cases the Service Optimization server no longer needs to be shut down in order to upgrade Xoom, making timely upgrades much more palatable in production systems.
When multiple key-values are used to determine the referenced item during retrieval, Xoom has hitherto used the required key-values to determine the targeted items, ignoring the optional key-values. If the targeted item was found successfully, then the optional key-values were recreated on the target environment so as to be consistent with the targeted item, regardless of their values in the source environment.
This is almost always exactly the desired behaviour. However, there are cases where optional key-values in the source environment are inconsistent with required key-values due to misconfiguration, and the desired targeted item is the one that is actually referenced by the optional key-values (it all depends on how the setting was originally created and transported into the source environment). In those cases, automatic correction of those key values during transportation is not the desired behaviour. In response to this, we made the decision to err on the side of caution from 3.7 onwards.
Parameter | Description | Takes values | Default | Xoom release |
---|---|---|---|---|
Xoom.DataProcessing.ShouldCorrectMismatchedReferences | Determines whether Xoom should correct mismatched references in cases where required key-values are consistent but optional key-values are inconsistent. | true/false | false | 3.7 |