Table of Contents

General Main Release 10.2.0 CU10

Note

For known issues with this version, refer to Known issues.

Tip

For information on how to upgrade DataMiner, see Upgrading a DataMiner Agent.

Enhancements

Cassandra cluster migration: Enhanced performance of SLElement when migrating alarms [ID_34668]

Because of a number of enhancements, overall performance of SLElement has increased when migrating alarms during a Cassandra cluster migration.

DataMiner Cube - Visual Overview: Automatically generated shapes representing bookings can now be sorted by custom property [ID_34572] [ID_34864]

When specifying that a shape should be created automatically for each booking in a particular set of bookings, it is now possible to have the automatically generated shapes sorted by a custom booking property.

For example, in an SRM environment, you can have a booking time range that includes pre-roll and post-roll, and timings that contain the custom properties Start and End. From now on, it is possible to have the automatically generated shapes sorted by one of those custom properties. To do so, you can specify a shape data field of type ChildrenSort to the group-level shape and set its value to Property|property=<CustomProperty>,<asc/desc>.

Examples:

ChildrenSort="Property|property=Start,asc"
ChildrenSort="Property|property=End,desc"

DataMiner Cube - Visual Overview: Enhanced performance when updating automatically generated shapes that represent bookings [ID_34695]

Because of a number of enhancements, overall performance has increased when updating automatically generated shapes that represent bookings.

SLLogCollector now also collects DxM version info and APIGateway app settings [ID_34701]

SLLogCollector packages will now also include:

  • Version information of all DataMiner Extension Modules (DxM).
  • The appsettings.json file of the APIGateway service.

Elasticsearch: Sending a GetInfoMessage of type 'IndexingConfiguration' with an invalid DataMiner ID will now only return the Elasticsearch configuration of the local DMA [ID_34774]

When a GetInfoMessage of type "IndexingConfiguration" was sent containing an invalid DataMiner ID, up to now, the Elasticsearch configuration of all DMAs would be returned.

From now on, when the DataMiner ID in a GetInfoMessage request of type "IndexingConfiguration" is invalid, only the Elasticsearch configuration of the local DMA will be returned instead.

DataMiner upgrade: Enhanced method to delete locked files [ID_34779]

When, during a DataMiner upgrade, an attempt was made to delete files that were locked by certain processes, up to now, that attempt would fail, causing those files to remain on the system until the next upgrade.

From now on, when an attempt to delete a file during a DataMiner upgrade fails, the extension of that file will be replaced by .SLReplace and, later on in the upgrade process, the file will then be deleted by SLHelper.

Size of log entries in log files generated by SLLog will now be limited [ID_34801]

In log files generated by SLLog, the size of the entries will now be limited:

  • Messages will be trimmed to 5120 characters.
  • Methods will be trimmed to 200 characters.
  • Program names will be trimmed to 200 characters.
Note

Method data typically also includes the process and thread IDs.

Web apps now support trending of string parameters and exceptions.

DataMiner Cube: Stream Viewer enhancements [ID_34837] [ID_34838]

The Stream Viewer tree view now supports more levels. This will allow you to display more detailed information.

For example, in case of HTTP communication, there will now be extra levels for sessions, connections, requests/responses, parameters*, and even status codes and error codes.

*only in case of a response

DataMiner Cube - Visual Overview: Enhanced performance when loading a visual overview that contains a large number of shapes linked to EPM objects [ID_34874]

Because of a number of enhancements, overall performance has increased when loading a visual overview that contains a large number of shapes linked to EPM objects.

DataMiner Cube - Settings: 'Show the DataMiner TV section' setting has been removed [ID_34877]

The Show the DataMiner TV section setting has been removed from the User > Cube section of the Settings window.

BREAKING CHANGE - Dashboards app & Low-Code Apps - GQI: Certain cell values in a GQI query result will no longer include the object type [ID_34895]

Previously, cell values of GQI result rows for DomInstanceIds, DomDefinitionIds, ProfileInstanceIds, and ProfileDefinitionIds contained both the display value of the GUID and the object type (e.g. "DomDefinitionId[00000000-0000-0000-0000-000000000000]"). Now the cell value will only contain the display value of the GUID.

Port initialization error messages have been improved [ID_34920]

The following port initialization error messages have been improved:

  • The log message InitializePort <n> for Element <x> failed with <y>. has been replaced by InitializePort(<n>) for Element <x> failed with <y>.

  • The alarm message Initializing the communication <n> for <x> failed. has been replaced by Initializing the communication of port <n> for <x> failed.

Element errors and notices will now be closed as soon as the element in question is stopped [ID_34927]

