Current Spotfire Streaming 11.1.2 Release Notes

These are the release notes for Spotfire Streaming 11.1.2.

New Features

Spotfire® Streaming 11.1.2 adds the following updates and new features:

Activation

Customers must activate this release as part of an installation or upgrade. The release will not function unless it is activated with a license.

Generate a license to activate this product within the TIBCO Software Download site at http://www.tibco.com/downloads. Only customers with an active entitlement to this release can generate a license.

To activate this product by the recommended method of In-product Activation (local activation), refer to the documentation at Activation in Spotfire Streaming and https://docs.tibco.com/products/tibco-activation-service.

Spotfire® Streaming Now Bundles Java 17.0.13

The Spotfire Streaming installation kit provides a copy of Eclipse Adoptium JDK 17.0.13 in a subdirectory of the Streaming installation directory, to run Streaming program fragments and applications from within StreamBase Studio and other Streaming development tools. Streaming detects and prefers a system-installed JDK, and uses this bundled JDK as a fallback. See further details about the JDK requirements of this release in the JDK entry of the Supported Configurations page.

Spotfire Streaming Bundles Maven 3.9.9

Spotfire Streaming 11.1.2 includes a standalone installation of Maven 3.9.9 for customer command-line use as described in the Maven entry of the Supported Configurations page.

New Parameter Added to epadmin install systemservice Command

A new parameter javahome is added to the epadmin install systemservice command, specifying the location of the JRE or JDK to be used by the node.

Snapshot File Created in a Different Directory

Snapshot file created using epadmin create snapshot command is now written in the node install directory. Previously, it was written into the Operating System's working directory.

Changes in Functionality

This release includes the following changes in functionality:

StreamBase Fragment Dependencies Classpath Container Removed

In version 10.3, a new build path entry called StreamBase Fragment Project Dependencies was added to the Project Explorer view. This entry contained all of the current project's dependencies to other fragment projects. It is no longer needed since the fragment dependencies are shown in the existing Maven Dependencies container.

The fragment dependencies container will no longer appear in the Project Explorer view, and it will appear empty if viewed from the Java Build Path preference page. In a future release, the entry for this container in the project's .classpath file will be removed.

Root URL of the DTM Server Now Always Redirects to /admin-ui

In the Kubernetes and local environment, the root URL of the dtm server now always redirects to /admin-ui. Previously, it was redirected to /help-ui(swagger-ui) in the local environment.

Added Asynchronous Replication Back Pressure Support

Support added for pausing asynchronous replication when the replication queue for a remote node hits a configurable request depth. The queue depth is configured using the maximumReplicationQueueDepth property and is disabled by default. For more information, see ApplicationDefinition Properties.

Deprecated and Removed Features

The following features are deprecated as of Streaming 11.1.2.

Partition Target Commands now Removed

The epadmin partition target commands define partition, disable partition, enable partition, migrate partition, and update partition are removed in this release. These commands were not exposed or documented.

Deprecated Support for Windows 10

Support for Windows 10 is deprecated and will be removed in a future release.

Migration and Compatibility

This release contains the following migration and compatibility notes.

Object Iteration is Avoided During Partition Updates

To upgrade to this version, clusters must be completely stopped and restarted. The node-to-node protocol changed in this release in a non-backward compatible fashion.

Cluster Rolling Upgrade from 10.x to 11.x Nodes is Unsupported

The Distributed Transactional Memory API changed between versions 10.x and 11.x, preventing an 11.x node from starting if there is an existing live 10.6 node already in the cluster. Instead, ensure that 10.x and 11.x nodes are in different clusters at all times.

Streaming Known Limitations

This section describes known limitations as of the current release of Spotfire Streaming. Each item includes a tracking number, description, and workarounds when possible.

Known limitations for using the EventFlow debugger are described separately, in the Limitations, Tips, and Tricks section of the Using the EventFlow Debugger page.

SB-53418 StreamBase Studio Splash Screen appears upside-down on macOS Sonoma.
Description

When starting up Studio on macOS Sonoma versions greater than 14.0, the Splash screen appears upside-down. This affects all Eclipse products including Studio.

Workaround

None.

