Contents
TIBCO® Streaming 10.6.0 adds the following updates and new features:
- TIBCO® Streaming Now Requires Java 11
-
Starting with release 10.6.0, TIBCO Streaming 10.6 runs only with and requires an installation of Oracle JDK 11.0.7 or a later JDK 11 version.
On all supported operating systems, the TIBCO Streaming installation kit provides the runtime components of Oracle JDK version 11.0.7 in a subdirectory of the StreamBase installation directory, for private use to run StreamBase program fragments and applications from within StreamBase Studio. As before, StreamBase detects and prefers a system-installed JDK, and uses the bundled JDK as a fallback. See further details about the JDK requirements of this release in the JDK entry of the Supported Configuratons page.
- New Support for Kubernetes and Helm
-
The StreamBase Runtime has had long-standing support for its own node-based discovery service that uses communication over UDP ports as its hallmark.
To better integrate TIBCO Streaming applications in Cloud environments, where UDP broadcasts and firewall management is restricted, release 10.6.0 introduces support for industry-standard Kubernetes as an alternative discovery service and Docker container deployment manager. This release also adds support for Helm as a package manager for Kubernetes configurations.
This release of Studio builds on its Maven-based automation for generating Studio projects that are ready to build and load into a Docker environment. The
> > wizard now has check boxes that extend its Docker support with two new options:Select the Kubernetes check box to have Kubernetes support files generated into the project folder for the new project. Select the Helm check box to generate the additional Helm support files.
You can run and test your Docker containers with Kubernetes management on your development workstation by installing Docker Desktop for Mac or Windows. Docker Desktop is required for Studio's Docker integration; install the latest version available. See the Docker section of the StreamBase Administration Guide for instructions on building a containerized StreamBase Application in StreamBase Studio.
Note
When you obtain third-party software or services, it is your responsibility to ensure you understand the license terms associated with such third-party software or services and comply with such terms.
- Studio Now Built on Eclipse 4.15
-
StreamBase Studio and StreamBase Manager are now based on Eclipse 4.15.
As with every major release, TIBCO strongly recommends using Copy projects into workspace option.
> to import your projects from previous releases into a new, unused Studio 10.6 workspace. Be sure to use theStreamBase Studio silently updates the workspace format of older projects. Once imported and updated to 10.6 format, do not reopen a 10.6 project with an earlier release of Studio.
- Visual Studio 2019 Now Supported For Building StreamBase Clients
-
TIBCO Streaming 10.6.0 introduces support for Microsoft Visual Studio 2019, which TIBCO recommends for building C++ or .NET clients for Windows.
Other Visual Studio support changes are described in Deprecated and Removed Features below.
- Bundled Maven Version Now 3.6.3
-
Release 10.6.0 includes a standalone installation of Maven 3.6.3 for customer command-line use as described in the Maven entry of the Supported Configurations page.
- CentOS 8 Now Supported
-
StreamBase now supports CentOS 8 as a staging and deployment server platform.
- Studio Now Supports Eclipse Dark Themes
-
As part of 10.6.0's adoption of Eclipse 4.15, Studio now supports Eclipse Dark themes. To configure a Dark theme, see Changing Studio's Appearance. All Studio perspectives, views, and editors are affected by the theme change, with the exception of the Palette view.
- New LiveView Perspective Introduced
-
Studio now includes a LiveView perspective that opens automatically when you run a LiveView fragment in Studio. The perspective has many features of the TIBCO LiveView Desktop™ utility, but now integrated with Studio. This provides developers with an automatic and convenient way to view the tables of one or more running LiveView fragments, and to perform queries against them.
- Operators and Adapters Drawer Now Searchable
-
The Palette view now includes a search field in its title bar where you can narrow the display in the view by specifying a few letters of the name of an operator, stream, or data construct of interest. This works best when you pin open all three drawers of the view, to see the effects of the search in all drawers at once.
- Kafka Enhancements for the Connectivity Wizard
-
The Apache Kafka option for Studio's LiveView Connectivity Wizard now supports creating Kafka projects with basic and advanced authentication options. Click the Generate Security Settings link at the bottom of the Advanced Options grid to open the following dialog. You can select Basic-only by clearing the Use SSL Encryption check box, or select the combination of Authentication and Encryption settings appropriate for your Kafka cluster.
- TCM Enhancements for the Connectivity Wizard
-
The TIBCO Cloud Messaging option for Studio's LiveView Connectivity Wizard was enhanced with UI support for constructing a text matcher string in the Content Matcher field. The dialog now has an link next to the Content Matcher field. When selected, a dialog appears showing messages seen on the TCM channel, as well as a chooser for selecting fields of interest.
In previous releases without the assisting dialog, you had to type a raw content matcher string into the Content Matcher text field, such as
{"topic":"sales","department":"widgets"}
. - Specifying Configuration Load Order When Launching Fragments Now Supported
-
You can specify a prerequisite for a HOCON configuration file in a Run Configuration dialog for EventFlow or LiveView fragments. This feature lets you specify one configuration file (say, B) as a prerequisite for another, A. In this case, when Studio runs the fragment, it loads B before A, independent of other load order considerations. See Configuration Settings for more information.
For every rule that you define, Studio loads the prerequisite HOCON file before the file of interest. The ordering of the remaining HOCON files remains as described in HOCON Configuration Load Order. If you define an illogical set of rules, then all rules are ignored.
- Docker Containers Now Support Cluster Monitor
-
Docker containers can now include the Cluster Monitor application. See this page for configuration details.
- Markdown Viewer Integrated with Studio
-
StreamBase Studio now includes a Markdown viewer much like the one on GitHub, which provides an HTML-like view of Markdown format files in general, including those pulled into Studio as part of the community samples and online versions of supported samples.
- Studio Typechecking Improved
-
When typechecking EventFlow modules, Studio now looks for container-scoped variable definitions in EventFlowDeployment and/or ParameterSettingsGroup configuration files.
- Run Configuration Tooltips Now More Comprehensive
-
Tooltips in the Run and Debug Configuration dialogs were updated to provide more comprehensive messages for port selections.
- Web Service for Engine Metrics Now Supported
-
The REST API introduced in 10.5.0 now includes engine metrics. Enhancements include:
-
The StreamBase Java Client API was updated to support adding, removing, updating, and querying the web service.
-
The metrics web service for retrieving node and engine metrics data.
-
New epadmin metric command target.
-
Support for automatic installation of WAR files into the node's web server by adding a dependency in the POM file for EventFlow, LiveView, and Java engines.
-
- Web Services Security Enhanced
-
Security for web services was enhanced to support:
-
Disabling authentication per web service.
-
Enabling Open ID Connect Authentication realms.
-
Token-based authentication for when epadmin commands are executed from the context of the admin web service. Now, users do not need to run commands from a machine in the Trusted Hosts list when querying the admin web service.
-
- New PrivilegeSettingsGroup Security Root Object Added
-
A new root object com.tibco.ep.dtm.configuration.security.PrivilegeSettingsGroup allows a security role to include any number of named privilege settings. Privilege settings can include other settings, allowing greater flexibility and reuse.
- pageSize Property Value Limit Now Increased
-
The pageSize property for Client Listener configuration increased to a maximum of 16384 bytes.
- New Local Authentication Realm Properties Added
-
The local authentication realm now includes the following properties:
-
failedLoginLockoutDurationMinutes
, which allows you to set the number of minutes a user's account remains locked for exceeding the lockout threshold. -
failedLoginLockoutThreshold
, which allows you to set the number of consecutive failed login attempts required before the user's account is locked.
See Number of Login Attempts for a discussion of using this feature in a non-default Local Authentication Realm.
-
- Artifact Distribution Service Now Improved
-
Release 10.6.0 includes the following enhancements to the Artifact Distribution Service:
The Artifact Distribution Service (ADS) was updated so that the name of the artifact service record no longer exceeds the maximum service name length of 255 characters.
ADS now updates the Last Model Request Time property in the node service record to signal to the (separately installed) Artifact Management Server (AMS) that artifacts are required. Further, the artifact service record was deprecated as the means to signal AMS, but, ADS still publishes the artifact service record for compatibility with previous AMS versions.
ADS configuration now fails activation if another active ADS configuration on the node defines the same artifact but with different data. Previously, the configuration activation succeeded and an INFO message was raised at fragment start time. At fragment startup, it is still possible to get the
artifact already loaded with different data
error if a different node in the cluster has defined the artifact with different data. In this case a WARN message is raised.ADS now logs a message if fragment startup fails because
required at startup
artifacts were not received within the artifact-wait timeout periodand
the Artifact Management Server did not contact the node to get the list of artifacts that the fragment requested. This message is in addition to the existing message that specifies that the fragment failed because artifacts were not received (which can apply to several use-cases).
- New EP Command Reference
-
The TIBCO Streaming EP Command Reference now provides a detailed page for every epadmin target, with each of that target's commands explained, along with its command parameters.
- web Target Has a New Option
-
The epadmin display web type=webservice command now includes the --detailed parameter to display additional web service information such as any failed requests, to identify possible denial-of-service attacks on endpoints.
- metric Target Now Active and Renamed
-
The epadmin command target, metric, which was introduced in 10.5.0 for future use, can now be used to display metrics such as CPU utilization for nodes running EventFlow and LiveView applications. Note also that the target name changed in 10.6.0 from metrics to metric.
- Engine Start and Stop Commands Now Updated
-
The start engine command no longer waits for the engine to be fully started before returning. Also, the stop engine command now does not return until the engine has stopped.
- New Authentication Commands Added
-
The epadmin display authentication and update authentication commands were added to retrieve and update the local authentication realms for a running node, respectively.
- Create Snapshot Command Now Writes Locally
-
The epadmin create
snapshot
command now creates the snapshot archive on the local file system. By default, the snapshot archive is placed in the current working directory of the epadmin command, or you can specify an alternate location with thedestination
parameter, using an absolute path or one relative to the current directory.In previous releases, the command created the snapshot archive in a directory named
snapshots/
, parallel to the node directory, and you could use thenodename
parameter to specify a directory relative to that location.destination
- SMPP Adapter Introduced
-
This release includes the TIBCO StreamBase® Short Message Peer-to-Peer Protocol (SMPP) Adapter. The adapter enables sending and receiving of short text messages (SMS) over the Internet. See the sample page to learn how to demonstrate the adapter's features.
- Slack Adapters Suite Introduced
-
This release includes a trio of adapters to support connectivity to and from the Slack Technologies messaging platform:
-
The TIBCO StreamBase® Input Adapter for Slack Real Time Messaging allows you to receive selected events from Slack in real time.
-
The TIBCO StreamBase® Output Adapter Slack Real Time Messaging allows you to send messages as users, using the shared Slack Real Time Messaging Input adapter.
-
The TIBCO StreamBase® Adapter for Slack Client performs HTTP requests and emits the contents via the Data output port.
See the sample page to learn how to demonstrate the adapter's features.
-
- ETP Adapter Suite Introduced
-
The TIBCO StreamBase® Adapter for ETP allows StreamBase to interact with data from an ETP (Energistics Transfer Protocol) v1.1 server. The adapters in this set include:
-
The ETP Control adapter, which is used to control the connection with the ETP server (connection, disconnection, server status, and so on).
-
The ETP Store Get adapter, which is used to retrieve values from ETP nodes.
-
The ETP Discovery adapter, which is used to traverse the ETP server's node hierarchy and retrieve metadata for these nodes.
-
The ETP Streaming adapter, which is used to subscribe to value nodes and get continuous updates when the nodes' values change, as well as perform range requests for such values.
See the sample page to learn how to demonstrate the adapter's features.
-
- HTTP Client Adapter Introduced, Replacing Web Reader
-
The new TIBCO StreamBase® HTTP Client adapter performs HTTP requests and emits the contents via a
Data
output port. This adapter replaces the Web Reader Input adapter, which is now deprecated. - Diameter Adapters Enhanced
-
The Diameter adapters include the following enhancements:
-
Diameter Client and Server Input adapters now support SSL connections. See the Diameter Client Input and Server Input Adapter documentation for details.
-
The Server Input Adapter can now specify port 0 to select a random port.
-
The Client Input Adapter now supports automatic reconnection.
-
- Rendezvous Adapters Enhanced
-
The TIBCO StreamBase Rendezvous output adapter can now convert underscore (
_
) numeric field names to pure numeric field names in TIBCO Rendezvous and back again on the subscribe side.The TIBCO StreamBase Rendezvous input and output adapters now unsubscribe and disconnect from the Rendezvous message bus when they suspend, and reconnect when they resume. Current subscriptions are saved for when resume is called. More specifically, both adapters now support multiple options to connect at startup, auto-reconnect, reconnect wait, and also a control port to connect and disconnect manually.
Previously when suspended, the input adapter:
-
maintained all subscriptions
-
continued to receive Tibrv messages
-
stopped emitting tuples on its output ports.
-
- OSIsoft PI Adapters Adapters Now Offer New Authentication Option
-
A new option was added for OSIsoft PI adapters built on the PI SDK to specify the authentication type to perform — currently either Windows Authentication or PI Authentication.
- JMS/EMS Operators Now Support Integer and Solace's SOL_CLIENT_ACKNOWLEDGE Acknowledgment Mode
-
Release 10.6.0 now supports Solace JMS's SOL_CLIENT_ACKNOWLEDGE as a value to the JMS/EMS operators'
acknowledge-mode
configuration setting.The operators also now accept an integer value for this setting. For example, SOL_CLIENT_ACKNOWLEDGE is defined as
4
in the Solace JMS API; you can now use either the constant name or its integer value interchangeably.
- Engine Affinity Configuration Now Audited
-
The StreamBase Runtime audit process now rejects a configuration activation/replacement if an engine affinity configuration does not have explicit or implicit affinity with at least one engine.
- Cluster Monitor Application Now Includes Top-level HOCON File
-
As a configuration copy-and-paste convenience, the default node deploy configuration for the supplied Cluster Monitor application is now shipped (next to the Cluster Monitor application zip file) in
distrib/tibco/sb/applications/cluster-monitor-node.conf
. The file was also renamed fromnode.conf
tocluster-monitor-node.conf
.
The TIBCO Streaming documentation has the following improvements and new additions for release 10.6.0.
- StreamBase Runtime Guides Now Integrated
-
In previous releases, four Guides that help you understand and configure the StreamBase Runtime were only available offsite in an older format. Starting with release 10.6.0, these four Guides are now integrated into the TIBCO Streaming documentation:
- New EP Command Reference
-
In addition to the four Guides described above, an all new TIBCO Streaming EP Command Reference was carved out of an appendix in the former Runtime Administration Guide, then significantly enhanced and extended to become a top-level book of its own.
- Security Model Pages Updated
-
The Default Security Configuration and Trusted Hosts pages were extended and clarified. The Local Authentication Realm page was clarified throughout with a new Account Lock Features section added.
- TERR Support Updated
-
Instructions for installing and using an alternate TERR installation were re-tested and re-wrtitten.
- New Page: Finding the adminport for a Node
-
The Concepts Guide has a new page, Finding the adminport for a Node.
- Using Docker Section Updated and Extended
-
The Using Docker section of the StreamBase Administration Guide was modernized, corrected, and extended to include this release's Kubernetes support.
This release includes the following changes in functionality:
- Changes in EventFlow Engine Listener Port Selection
-
Starting with TIBCO Streaming 10.6.0, the TCP port for the Client API listener for EventFlow engines is now determined at engine startup to be a random port not already in use. This is true for all EventFlow fragment launches from Studio or from the command line, in the absence of a configuration file that sets an exact port number. This change was made to have Studio's behavior better match the command-line deployment experience, and to better support Cloud and Docker deployments, where fixed port numbers can be problematic.
In previous releases, Studio launches of EventFlow fragments set the port at the legacy default value, 10000. If that port was in use, a random, unused port was selected. Command line launches have always set the listening port to a random, unused value.
See the portNumber property in the StreamBase Client API Listener page in the Configuration Guide for further details.
- Changes in LiveView Engine Listener Port Selection
-
Starting with TIBCO Streaming 10.6.0, the determination of the TCP port for the Client API listener for LiveView engines has new behavior in StreamBase Studio. Now, the first LiveView fragment to start gets port 10080 if available, the second gets 10081 if available, the third 10082, and so on. The EventFlow engine that accompanies every LiveView launch now gets a random listener port, as described above.
Tip
Remember that you cannot run the same project two or more times in the same Studio session unless you configure the project to use the JDBC or Transactional Memory metadata store type.
In previous releases, Studio launches of LiveView fragments set the port at the legacy default value, 10080, while the accompanying EventFlow server took 10000. These port settings were set the same for all Studio launches of LiveView fragments, which required you to use configuration files to manage the ports for more than one LiveView fragment at a time. Command line launches have always set the listening ports to a random, unused value for both LiveView and EventFlow.
Note
If you have LiveView projects with existing configuration files that set the LiveView and/or accompanying EventFlow listener ports, consider whether you need to continue that practice with 10.6.0 and later releases of TIBCO Streaming.
See the portNumber property in the LiveView Client API Listener page in the Configuration Guide for further details.
- epadmin web Target Now Works When Node is Stopped
-
In previous releases, you could not run any epadmin web command for a node in its Stopped state (including a node that is installed but not started). Now, you can run epadmin web commands once the node is installed, whether or not the node is in a Stopped state.
- epadmin display node Output Updated
-
The output of the epadmin display node command was changed for the Discovery Service lines to reflect the support for Kubernetes when enabled. For the default UDP discovery service compatible with previous releases:
Discovery Service Implementation = UDP Discovery Service Port = 54321 Discovery Service State = Running
Starting with this release, if you have configured to use the Kubernetes discovery service:
Discovery Service Implementation = Kubernetes Discovery Service Port = Not applicable Discovery Service State = Running
In addition, the Discovery Service state line was removed from the install node and start node output (because the discovery service is always running).
- LDAP Client Connection Adapter: Disconnect Command Behavior Now Changed
-
Sending a Disconnect command through the LDAP Client Connection adapter's control input port, when the adapter is not connected to an LDAP server, now emits a Disconnected status tuple, with –1 for the port. The previous behavior was to do nothing when the Disconnect command was sent.
Separately, all output (connect and disconnect) status messages now contain the original input tuple.
- JMS Request/Reply Operator Properties Now Removed, Behavior Changed
-
The JMS Request/Reply operator no longer contains the following properties:
-
Configured Destination Name For Replies
. Now, the destination is always a temporary queue. -
Number Of Concurrent Processing Threads
. Now, to have multiple concurrent requests outstanding, configure multiple JMS Request/Reply operator instances. -
Max # Of Messages In Flight
. Now, every thread blocks until a reply is received to the current request, or the timeout expires.
-
The following features are deprecated as of StreamBase 10.6.0.
- Java 8 No Longer Supported
-
Starting with TIBCO Streaming 10.6.0, Oracle JDK 8 is no longer supported for deploying and running EventFlow or LiveView fragments, or StreamBase applications. TIBCO Streaming 10.6 now requires Oracle JDK 11.0.7 or a later JDK 11 release, as described in the New Features section of these release notes, and on the Supported Configurations page's JDK entry.
- Visual Studio Supported Version Changes
-
Microsoft Visual Studio 2010 is no longer supported for StreamBase client creation on Windows. Release 10.6.0 also deprecates Microsoft Visual Studio 2012.
TIBCO Streaming 10.6.0 introduces support for Microsoft Visual Studio 2019, which TIBCO recommends for building C++ or .NET clients for Windows.
- Web Reader Input Adapter Now Deprecated
-
The Web Reader Input adapter is now deprecated. Instead, use its replacement, the TIBCO StreamBase® HTTP Client adapter.
- Four IP Packet Stream Adapters Now Deprecated
-
Four TIBCO StreamBase® adapters for IP packet streams that rely on the WinPcap library and have been provided for Windows only are now deprecated as of release 10.6.0, and are likely to be removed in a future release. The four are the IRC Reader, HTTP Reader, POP3 Reader, and SMTP Reader adapters. Their samples were removed from this release.
- HOCON RoleToPrivilegeMappings.privileges Property Now Deprecated
-
The following security configuration property is now deprecated:
com.tibco.ep.dtm.configuration.security.RoleToPrivilegeMappings.privileges
Instead, use:
com.tibco.ep.dtm.configuration.security.RoleToPrivilegeMappings.roles
- HOCON Service Discovery Properties Now Deprecated
-
The following Service Discovery Adapter HOCON properties are now deprecated:
-
com.tibco.ep.streambase.configuration.servicediscoveryadapter.ServiceDiscovery.discoveryPort
-
com.tibco.ep.streambase.configuration.servicediscoveryadapter.ServiceDiscovery.discoveryHosts
-
- HOCON StreamBase Engine Properties No Longer Supported
-
The following StreamBase engine properties were deprecated in 10.3.0 but were unannounced:
-
StreamBaseEngine.streamBase.containerConnections
-
StreamBaseEngine.streamBase.modules
The deprecated properties were replaced with the following:
-
EventFlowDeployment.containerConnections
-
EventFlowDeployment.containers
Support for the deprecated properties was removed in 10.5.0 and retroactively announced in 10.6.0.
-
The following features were removed from StreamBase 10.6.0.
- Python Client API Support Removed for Windows
-
Because the Python community is winding down its support for Python 2.7, TIBCO Streaming could no longer build its Python Client API libraries for Windows. Accordingly, the TIBCO Streaming Python Client API is now supported only on Linux, and only for Python 2.7.
This does NOT affect the Python operator or Python Instance operator, which both have a wide variety of Python version support on macOS, Windows, and Linux, in both the 2.7 and 3.x Python families.
- Legacy jsbclientgen Command Removed
-
The jsbclientgen command outlived its usefulness and was never updated to work correctly in the StreamBase 10 era. Accordingly, this command is now removed as of release 10.6.0. To generate a simple dequeuer or enqueuer Java client, use StreamBase Studio's > > wizard.
- Legacy sbmonitor Command Removed
-
The StreamBase 7.6.5 release announced the deprecation of the sbmonitor command. This command is now removed as of release 10.6.0. The StreamBase Manager application and the SB Manager perspective in StreamBase Studio both provide a superset of the functionality of sbmonitor.
- Container Property Removed From epadmin Command Output
-
In previous releases, the output of certain epadmin commands included a reference to a property named
Container
whose value was alwaystibco/sb
. This referred to a StreamBase Runtime internal structure of interest only to TIBCO developers. The term container is heavily overloaded between StreamBase containers, Docker containers, Linux containers, and others, so the internal-only use of the term is now removed from epadmin display node, epadmin display services --servicetype node --detailed, and other commands.Note
If your local subnet is running a mix of nodes from 10.6 and from earlier releases, the
Container = tibco/sb
property is still seen when epadmin reports on the earlier release's nodes.
This release contains the following migration and compatibility notes.
- TIBCO® Streaming Now Requires Java 11 and No Longer Supports Java 8
-
Starting with release 10.6.0, TIBCO Streaming 10.6 runs only with and requires an installation of Oracle JDK 11.0.7 or a later JDK 11 version. See New Platform Support .
At the same time, Oracle JDK 8 is no longer supported for deploying and running EventFlow or LiveView fragments, or StreamBase applications. See Deprecated and Removed Features .
- Default Method for Assigning Listener Ports in Studio Changed for EventFlow and Liveview
-
See the first two entries in Changes in Functionality .
This section describes known limitations as of the current release of the TIBCO StreamBase® component of TIBCO® 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‑49208 | Project names with underlines cause problems for application projects with Docker and Kubernetes or Helm support. | |
Description |
Studio-generated StreamBase Application projects that elect 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‑49017, SB‑49004 | TERR operators not functional on Mac for release 10.6.0 with its bundled TERR version. | |
Description |
TIBCO Streaming 10.6.0 includes version 4.4.0 of the TIBCO® Enterprise Runtime for R (TERR), Developer Edition. Streaming 10.6 also introduces the requirement to use Oracle Java 11. Unfortunately, TERR 4.4 is not compatible with Java 11 on macOS. |
|
Workaround |
Download and install TERR 5.0, then either set a global TERR_HOME environment
variable or configure your TERR operators to use that external TERR, or both.
Follow the instructions in Installing an Alternate TERR
Version for the TERR and TERR Predict operators.
You can download a copy of TERR 5.0 Developer Edition from the TIBCO Access Point. Remember that to use TERR on a production server requires a license for the Enterprise Edition of TERR, for use either with TIBCO® Streaming or with TIBCO Spotfire® Data Streams. |
|
SB‑48960 | OIDC realm does not work with web service Help UI page. | |
Description |
The Help UI page generated from a running web service does not currently support the Open ID Connect authentication realm. |
|
Workaround | None. | |
SB‑47505 | REST API: POST endpoint does not work if parameter is specified. | |
Description |
A limitation currently prevents the uploading of generated files from the POST target command endpoint, when parameters are specified with the sent command. |
|
Workaround | None. | |
SB‑47332 | TensorFlow Adapter users may see DLL error on Windows. | |
Description |
In some cases, users running the TensorFlow adapter on Windows may encounter DLL errors. The error is caused by an internal TensorFlow API issue, not the adapter itself. |
|
Workaround | None. | |
SB‑46516 | Engine configuration for jvmArgs not being merged. | |
Description |
Engine configurations do not correctly merge jvmArgs; any differences in configurations are quietly ignored. |
|
Workaround | None. | |
SB‑46512 | On Windows, the epadmin install node command fails if the node directory path length exceeds 256 characters. | |
Description |
The epadmin install node command fails if the length of the node directory path exceeds 256 characters. |
|
Workaround | This might be a Windows limitation, in which case, use fewer than 256 characters as a workaround. An issue prevents StreamBase's method for resolving long file paths to succeed. | |
CQS‑4679 | All identical adapters and operators in an application that use the Operator getlogger() method share the same log level configuration. | |
Description |
If you have multiple identical StreamBase or LiveView operator or adapter instances based on a given Java class in a StreamBase fragment, they all share one Logger object, and the log level of the last instance to be initialized is used. |
|
Workaround |
Parameterize the log level of all adapters of a specific class and expose
that parameter through the fragment's engine.conf file.
|
|
SB‑46022 | Nested list fields are not supported in replica delta streams. | |
Description |
Nested list fields are currently not supported in replica delta streams. They are instead skipped with a warning log message. |
|
Workaround | None. | |
SB‑46208 | Multiple aliases to the same method not allowed until release 10.4.3. | |
Description |
The HOCON syntax for defining aliases for custom Java methods did not allow a way to define more than one alias for the same method. |
|
Workaround | Upgrade to release 10.4.3 or later and use the methodName property in your HOCON alias definitions. | |
SB‑45974 | Workspace error after importing a project with dependencies on JARs not present. | |
Description |
You may encounter saved Studio projects that have dependencies on JAR files that cannot be shipped with that saved project, such as JARs with licenses independent of StreamBase. In some cases, such projects cannot be resolved, even with > . This can happen with StreamBase examples that use TIBCO EMS, because the JAR files that implement EMS are licensed separately from StreamBase. |
|
Workaround | Before trying to run such projects, obtain the referenced JAR files from their vendor and Maven-install them to your local Maven repository (or to a site-specific network repository), as described in Using External JAR Files. | |
SB‑45757 | Typecheck failure: "Could not find" resource file. | |
Description |
The EventFlow Editor can get into a state where a resource file, such as a CSV file used to preload a Query Table, is not found during typechecking, resulting in a typecheck failure with no corresponding entry in the Problems view. |
|
Workaround | Re-run the EventFlow Editor's typechecker with with Ctrl+T (Windows) or Cmd+T (Mac). Note that the menu command Refresh Project Typecheck Environment invoked with Ctrl+F5 (Windows) or Cmd+R (Mac) does not resolve this condition; you must run the Editor's typechecker independently. | |
SB‑45183 | ResourceUnavailableException after stopping two nodes and restarting one node. | |
Description |
When stopping more than one node in a cluster, on restart of just one of the
stopped nodes a ResourceUnavailableException
error can be thrown.
|
|
Workaround | Restart all the stopped nodes concurrently or reinstall the node before restarting. | |
SB‑45182 | Default availability zone may not be created correctly when cluster stopped and started. | |
Description | If a node in a cluster is stopped and then restarted, the default availability zone may not be created correctly. | |
Workaround | Remove the node and reinstall before starting. | |
SB‑44167 | iPhone connected to Mac can cause node launch failures. | |
Description | Conditions: an iPhone is connected to a Mac with a USB-to-Lightning cable (including USB-C-to-Lightning cables) while Personal Hotspot is NOT enabled on the iPhone. Under these conditions, StreamBase Runtime nodes can fail to start, possibly emitting an error message similar to "can not see the local file system. Deploy to remote nodes is not supported." | |
Workaround | Unplug the iPhone, or enable Personal Hotspot (whether or not you actually use Personal Hotspot). | |
SB‑43476 | With SSL-TLS enabled for a StreamBase server launched in an EventFlow fragment, clients connecting to this server must specify trustStore and keyStore information. | |
Description |
The ClientAPIListener object can be configured
to reference a secure communication profile, and that profile can specify an
SSL-TLS configuration. In this case, when Studio launches this fragment, all
clients that connect to the resulting StreamBase server — including
sbc and epadmin — must specify the location of and
passwords for the configuration's trustStore and/or keyStore infrastructure.
|
|
Workaround |
You can specify the required information (a) as described in the –J section of the sburi reference page, and (b) as described for LiveView on
Using TLS/SSL with
LiveView Server.
|
|
SB‑42478 | Cluster Monitor fails to start in the same cluster as monitored. | |
Description | Attempting to start the Cluster Monitor in the same cluster as other applications can fail. | |
Workaround | Run the Cluster Monitor feature in a separate cluster from the one containing the applications being monitored. | |
SB‑42410 | Duplicate engine log files. | |
Description |
Duplicate engine log files exist in both the node directory's top level and
in its logs subdirectory. The other user
visible log files are now all located in the logs subdirectory.
|
|
Workaround |
None. The engine log files in the node directory's top level can be ignored.
The same information is available in the engine log files found in the
logs subdirectory. The duplicate log files are
expected to be removed in a future release.
|
|
SB‑42324, SB‑30773, SB‑30846 | Inconsistent containerName behavior. | |
Description |
If you define a StreamBase container name with the containerName parameter of the sbengine HOCON configuration type, the runtime behavior is
different for fragments run in Studio compared to epadmin launches. Studio places the
EventFlow module in a container named default,
following standards set in StreamBase 7.x, whereas epadmin honors the configuration-set
container name.
|
|
Workaround | None. | |
SB‑42093 | Reloading the entire node configuration when attempting to configure the cluster monitor fails. | |
Description | Attempting to reload a cluster monitor configuration embedded in a node deploy configuration file using the epadmin load configuration command quietly does nothing. | |
Workaround | Create a separate configuration file with just the cluster monitor configuration and load and activate that configuration. | |
SB‑41896 | Studio Support Wizard screen capture can fail on Mac. | |
Description | The StreamBase Support Wizard screenshot feature preview may not display properly under certain multi-monitor and/or Retina display hardware conditions. | |
Workaround | Use the Support Wizard to guide you to continue; the Support zip file will still contain the screenshot that you can verify in the archive prior to sending to TIBCO. For more information on the Support Wizard, see StreamBase Support Wizard for Troubleshooting. | |
SB‑41099 | Calling Help via management API throws null pointer exception | |
Description |
Executing help commands using the DtmCommand.execute method in the management API fails with
an exception.
|
|
Workaround | None. This issue is expected to be resolved in a future release. | |
SB‑35326 | Shutting down at debugger breakpoint causes engine to fail with an error. | |
Description | Stopping a JVM with a breakpoint set in the debugger can cause the JVM to exit with an error that requires the node to be removed and reinstalled. | |
Workaround | Ensure that no breakpoints are set in a debugger when shutting down a JVM. | |
SB‑32239 |
Bogus FATAL Invalid response trace seen when
stopping a node.
|
|
Description |
When deploying fragments, a misleading fatal error message may be returned
when terminating the fragment or the node on which it is deployed. For
example:
MESSAGE: dtm : FATAL(RQ:A.dstest): Invalid response: <ready/> |
|
Workaround | This message can be safely ignored. | |
SB‑31125 | Cluster-wide queries fail for disk-based Query Tables | |
Description | Cluster-wide queries do not work on disk-based Query Tables. | |
Workaround | None. | |
SB‑30948 | Trouble using the TERR operators on macOS. | |
Description | On macOS, EventFlow modules that use the TERR operators with TERR versions before 4.4 fail to start even when using the Use Embedded TERR check box. This includes the TERR operator samples shipped with StreamBase. | |
Workaround | If you can, update to TERR 4.4 or later, which is included with StreamBase 10.2.1 and later. If you must use a TERR version before 4.4, there are extra configuration steps on macOS, compared to Windows and Linux. These steps are detailed in the Operating System Configuration for TERR sections of the pages that describe the TERR Operator and the TERR Predict Operator. | |
SB‑30898 | On Windows only, virtual network adapters slow fragment startup with StreamBase before 10.3.0. | |
Description | If you have Oracle VM VirtualBox® or Microsoft Hyper-V installed, and one or more of your virtual machines has its virtual network adapter activated, this slows down the launch of EventFlow and LiveView fragments into a StreamBase Runtime node by several minutes. | |
Workaround | Upgrade to StreamBase 10.3.0 or later, where this issue is corrected. If you must use an earlier release, temporarily disable the network adapter feature of your VirtualBox VMs as described in Windows and Virtual Network Interfaces. | |
SB‑30270 | Failure to start Studio or Manager by double-clicking on macOS Sierra or High Sierra | |
Description |
MacOS releases 10.12 Sierra and 10.13 High Sierra have a security model that
is stricter than previous releases. As part of their security, these releases
automatically block unsigned, downloaded application bundles with
.app extension from being able to run.
Unfortunately, this affects the application bundles for StreamBase Studio
10.x and StreamBase Manager 10.x.
|
|
Workaround | See the list of suggested workarounds in Starting StreamBase Studio on macOS Sierra. | |
SB‑29050 | Error when debug stepping into or stepping over a Decision Table operator. | |
Description | When using EventFlow debugging, stepping into or over a Decision Table operator is not supported. | |
Workaround | Set your breakpoints upstream or downstream. Also, consider using the features of the Decision Table Analyzer to get a debug-like view of how the operator responds to different input tuples. | |
SB‑28856 | Deleting decision table rows does not re-number rule IDs. | |
Description | When using the Decision Table editor to delete and then add a new decision table rule, the rule ID does not renumber. For example, by deleting row 5 and adding a new row, the rule ID numbering is now 1...4, 6. | |
Workaround | None. | |
SB‑28669 | Error message: Grows beyond 64KB. | |
Description |
In rare cases, compiling small StreamBase applications can produce an error
message containing the words Grows beyond 64KB .
|
|
Workaround | Contact TIBCO StreamBase Technical Support for a workaround for this issue. | |
SB‑28598 | Multi-container StreamBase applications cannot use the same ActiveSpaces metaspace. | |
Description |
StreamBase applications deployed with multiple containers receive
metaspace already exists errors when attempting
to connect to the same TIBCO ActiveSpaces metaspace from different
containers.
|
|
Workaround | None. | |
SB‑28452 | Delta stream arc limitations in the EventFlow Debugger. | |
Description | If a delta stream arc is a direct connection between a Query Table and an Output Stream, and if that arc has a Debugger breakpoint, the breakpoint is not hit at during debugging with the EventFlow Debugger. Similarly, while debugging, stepping over to try to reach that arc does not suspend on that arc. | |
Workaround | Insert a no-op Map operator between the Query Table and the Output Stream. Then a breakpoint on the arc between the Query Table and the Map does work, and stepping over reaches that arc as well. | |
SB‑26629 | RPM installation method issues on RHEL 7 | |
Description |
StreamBase and LiveView are supported on Red Hat Enterprise Linux version
7.x. The archive installer is the recommended installation method. If you use
the RPM installation method, RHEL 7 issues several warning messages during
installation that complain about file removal failures, and issues an overall
warning that RHEL 7 "may not be compatible with this version of StreamBase."
Despite these warnings, the installation does succeed. The only consequence
is that |
|
Workaround | Remove StreamBase directories manually to uninstall an RPM installation on RHEL 7. Otherwise, all StreamBase and LiveView processes run as expected on RHEL 7. | |
SB‑26927 |
Error message .
|
|
Description |
In compiling the updating expression for a dynamic variable where the
expression references a named schema, if a field in the tuple presented by
the updating stream also has the same name as the named schema used in the
expression, the field is instead evaluated as a function. This raises the
error . This compilation behavior and language ambiguity was
introduced along with the function data type.
|
|
Workaround | The required migration step is to rename either the field or the named schema to eliminate the ambiguity. | |
SB‑26237 | Constant definitions used as component properties are not used at runtime. | |
Description | StreamBase Studio properly typechecks defined constants when used in operator properties, but at runtime substitutes their names instead of their values. | |
Workaround | Do not use defined constants when specifying operator properties. | |
SB‑26017 | Asynchronous timeouts for Gather operators in parallel applications can be inaccurate | |
Description | High availability applications that include Gather operators may incorrectly compute timeout intervals because the operator relies on now() instead of calling out to the parallel scheduling service. | |
Workaround | None | |
SB‑22297 | Commented-out error input streams consume error tuples. | |
Description | An error input stream, despite being disabled with the EventFlow comment-out feature, still catches errors thrown, but consumes any incoming errors and fails to pass them on. | |
Workaround | To temporarily disable error streams, copy them to a placeholder module and remove them from the active module. | |
SB‑21843 | In the TableAccessor API, ClassCastException is thrown if not using a Tuple from TableAccessor#createRow. | |
Description |
If methods in the com.streambase.sb.operator.TableAccessor interface that
accept a Tuple are not provided a Tuple retrieved from TableAccessor#createRow , a ClassCastException may be
thrown by the API.
|
|
Workaround |
Always use TableAccessor#createRow when using
TableAccessor API methods.
|
|
SB‑20449 | Display issues with years before 2 AD. | |
Description | The timestamp data type can hold timestamp values in the range -(2^62) to (2^62)-1, and can successfully display any future date in the next 146 million years and any past date to around year 2 AD. However, the year value for dates earlier than 2 AD may not display correctly. | |
Workaround | None. | |
SB‑18294 | Union operator: sub-field order of tuple fields must match with strict options. | |
Description | When using the Union operator with its Strict union or Declared schema options, the order of sub-fields of tuple fields must match exactly. This is in contrast with the default Loose union option, where strict sub-field ordering is no longer required. | |
Workaround | None. | |
SB‑16594 | Extract as Module feature copies items instead of importing them. | |
Description | The Extract as Module feature makes a copy of the source module's definitions and named schemas, and places the copies in the newly created module. Best practice would be to import those features from the source module to the new module, and to copy all imports from the source to new modules. | |
Workaround | After using Extract as Module, manually convert the copied definitions and named schemas to imports. | |
SB‑14133 | On Linux, sb-config --cxx returns a setting for G++ newer than 4.5. | |
Description | On Linux, in StreamBase samples that build C++ code, some of the example Makefiles show sb-config --cxx as the correct usage to determine the G++ compiler to use. On newer Linux distributions, this command returns the distribution's default G++ compiler, which may not be supported for building StreamBase client code, and sb-config does not honor the CC and CXX environment variables. | |
Workaround |
On such systems, install GCC and G++ 4.5, and edit the Makefiles to specify
CXX=g++-4.5 .
|
|
SB‑13398 | Filter operators with very large predicate settings may result in a runtime EvalException error. | |
Description |
Filter operators with several output ports and complex expressions to
evaluate for each port may result in a com.streambase.sb.runtime.exceptions.EvalException error
when attempting to run the application that contains such a filter.
|
|
Workaround | Add another Filter operator and split the predicate settings between the two Filter operators. | |
SB‑13113 | Output Streams view does not display UTF-8 characters. | |
Description | Both StreamBase Server and StreamBase Studio are fully capable of processing and displaying Unicode character sets, but neither is set to do so by default. | |
Workaround | Follow the instructions in Unicode Support to configure StreamBase Server, Studio, and any StreamBase client applications to process the UTF-8 character set. | |
SB‑10792 | The Query operator converts a JDBC data type differently when using explicit schemas than when using database data types. | |
Description |
When explicit schemas are used, the Query operator does not use database
metadata to determine the mapping between JDBC data types and StreamBase data
types. The JDBC data type Types.TIME is normally
converted to an interval timestamp since it has a time, but no date
component. But when explicit schemas are used, there is no database type
information, so Types.TIME is converted to an
absolute timestamp.
|
|
Workaround | None. | |
SB‑10486 | Hierarchical data restrictions. | |
Description | Patterns by value do not support using the tuple data type for their on-value portion. Similarly, tuple subfields cannot be used as the index or primary key of a Query Table. | |
Workaround | Design schemas so that the intended sort field or key is a top-level numeric or timestamp field, as described in StreamBase Pattern Matching Language. | |
SB‑10363 | No StreamBase data type corresponding to Sybase timestamp. | |
Description |
When used with Sybase data sources, EvenfFlow fails to convert timestamps,
resulting in typecheck errors. This is because the Sybase timestamp is based on the Sybase varbinary data type.
|
|
Workaround |
In EventFlow code that will be used for Sybase data sources, use the
Sybase datetime
data type instead of timestamp .
|
|
SB‑6862 | Not all databases have native blob support. | |
Description | For example, Microsoft SQL Server and Sybase do not have blob support. For these databases, you can write blobs into varbinary and possibly other types. But when blobs are read from a select statement, they are returned as strings, not blobs. | |
Workaround | Add a Map operator and convert the string to a blob. | |
SB‑5882 | Tuple dimensions do not reset counter when another dimension closes a window early. | |
Description | A tuple-based dimension that closes due to other dimensions (for example, after another dimension times out) does not reset its counter. When this happens, the next window will close based on the total number of tuples received, resulting in a partially full dimension. | |
Workaround | None. | |
SB‑4559 | Join timeout is not asynchronous. | |
Description | Join timeout in the Join operator is not asynchronous. That is, the Join operator does not remove a tuple from its buffer until the timeout has passed and another tuple arrives on the same input stream. Tuples received on one input stream do not affect the buffer of the other input stream. | |
Workaround | None. |
This section provides a list of errors corrected in release 10.6.0 of the TIBCO StreamBase® component of TIBCO® Streaming.
Fixed in 10.6.0 | |
---|---|
Number | Resolution |
TIBCO StreamBase® 10.6.0 incorporates all fixes resolved in the release 10.0 series through 10.5.0 and all fixes resolved in the release 7.7 series through 7.7.8. | |
SB‑49056 | The WITS adapter is now fixed to correctly use XML-encoded values for the heartbeat and line separator configuration values. |
SB‑49000 | The UDP Receiver adapter now correctly uses the ISocketDataTransformer interface instead of trying to cast to the BaseDataTransformer. |
SB‑48954 | The WITSML LogData Converter operator was not converting timestamps correctly. Time parsing is now the same between XML and the log data parser. |
SB‑48861 |
In some scenarios, the JMS Request/Reply operator would report an exception
error for the field, originalMessage . This was
fixed.
|
SB‑48783 | In release 10.5.0, the epadmin remove node command was not removing the System V shared memory segment if the node used System V shared memory. This was fixed. |
SB‑48706 | Fixed a problem that caused the JMS configuration editor to throw an exception while converting configuration settings from XML to HOCON. The exception occurred when the JMS/EMS adapters were not on the project classpath. The exception is now caught, reported to the user, and the conversion continues. |
SB‑48515 | In previous releases, string parameters in JSON format were not properly set at runtime. This was fixed. |
SB‑48393 |
If you had an engine configuration with a jvmTuning section prior 10.6.0, that section required a
scheduler policy (which is actually an optional setting). This was fixed.
|
SB‑48026 | A disk-based Query Table transaction locking issue that was intermittently causing null pointers when reading valid data was resolved. |
SB‑47978 | The LDAP Client adapter would report an NPE if the Connect At Startup option was used. This was fixed. |
SB‑47600 |
Previously, it was possible to set the parallelRegionQueues.defaultInitialBufferSize property value
to exceed the parallelRegionQueues.defaultMaxBufferSize property value and
still validate (unless both values were set to 16 or 32). Additional audit
steps are now added to prevent the initial buffer size value from validating
if it exceeds the max buffer size.
|
SB‑45727 |
If a Query Table uses a Table Schema defined elsewhere (for example,
.sbint file), Studio would incorrectly enable
the Partition drop-down menu; trying to use it would lead to problems in
trying to save the selected menu item. That problem is now fixed. When a
Query Table uses a Table Schema, you must now define a partition along with
the table schema's definition (for example, in the .sbint file where the table schema is defined). The
Partition drop-down now is disabled in the place where the Query Table
references the Table Schema, but the drop-down is enabled where the Table
Schema is defined.
|
SB‑45146 | In previous releases, a red square appeared in Studio's Welcome status bar in its bottom right corner because of a missing icon in the underlying Eclipse release, and this was much more pronounced on Windows than other platforms. That issue was corrected. |