The following element errors/notices generated by SLDataMiner will now automatically be closed when the elements in question are stopped.

Creating log-factory for <x> failed.
Creating the log-file for <x> failed.
Initialize xml for <x> failed.
Parsing the settings for <x> failed.
Creating element-object for <x> failed with <y>.
Initializing the element <x> failed.
Starting the element <x> failed.
Starting the element <x> failed. No element object.
Creating Database tables for <x> failed.
Creating element-objects for <x> failed.
Initializing the communication <p> for <x> port failed. / Initializing the communication of port <p> for <x> failed.
Initializing the protocol for <x> failed.
Initializing the element for <x> failed.
Starting the protocol for <x> failed.
Starting the protocol for <x> failed. No Protocol object.
Starting the derived element for <x> failed.
Starting the element <x> failed. No element object.
Creating element-object for <x> failed with <y>.

Dashboards app & Low-Code Apps: A table row with a column containing a parameter table index is now capable of feeding a linked parameter [ID_34957]

From now on, a table row with a column containing a parameter table index will now also be capable of feeding a linked parameter when all necessary data is available. As a result, one data input will now suffice to visualize table row data in a line chart.

Fixes

'One or more of the following modules are not licensed' error would incorrectly not list the unlicensed modules [ID_34407]

When a required software license cannot be found, a One or more of the following modules are not licensed: ... message will appear.

In some cases, instead of listing the unlicensed modules, this message would incorrectly only mention "None".

Web apps: Problem with email address boxes [ID_34421]

When you entered an address in an email address box and then selected something else on the page without pressing ENTER or TAB, the email address box would incorrectly expand and show a list of suggestions.

SLDMS would leak memory when processing a large number of distribution traps [ID_34525]

Up to now, SLDMS could leak memory when it had to process a large number of distribution traps. From now on, the number of distribution traps that can be processed by SLDMS will be limited to 250,000. When SLDMS notices that the queue of distribution traps has reached 250,000, it will reject new traps until the number of traps in the queue has dropped to 100,000.

DataMiner Cube - Visual Overview: Tooltip of an element in a service chain would incorrectly not show values of node properties [ID_34664]

When, in a service chain within a service context, an element shape was linked to a node property via a shape data field of type Tooltip, then the tooltip of that shape would incorrectly not show the value of that node property when using either a [Service definition properties] or a [Service definition property:<property name>] placeholder.

Dashboards app - Time range feed: Quick pick buttons would not be displayed in the correct order [ID_34759]

When a time range feed was configured to show quick pick buttons, those buttons would not be displayed in the correct order. From now on, quick pick buttons will be displayed in chronological order.

Web apps - Interactive Automation scripts: All other tree view components in a dialog box would incorrectly collapse when you selected an item in a tree view component [ID_34773]

When, in a dialog box of an interactive Automation script, you selected an item in a tree view component, other tree view components on that dialog box would incorrectly collapse.

Standalone parameters belonging to another child of the same DVE parent element could be set to 'Not Initialized' when a row linked to a DVE child element was deleted [ID_34785]

When a row linked to a DVE child element was deleted, in some cases, standalone parameters belonging to another child of the same DVE parent element could be set to "Not Initialized".

GQI: Filter operations would not be forwarded to the correct query when multiple data sources were joined [ID_34819]

When multiple data sources were joined, in some cases, filter operations would not be forwarded to the correct query.

Known Elasticsearch errors would incorrectly get logged in the SLSearch.txt log file [ID_34827]

Up to now, when custom data was requested by ID from an Elasticsearch database, a "404" error would be logged in the SLSearch.txt log file when the ID did not exist.

From now on, only unknown Elasticsearch errors will be logged in the SLSearch.txt log file. Known errors will be logged as level-5 errors in the debug logs.

Memory leak in SLDataGateway during a Cassandra Cluster migration [ID_34829]

During a Cassandra Cluster migration, SLDataGateway would leak memory due to paging handlers not being cleaned up correctly.

DataMiner Cube - Visual Overview: Preset specified in a Spectrum Analysis component would incorrectly not be loaded [ID_34833]

When you had specified a preset in a shape that contained a Spectrum Analysis component, the preset would incorrectly not be loaded when you opened the visual overview in Cube.

Dashboards app & Low-Code Apps: Contents of colored table cells would incorrectly not be visible when conditional coloring was applied and actions had been configured [ID_34842]

When conditional coloring was applied on the first column of a table in which actions had been configured, in some cases, the contents of the colored cells would incorrectly not be visible.