SB-52367 Java 17 class accessibility rules now apply to calljava().
Description

When upgrading to Streaming 11.1.0 and Java 17, which ships with it, you must revisit their usages of the calljava() StreamBase function. Strongly encapsulated classes are usable by default in Java 11 but breakages occur in Java 17.

Workaround None.
SB-51772 Studio should process-resources as part of typecheck construction.
Description

As of 11.0, StreamBase Studio typechecking expects to find project resources on the Maven class path. This requires that projects, and their dependencies, have been built already, which is the case if auto-build is enabled. If auto-build is not enabled, the build fails, complaining that resources are missing.

Workaround

Simply build projects manually, which may not be obvious to the user.

SB-50988 The attempt to install Spotfire Streaming to a custom install directory whose length is more than 14 characters fails.
Description

Because of Windows limitations and features included in Studio, attempting to install Streaming to a custom install directory (MSI property SBINSTALLDIR) whose length is more than 14 characters fails.

Workaround Use the default install path or try a shorter custom install directory.
SB-49471 The epdev offline maven command displays benign errors.
Description

Running the epdev offline maven command displays a number or Maven errors. However, the process does complete and work as expected.

Workaround None.
SB-49208 Project names with underlines cause problems for application projects with Docker and Kubernetes or Helm support.
Description

Studio-generated StreamBase Application projects that select the Docker and Kubernetes options generate a Docker image without errors, but fail to deploy in Docker.

Workaround Start over with a new project name without underlines.
SB-52829 Type check PMML model schemas with configured input schemas.
Description

The JPMML Model Evaluator Operator does not typecheck the PMML model fields with the configured StreamBase input stream fields during the model load time. Any input field mismatch errors are displayed as runtime errors during the model evaluation time.

Workaround None.
SB-51113 STUDIO: Invalid 'customFunctions' HOCON not reported unless an operator references it.
Description

Custom Function configuration is only validated if referenced; invalid custom function declarations might not receive warnings or errors if no attempt is made in using them.

Workaround None.

LiveView Known Limitations

This section describes the known limitations in the current release of Spotfire LiveView™. Each item includes a tracking number, description, and whenever possible, one or more workarounds.

ClusterAlert Cluster-wide Alert Group Restriction for Heterogeneous Clusters
Description Nodes with only EventFlow engines in LiveView clusters must be in their own alert groups.
Workaround For more information, see Cluster-Wide Alerting guidelines
SB-54280 Deadlock when nodes start simultaneously.
Description Starting nodes simultaneously may lead to a race condition and subsequent deadlock during start-up.
Workaround Stagger the launch of each node in a multi-node cluster.
SB‑46418 Removing the lvweb.war dependency from a project's POM does not remove the file, and vice versa.
Description New LiveView Fragment projects are created by default with a dependency on the lvweb.war file that implements LiveView Web functionality. There are two cases: (1) If you later edit the project's pom.xml file to remove that <dependency> element, in which doing so does not automatically remove the lvweb.war file from the project's src/main/liveview/lv-user-webapps folder. (2) If you remove the lvweb.war file manually, the pom.xml is not automatically edited to remove the dependency.
Workaround In both cases, you must both remove the lvweb.war file and edit the pom.xml file to remove a project's support for LiveView Web.

The correct way to create a new LiveView project without LiveView Web support is to change the lvweb property to false in the third panel of the File>New>StreamBase Project wizard.

SB‑45720 Failure to independently run or debug EventFlow modules in LiveView projects in 10.4.0 through 10.4.2.
Description Many LiveView projects have StreamBase EventFlow modules that provide functionality such as publishers or transformers of data. In releases 10.4.0, 10.4.1, and 10.4.2, right-clicking such modules and selecting Run As>EventFlow Fragment (or Debug As) to run or debug the module independent of the enclosing LiveView project resulted in an error. This feature has been restored in release 10.4.3. This limitation did not prevent running the project as a LiveView fragment with all EventFlow modules working. The limitation was only on running the EventFlow modules by themselves.
Workaround If you are using one of the affected releases, you can:
  • Upgrade to release 10.4.3 or later.

  • Edit the Run Configuration for your EventFlow module, and use the checkboxes to disable the configuration file of type com.tibco.ep.ldm.configuration.ldmengine, which is usually named engine.conf or lvengine.conf.

  • If your ldmengine configuration file contains property settings required by your EventFlow module, then create a new EventFlow fragment project, copy in your EventFlow module and all required configuration and resource files, and debug the module there. Copy the module back to your LiveView project when it is debugged and ready.

