StreamBase 10.4.1 Release Notes

These were the release notes for the TIBCO StreamBase® component of TIBCO® Streaming 10.4.1.

New Features

TIBCO® Streaming 10.4.1 added the following updates and new features:

Oracle LogMiner Adapters Added

This release adds the following two adapters, which when used together, allow a StreamBase application to monitor changes to an Oracle 12c and later database using Oracle LogMiner:

These adapters are illustrated in a sample.

WITSML Operator Now Includes Data Output Options

The WITSML Log Data Converter operator now has an Output Type option to output data as a list of key-value pair tuples. This new option is designed to enable more generic data use.

Web Server Adapters Now Support SSL for Both HTTPS and wss

The Web Server Request and Response adapters were updated to support SSL for both HTTPS and wss.

WebSocket Client Adapter Now Supports wss

The TIBCO StreamBase® Read Adapter for WebSocket Client now includes an Advanced tab to support wss configuration.

Python Operators Enhanced

The Python operators were enhanced as follows:

  • The Python Operators now support pulling artifacts from a running TIBCO Artifact Management Server, which is a separately installed product. See the operator page for details.

  • The operators support loading models stored as resources in StreamBase projects. See Running the P04-Script-Resource Sample in the Python sample page, which demonstrates three ways to load a Python script.

  • To improve troubleshooting, the Python and Python Instance operators now provide more error message details when deserialization of a given object fails.

Generated Log Messages for Initialized Default Availability Zone Improved

The number of log messages generated when the default availability zone is initialized are both significantly reduced and made clearer.

Stop Node Error Message Clarified

When a node stop is requested, but some of its configuration cannot be deactivated, the error message that appears now includes the path of the engine log relative to the node directory.

New Options Added to epdev Command for Maven Artifact Management

Three new clean-related arguments and the maven-home option were added to the epdev command for Maven artifact management and cleanup. See the epdev reference page or epdev --help for further information.

Oracle JDK Version Updated

The Oracle JDK version bundled with StreamBase and Live Datamart is now JDK 1.8.0_u191.

StreamBase Runtime Now Supports Amazon Linux 2

The StreamBase Runtime now supports the Amazon Linux 2 operating system. For StreamBase support details, see this page.

StreamBase Studio Now Supports macOS 10.14 Mojave

Studio now supports macOS 10.14 Mojave as a development environment. However, Mojave's dark mode is not supported because of Eclipse compatibility issues. When first selecting the Open StreamBase Command Terminal Here feature in Studio, you are prompted for permission to control the terminal.

Oracle VM VirtualBox 5.2 Now Supported for Runtime Deployments

StreamBase Runtime deployments are now support Oracle VM VirtualBox 5.2 as a Docker environment.

Changes in Functionality

This release includes the following changes in functionality:

Studio Displays Additional Progress View Details When Loading Workspace

When Studio opens a workspace, several system checks occur that previously could briefly show a blank EventFlow Editor canvas, depending on how many projects are being checked. Studio now displays a message at the top-left of the canvas that reads Verifying project dependencies... Clicking the message brings up the progress view to show details about the ongoing operation.

Version Information Now Checked for Java Projects

Studio now checks the version information for Java fragment projects, to make sure it matches the currently installed version of StreamBase. An Eclipse Quick Fix is offered to bring the versions up to date when necessary. (This check was formerly performed only for EventFlow and LiveView fragment projects.)

Add Container Command Integrated with Artifact Distribution Service

The epadmin add container command was integrated with ADS so that the container's operators now receive artifact notifications when the container is added via epadmin.

Default Availability Zone Now Created Upon Node Start

Prior to this release, a default availability zone was not created until a fragment was launched. Now, the availability zone is created when the node starts; a fragment launch is not required. This behavior change is expected to improve stop and restart performance on slower machines.

Manual Input View Now Shortened

Studio no longer automatically widens the Manual Input view to accommodate the longest text in the Fragment drop-down list. Prior to 10.4.1, the Manual Input view in the SB Test/Debug perspective could become too wide if its Fragment drop-down list contained long text, which could possibly push nearby buttons out of sight to the right or down.

Hover over the drop-down list to display all the text in a tooltip.

Confirm Node Stop Dialog Now Includes Do Not Show This Again Check Box

For convenience, in the Clusters view, the Confirm Node Stop Dialog now includes a Do Not Show This Again check box.