DataMiner upgrade: 'Webpages\App' and 'Webpages\Automation' folders would incorrectly not be cleaned up [ID_34844]

After a DataMiner upgrade, files belonging to previous app versions would incorrectly not be removed from the C:\Skyline DataMiner\Webpages\App and C:\Skyline DataMiner\Webpages\Automation folders. From now on, those folders will be deleted before new versions of those apps are installed.

Problem with SLElement when a description.xml file was updated while an alarm was being unmasked [ID_34860]

In some cases, an error could occur in SLElement when a description.xml file was updated while an alarm was being unmasked.

Problem with SLElement [ID_34861]

In some cases, an error could occur in SLElement when a DVE child or a virtual function was started, and when a parameter description was changed.

HTTP requests would incorrectly not be retried when WinHTTP threw a SEC_E_BUFFER_TOO_SMALL error [ID_34888]

When an HTTP request is sent, in some cases, WinHTTP can incorrectly throw a SEC_E_BUFFER_TOO_SMALL error when the server is using TLS 1.2.

From now on, when this error is thrown, DataMiner will retry the HTTP request the number of times specified for the HTTP connection in question.

Problem with SLElement when a parameter update was being processed while an element was starting up [ID_34899]

In some cases, an error could occur in SLElement when a parameter update was being processed while an element was starting up.

Low-Code Apps: 'Fetch the data' action of a table component would resolve too soon [ID_34902]

In some cases, a Fetch the data action of a table component would resolve too soon. This would cause post actions to be executed while the data was still being retrieved. From now on, the Fetch the data action will resolve when all data is retrieved.

SLLogCollector would become unresponsive after executing a nodetool command [ID_34909]

When the JAVA_HOME variable was not set, SLLogCollector would become unresponsive after executing a nodetool command.

From now on, when SLLogCollector times out after executing a nodetool command, it will log a timeout message in its log file and proceed.

Dashboards app & Low-Code Apps - Table component: Data of different types displayed in the same row would not get fed correctly to linked feed components [ID_34915]

When a row in a table component contained data of different types, that data would not get fed correctly to linked feed components.

Moreover, in some cases, the table would even not be able to feed the data in its rows.

SLDataGateway was not always able to parse the result of a 'nodetool status' command [ID_34929]

The SLDataGateway process periodically checks the status of the local Cassandra node by executing a nodetool status command and parsing the result. When Cassandra was still starting up, some values in the output could not always be parsed, leading to SLDataGateway incorrectly marking the database as unavailable.

DataMiner Cube - EPM: Problem with topology filter [ID_34931]

When you opened a topology chain and selected a field in the topology filter, in some cases, the fields above the one you selected would incorrectly not get selected automatically.

Problem with SLProtocol when trying to update a parameter of type 'read bit' [ID_34935]

In some cases, an error could occur in SLProtocol when trying to update a parameter of type read bit.

DataMiner Cube - Visual Overview: Trend graph would incorrectly show 'No data' [ID_34955]

When a visual overview on an EPM card contained a trend graph, in some cases, that graph would incorrectly show No data while its legend would show the correct data.

Elements would not show up in client applications due to an incorrect credential library GUID stored in their Element.xml file [ID_34956]

In some cases, an incorrect credential library GUID could get stored in the Element.xml file of certain elements. As a result, although they were active and working as expected, those elements would not get loaded into SLNet and would not show up in client applications such as DataMiner Cube.

Web apps - Line chart component: Chart would incorrectly display non-existing data when the time window included a period in the future [ID_34959]

When the time window of a line chart component showing trend data included a period in the future, the chart would incorrectly display non-existing data for that period in the future. From now on, the chart will stop at the current time.

Dashboards app & Low-Code Apps: Problem with 'Number of columns' input box [ID_34966]

When you were editing a dashboard or a low-code app, and the edit side panel was very narrow, in some cases, the Number of columns input box on the Settings tab could not be used as it would only be partly visible.

Also, in some cases, the value in the Number of columns input box could incorrectly not be reset to the factory default.

Skyline Device Simulator: Problem when running a proxy simulation [ID_35059]

In some cases, an error could occur in the Skyline Device Simulator when a proxy simulation was being run.

Protocols: Problem when working with large timer values and Timerbase [ID_35097]

When working with large timer values and Timerbase, in some cases, an integer overflow could occur.

  • In x86 versions of SLProtocol, this would result in a default time of 5 minutes for run-time error detection, while waiting a pseudo-random time to continue polling (around 10 days). The run-time error would get reset about every 10 days.

  • In x64 versions of SLProtocol, this would cause the timer to become inaccurate. No run-time errors would occur.