SB‑44494 Metadata store restriction for clusters containing LiveView and StreamBase fragments.
Description The transactional memory metadata store type is only supported on homogeneous LiveView clusters. This means the cluster cannot contain a mix of LiveView and StreamBase fragments when using a transactional memory metadata store.
Workaround Use either the JDBC or H2 metadata store type when your cluster contains both LiveView and StreamBase fragments.
CQS-5503 Controlling the output for aggregation queries against no rows.
Description As documented, aggregate queries that execute against no result return null (to indicate unknown), except for counting functions (that return 0). If you wish to instead return no row at all, see the workaround.
Workaround Append GROUP BY 1 to the query.
CQS-4800 Row level security authentication not performed on results of already-registered queries and query-based alerts.
Description Row level security (RLS) authentication and authorization is performed at the time when new query-based alerts and queries are registered with the LiveView server. LiveView does not perform authentication on the results of already-registered queries and query-based alerts; to get the expected results based on RLS authentication, you must re-register the queries with the server.
Workaround None.
CQS-4748 liveview.project.out system property is not used for deployed applications.
Description The liveview.project.out system property was recommended in previous releases as a way to manage the placement of the LiveView server's compilation working directory. However, if you redirect this working directory in StreamBase 10 applications, the StreamBase application might fail to start correctly.
Workaround None.
CQS-4641 Issuing queries with literal non-printing characters is not supported in query strings.
Description Query strings with literal non-printing characters can cause issues. Non-printing characters are those below 0x20, excepting tab, carriage return, and line feed. The tables and query result sets are free to have any characters as values.
Workaround Instead use StreamBase Unicode escape sequences, which looks like \uXXXX. For example, a bell is \u0007.
CQS-3855 Remote data source tables with sole primary key CQSInternalID cannot be opened.
Description When querying a remote data source's tables, all LiveView clients fail to open any remote table that uses a single primary key named CQSInternalID.

This issue affects all LiveView clients, including Spotfire LiveView Desktop, Spotfire LiveView Web, the lv-client command line utility, and any custom client written using LiveView Client APIs.

The issue occurs when querying any remote data source, including: Spotfire StreamBase Query Tables, other LiveView servers, JDBC databases, Spotfire ActiveSpaces tables, and custom table providers.

Workaround To enumerate the remote tables that you must avoid, use one of the following suggestions:
  1. If your client can sort its list of available remote tables, sort it by the Indexes column to isolate the tables that have only CQSInternalID as their primary key.

  2. Use the following query to determine the remote tables to avoid opening:

    select * from LVTables where Indices=='CQSInternalID'

Streaming Resolved Issues

This section provides a list of errors corrected in release 11.1.2 of Spotfire® Streaming.

Fixed in 11.1.2
Number Resolution
Spotfire Streaming 11.1.2 incorporates all fixes resolved in the release 10.0 series through 11.1.1.
SB-55123 Streaming version 11 was slower than StreamBase version 7 for on-heap Query Table operations. This issue is resolved.
SB-55078 Dependencies for the Hadoop adapter and related libraries were upgraded to the latest versions, eliminating the Log4j dependency.
SB-54990 Streaming versions 11.1.0 and 11.2.0 limited the JSON strings to 20 million characters. This limit is removed in this version.
SB-54741 Inner aggregation in SSQL generated an invalid class during the execution of the epadmin add container command.
SB-54460 OPC UA adapter sample fails with StreamBaseApp.Ua.Config.Xml not found error.
SB-52875 Kafka Producer adapter gives an error when the brokers field is not in the Command Input port's schema. This issue has been resolved, and the brokers field is now a mandatory element for successful connection operations.
SB-51828 An error resulting from a previous Split branch no longer allows following Split branches to execute even if the error is caught.
SB-49026 Resolved unnecessary increase in heap memory use from error message objects retained longer than needed.