Kafka Consumer Commit Adapter Now Links Qualified Names to Kafka Consumer Adapter

By design, the Kafka Consumer adapter does not output the fully qualified adapter name with each tuple. Now, the Kafka Consumer Commit adapter can optionally take in that fully qualified name to link back to the Kafka Consumer adapter to perform the commit.

Date Format Now Changed on the WITSML Input Adapters and XML2Tuple Operator

Previously, the XML parser could not handle dates such as 2018-12-09T07:59:27.3057523Z because it used the SimpleDateFormat from Java. The WITSML Input adapters as well as the XML2Tuple operator now use a revised date format.

For example, this change replaces a string format such as 2018-12-09T07:59:27.3057523Z with one that looks like 2018-12-09T07:59:27.305+0000 before a parse is attempted.

Deprecated and Removed Features

StreamBase 10.4.1 has the following deprecations.

Cluster Publisher and Subscriber Adapter Suite Now Deprecated

The TIBCO StreamBase® Cluster Publisher and Subscriber Adapter suite is now deprecated and is expected to be removed in a future release.

StreamBase-to-StreamBase Adapter Suite No Longer Deprecated

The TIBCO StreamBase® SBD-to-SBD Input (Downstream) Adapter and the TIBCO StreamBase® SBD-to-SBD Output (Upstream) Adapter were previously announced as deprecated. As of this release, these adapters are removed from deprecation.

Certain Twitter-deprecated Functionality Now Deprecated in Twitter Adapters

User Streams, Site Streams, and Direct Message endpoints are deprecated and longer available from Twitter. As a result, when trying to use those deprecated functions in the Twitter input or output adapters, the respective Status port now generates information regarding the deprecated API. For adapter configuration, see Twitter Input Adapter and Twitter Output Adapter.

Migration and Compatibility

On macOS, Do Not Open Studio 10.4.0 After Using Studio 10.4.1

StreamBase Studio from release 10.4.1 will open your 10.4.0 workspace without requiring any conversion or upgrade. Thus, there should never be a need to return to using Studio from release 10.4.0 after installing 10.4.1.

This is not an issue on Windows, where maintenance releases replace the base major.minor release. That is, you cannot have StreamBase 10.4.0 and 10.4.1 on the same Windows machine using standard installation procedures. On macOS, however, multiple StreamBase maintenance releases can easily coexist. Therefore, it is important on the Mac to not open Studio 10.4.0 once you have installed and used 10.4.1. And never open both Studio 10.4.0 and Studio 10.4.1 at the same time.

The reason is the shared configuration directory. Starting with release 10.4.0, StreamBase Studio maintenance releases use the same configuration directory as the primary release. That is, releases 10.4.1, 10.4.2, and so on, all use the same Studio configuration directory as the one initially configured for 10.4.0. This feature allows Eclipse plug-ins that you added to Studio in the base release to still be present when you install and use a maintenance release.

The configuration directory is not the Studio workspace, but is a separate storage location for Studio metadata. See Default Installation Directories .

StreamBase Resolved Issues

This section provides a list of errors corrected in release 10.4.1 of the TIBCO StreamBase® component of TIBCO® Streaming.

Fixed in 10.4.1
Number Resolution
TIBCO StreamBase® 10.4.1 incorporates all fixes resolved in the release 10.0 series through 10.4.0 and all fixes resolved in the release 7.7 series through 7.7.5.
SB‑45617 Setting a status code on the Web Server Response adapter via the Status Code Field Name property now properly disconnects a websocket with that status code. Setting a null status code keeps the websocket active.
SB‑45616 The Web Server Response adapter could consume 100% of the available CPU at idle in some circumstances. This was fixed.
SB‑45592 There was a problem where, after starting a StreamBase application launch in Studio, if that launch was terminated relatively early, an entry could appear in the Error Log view complaining of an Unexpected exception, involving a NullPointerException with a stack trace whose top element mentions stopTransferringOutputToConsolePage. This problem was resolved.
SB‑45563 The MQTT Client Subscribe adapter would filter out inbound topics when matching against a wildcard. This was fixed.
SB‑45554 While using the EventFlow debugger, the Debug view may have incorrectly shown lines that started with (not in workspace!) followed by an absolute path to an EventFlow module file. This situation could happen when debugging a source from a project that did not exist in Studio's workspace file system tree. That problem was fixed.
SB‑45498 Any File Writer adapter could NPE if data was written before a file was opened. This was fixed.
SB‑45492 Configured node types were incorrectly treating fragment dependencies as top-level fragments in some cases, which incorrectly caused engines to be created for the dependent fragments. This was corrected.
SB‑45490 In some scenarios, Studio would prompt to save a file twice. For example, if you modified an EventFlow fragment and ran it without saving first, a dialog may prompt to Auto-Save unsaved changes. Declining to save may prompt again to save changes. This was fixed.
SB‑45473, SB‑45251 When hitting an EventFlow breakpoint during debugging, the current thread in Debug view is often not selected. To address this, Studio now adds two buttons to the Debug view toolbar. One is an up-arrow, the other is a down-arrow, and each has a small pause double-bar icon over it. You can use them to automatically find the next or previous suspended thread in the Debug view, and automatically select the top stack frame of that suspended thread.
SB‑45423 Direct output from a Python process is now propagated to the logging framework. Previously, the stdout and stderr streams from the Python process were redirected to the low-level streams of the JVM process running the StreamBase server. It was difficult to find the warning and debug statements that originated from the Python code. With this change, the output is processed as any other output from platform components using the common framework.
SB‑45395 This release fixes an issue in which the automated conversion of JMS adapter configurations, to HOCON format, added duplicate quotation marks to server and/or destination names, under certain conditions.
SB‑45362 The WITS adapters were updated to address potential socket communication failures. The adapters now use PureJavaComm version 1.0.2; new reconnection logic was also added.
SB‑45322 Running the epadmin display engine command could fail if your configuration's trusted host authentication was disabled. This was fixed.
SB‑45321 In Studio, the Refactor>Rename option would fail when renaming input streams. The Refactor option was updated to now use StreamBase 10's fully qualified name convention.
SB‑45316 Schema typechecking was improved to catch an invalid null value being used to initialize a list.
SB‑45303 The WITSML Log Data Convert adapter would incorrectly assume the logCurveInfo contains an index field. If that field was not present but the mnemonicList field was present instead, the index would become out of order. The adapter now checks for the mnemonicList field in the logData field, and uses that as the column index for the logCurveInfo.
SB‑45280 An issue prevented WITSML write operators from filtering out empty values. This was fixed.
SB‑45264, SB‑45265, SB‑45266 The epadmin display engine and display services commands inconsistently displayed EventFlow service records for (a) URI information when engines were stopped, (b) applications that were deployed with the autostart=false option or (c) whether engines were stopped and started when random ports were specified. These related issues were fixed. For (c), the service records are now removed whenever an EventFlow or LiveFlow fragment is stopped.
SB‑45255 The epadmin display artifact command previously displayed the wrong artifact file path. The command now displays the path of the artifact file on the node executing the command. Previously, it displayed the path of the file on the artifact's active node. If the artifact file does not exist on the node executing the command then Not Cached on node name is displayed.
SB‑45253 It was possible for an epadmin browse services process to be left running after Studio exits. One use case was: open Studio and close the Clusters view in all perspectives and restart Studio. Then upon exiting Studio, such an orphaned epadmin process would be left behind. This was fixed.
SB‑45242 Removing the VM arguments from an EventFlow fragment launch had no effect on subsequent re-launches, until Studio was restarted. Changing the arguments such that some VM argument text remained DID work, however. This was fixed.
SB‑45241 The Diameter adapter was fixed so it now correctly checks AVP data lengths.
SB‑45240 This release fixes an issue in the Decision Table's Table Analyzer view that prevented the Analyze operation from functioning properly.
SB‑45234 This release fixes an issue with the presentation of some adapter settings in the StreamBase Properties view. For affected adapters, raw field names are displayed, with no customized support (descriptive names, tool tips, and so on). This issue affected the Feed Simulation and Microsoft .NET adapters, as well as LiveView Alert configuration.
SB‑45110 Changing the default distribution listener addresses using the distributionListenerInterfaces property in a node deploy configuration could cause the partitions in the default availability zone to fail over. This was fixed.
SB‑43774 This release fixes an issue that affected editing Query Table schemas — with the Definitions tab open, Studio correctly grayed-out the Query Table's partitioning options yet incorrectly kept them active. This was fixed.
SB‑30850 Studio's adapter selection dialog could hang in cases where the selected adapter required Maven downloads. This was fixed.