StreamBase New and Noteworthy

Date: 5 Feb 2018

This topic summarizes the history of significant changes in TIBCO StreamBase® releases. For current and resolved product limitations, see the StreamBase Release Notes.

New in StreamBase 10.2.1

TIBCO StreamBase® 10.2.1 fixes several product limitations, as described in the Resolved Limitations and Known Issues sections of the Release Notes.

New Features

TIBCO StreamBase® 10.2.1 adds the following updates and new features:

New Python Operators

The TIBCO StreamBase® Operators for Python, and Python Instance, respectively, enable Python-centric teams to reuse their code without requiring major rewrites to execute event processing designs. See Python Operator Samples for sample usage and Using the Python Operator and Using the Python Instance Operator to learn more about their properties.

New Salesforce Streaming API Adapter

The TIBCO StreamBase® Input Adapter for Salesforce Streaming API is used to listen to streaming events from the Salesforce platform based on a given topic. See Salesforce Streaming API Adapter Sample for sample usage and Salesforce Streaming API Input Adapter to learn more about its properties.

New TIBCO ActiveSpaces® Operator Suite for ActiveSpaces 3

There is a new set of operators for ActiveSpaces 3:

  • TIBCO ActiveSpaces® Put, which adds or updates rows to a table.

  • TIBCO ActiveSpaces® Get, which retrieves rows from a table.

  • TIBCO ActiveSpaces® Delete, which removes rows from a table.

  • TIBCO ActiveSpaces® Query, which can send arbitrary SQL queries to the data grid.

  • TIBCO ActiveSpaces® Transaction Operations, which performs Commit and Rollback operations on the data grid.

  • TIBCO ActiveSpaces® Control, which allows your StreamBase application to connect to and disconnect from an ActiceSpaces data grid.

See Using the TIBCO ActiveSpaces Operators for information regarding the new suite. The operator suite that supports versions of ActiveSpaces prior to 3.0 is still available; their operation is described in Using the TIBCO ActiveSpaces 2 Operators.

New Cluster Publisher and Subscriber Adapters

The TIBCO StreamBase® Cluster Publisher and Subscriber Adapters allow StreamBase applications deployed on different nodes of a cluster to publish tuples to a given topic and allow the other nodes to access this tuple by subscribing to the same topic.

See Cluster Topic Publisher and Subscriber Adapters Sample for sample usage and Cluster Topic Publisher and Subscriber Adapters to learn more about their properties.

Distributed Router Operator Enhanced

The Distributed Router operator was enhanced as follows:

  • The operator now supports queuing tuples on route failures.

  • The operator now catches and logs routing errors instead of propagating them back to the caller.

Decision Table Operator Now Supports Capture Fields

The Decision Table operator now supports and passes through the capture data type.

HBase Adapter Suite Now Includes Custom Serialization and Deserialization

A new custom serialization interface was added to allow serialization and deserialization of HBase data. See Using Global Java Operators for more information on the TIBCO StreamBase® Adapter for Apache HBase suite.

Java Client API: New Capability for Operators

The Java Client API can now implement a new interface (com.streambase.sb.operator.parameter.StudioAssistSchemaFieldPicker) for Java operators to have Studio display a GUI schema field picker to set selected field names as the value of a String[] property.

TERR Version Updated

The version of TIBCO Enterprise Runtime for R Developer Edition included with StreamBase is now TERR release 4.4. As before, the Developer Edition is licensed for developer evaluation purposes only.

Docker Support Enhanced

SteamBase Runtime deployment is now supported in the following Docker environments:

  • VMware Fusion 10

  • Parallels Desktop 13 for Mac 13.2.x

  • VMware Workstation 14 Pro and Player for Windows

For a full list of supported Docker environments, see Supported Docker Environments.

macOS 10.13 High Sierra Supported

StreamBase now supports macOS 10.13 High Sierra for development environments. High Sierra has the same limitations as macOS 10.12 Sierra about starting StreamBase Studio and StreamBase Manager by double-clicking their .app files. See Starting StreamBase Studio on macOS Sierra for more on the workarounds for this limitation.

New epadmin node kill Command

A kill node command was added to simulate node failures to support automated testing of application high availability.

Deadlock Log File Location Changed

The deadlock.log file is now located in the logs subdirectory of the node directory.

RHEL 6 System Requirements Updated

On Red Hat Enterprise Linux 6 systems, the compat-expat1, gdb, sysstat, and perl packages must be installed. You can use the yum package manager to query and verify that these packages are installed.

New Documentation for Distributed Router Operator

This release includes new documentation for the Distributed Router operator.

Changes in Functionality

The following changes in functionality are present between releases 10.2.0 and 10.2.1.

Default Node Startup Time Increased

The default value of the epadmin start node command's maxretries parameter was changed to 300 seconds. The default startup time was changed to make automated testing more reliable on slower machines.

Cluster Monitor Default Port Change

The Cluster Monitor default LiveView listener port was changed from 10080 to 11080 to avert possible port conflicts in LiveView fragments in nodes being monitored.

System Environment Variables Now Used by Default

When running or debugging either an EventFlow or Java fragment in Studio, the launch configuration's Environment tab has an Append or Use choice. In StreamBase release 10.2.0, the default setting was Use specified environment only.

Starting with release 10.2.1, the default setting is Append environment. This gives fragment launches in Studio the same behavior as node installations with the epadmin command.

Also starting with release 10.2.1, Studio detects and blocks attempts to use the reserved environment variables TIBCO_EP_HOME or JAVA_HOME, whether explicitly set in the Environment tab, or inherited from the system environment. If either variable is detected, Studio presents a warning dialog. See Environment Tab for further details.

Deprecated Features

StreamBase 10.2.1 has the following deprecations.

Visual Studio 2010 for C++ and .NET Deprecated

Visual Studio 2010 for C++ and Visual Studio 2010 for .NET are now deprecated. TIBCO recommends using Visual Studio 2012 as the baseline for both C++ and .NET client development. See Supported Configurations for more information.

Migration and Compatibility

There are no migration or compatibility issues related to upgrading to Release 10.2.1.

New in StreamBase 10.2.0

TIBCO StreamBase® 10.2.0 fixed several product limitations, as described in the Resolved Limitations and Known Issues sections of the Release Notes.

New Features

TIBCO StreamBase® 10.2.0 added the following updates and new features:

Multi-node Support in Studio

StreamBase Studio now supports launching, debugging, and managing more than one execution node at a time. This allows you to test multi-node and HA configurations in Studio before moving to deployment commands. The features added or changed for this release to support multiple nodes are described on the new Running Multiple Fragments page.

As part of multi-node support, five views in Studio’s SB Test/Debug perspective now have a Fragment drop-down to allow you to select the active fragment of interest. You can now open more than one of each of these view types.

Node names and engine names for Studio-launched nodes now have names generated according to a configurable pattern, which lets you run the same module in different projects, or the same module several times from the same project, without encountering node name conflicts.

Logging Standardized on Logback

Logging for StreamBase classes and for for user-written classes has now converted to using a single logging system based on Logback. StreamBase now supports Logback configuration files that use either XML or Groovy syntax.

Windows Event Logging

As part of the standardization on Logback logging, StreamBase now supports logging to the Windows Event Log. See Windows Event Logging for more information.

Docker Support

Previous StreamBase 10 releases supported generating StreamBase Applications as Docker images ready for deployment in any Linux Docker host environment. This release adds support for Studio on MacOS and Windows to easily generate Linux-based Docker images. See Using Docker for more information.

Additionally, StreamBase 10.2.0 Docker support was validated to run on the CoreOS Tectonic Kubernetes platform.

SystemD Integration

This release adds support for systemD integration to start and stop StreamBase Application archives with standard systemctl commands on Linux hosts, and to support restarting StreamBase Runtime nodes on system reboot. See Configuring Linux as a Service.

Transactional Memory State Storage

Certain EventFlow operators can now be flagged to store their state in Transactional Memory. Parallel region queues now automatically use Transactional Memory.

CentOS Support

StreamBase now supports CentOS 7. See Supported Configurations for more information on supported configurations.

Native Library Support

StreamBase adapters that rely on native libraries (DLLs, .so files, .dynlib files) are now supported.

Cluster Monitoring

A new Cluster Monitor application uses a TIBCO LiveView™ Web interface to allow administrators to monitor and control many running nodes in a StreamBase Runtime cluster. See Cluster Monitor Application for instructions on running this application, and Runtime ClusterMonitor Configuration for its configuration.

Studio Support Wizard Added

Studio now includes a StreamBase Support Wizard to capture information in your Studio environment to help troubleshoot StreamBase Runtime issues.

TLS/SSL: Support Added for Client and Server Secure Communications

New security configuration HOCON objects were added to accommodate client-server communication authorization and authentication needs, with respect to truststore and keystore configuration. See Runtime Security Configuration and Using TLS/SSL with LiveView Server for more information on StreamBase and LiveDatamart using TLS/SSL.

The security HOCON configuration type was reconfigured to have the following root objects:

LDAP Authentication Realms
Local Authentication Realms
Local Admin Authentication Realms
Role-to-Privileges Mappings
Secure Communication Client Profiles
Secure Communication Server Profiles
Trusted Hosts
Create Application Archive Shortcut Added

To generate an Application Archive from a StreamBase Application project no longer requires invoking a Run AsMaven Install command. You can now right-click on the project's name in the Project Explorer view, and select StreamBaseCreate StreamBase Application Archive.When complete, the archive .zip file appears in the project's target folder.

Copying Cluster View Information Supported

The Clusters view now supports copying selected rows to the system clipboard as plain text or CSV values.

Cluster View Preferences Enhanced

The StreamBase StudioClusters panel in Studio Preferences now includes options to set default node name variables for EventFlow, LiveView, and Java fragment types. See Cluster Panel. Preference settings in that panel that no longer apply were removed.

Collapse All Button Added for Properties View Streams Panel

A Collapse All button was added to the Streams panel in the Properties view for both Input and Output Stream subtabs. This allows you optionally hide tuples with wide or deeply nested schemas, so that you can re-open the parts of the schema of interest.

WITS Adapters Added

Two new adapters were added to handle wellsite information transfer specification (WITS) data, of which currently level 0 is supported.

  • The TIBCO StreamBase® Adapter for WITS allows for receiving of WITS data from the serial comm port. See WITS Adapter for more information.

  • The TIBCO StreamBase® Adapter for WITS Controller allows for controlling of WITS adapter setup. See WITS Controller Adapter for more information.

Data Directory Sample Added

Studio now includes a sample which describes how to use the dataAreaPath configuration property within a configuration file of type HOCON. For more information, see StreamBase Engine Configuration and Data Directory Sample.

LiveView Project Error Message Changed

In Studio, the LiveView Project error message now states more explicit information when a project being deployed is invalid.

TIBCO Artifact Management Server

TIBCO® Artifact Management Server (AMS) is a companion product that provides a central storage and editing facility for business rules that you can run with the Decision Table operator in TIBCO StreamBase applications. To install and use TIBCO AMS, locate the latest StreamBase 10.2 release on eDelivery.tibco.com, and download the TIBCO AMS installer, using the Individual File Download method. Look for a file named with the following pattern:

TIB_sb-cep-ams_version_platform_architecture.extension

The TIBCO AMS installer's filename extension is .msi, .zip, .archive-bin, or .rpm-bin, depending on your operating system selection of Windows, macOS, or Linux. Use of the eDelivery site requires valid TIBCO customer login credentials.

Model File Support in Artifact Management Server

The TIBCO Artifact Management Server now supports storage and management of model files from TERR, Spark, PMML, and H2O numerical model frameworks, in addition to managing decision table files from StreamBase and Microsoft Excel.

New Artifact Deployment Service

The Artifact Distribution Service is an intermediary through which data files can be pulled from a TIBCO Artifact Management Server, release 1.2.x or later, to a TIBCO operator within an EventFlow module, or pushed from the Artifact Management Server to a running EventFlow module configured with a supported operator. In most scenarios, manual configuration of ADS is not required, although you can do so as explained in StreamBase Artifact Distribution Service Configuration. ADS replaces the TIBCO AMS operator, which is now deprecated.

The following operator samples demonstrate artifact transfer using ADS under the hood:

The Decision Table operator also supports artifact transfer using ADS.

Changes in Functionality

The following includes functionality changes between Release 10.1.1 and 10.2.0.

Trusted Hosts Configurations Enhanced

The Trusted Hosts root object in the security HOCON configuration type now includes support for fully qualified DNS names, or simple names in trusted host files.

Studio labels Using the Word Application Changed

As part of release 10.2.0's updated support for multiple node launches in Studio, the name of the Application Input view was changed to Input Streams, and the Application Output view is now Output Streams. You can now create more than one instance of these views at a time.

StreamBase Java Client API Changes for Cluster-wide Query

StreamBaseClient.readTable methods now perform a cluster-wide query. Previous releases performed a local node query. With this change, readTable now always returns all rows in a Query Table, even if the Query Table is partitioned.

HOCON Editor Supports Comment Actions

Studio's HOCON editor now supports using the standard Eclipse Ctrl+/ line comment and uncomment toggle action, as well right-clicking to toggle comment options via a context menu.

Deprecated Features

TIBCO AMS Operator Deprecated

The TIBCO AMS operator is deprecated in favor of the new Artifact Deployment Service described above, and is now removed from the removed from Studio's Palette view. If you are upgrading a StreamBase 7.7.x application that includes a TIBCO AMS operator, you must remove the operator and reconfigure the application to use ADS.

Lock, Unlock, and Lock Set Operators Deprecated

Deprecation of the Lock, Unlock, and Lock Set operators was announced in StreamBase release 7.2, but support for these features remained in the product to give legacy applications time to adjust. These operators were removed from Studio's Palette view as of StreamBase release 10.0.0. All internal support for the Lock, Unlock, and Lock Set functionality is expected to be removed in the next major release of StreamBase.

StreamBase-to-StreamBase Input and Output Adapters Deprecated

The StreamBase-to-StreamBase Input Output adapters are now both deprecated. TIBCO recommends using the Distributed Router operator instead, which is available in Studio's Palette view.

HOCON defaultjmscontainerconnectionsettings Configuration Type Removed

The defaultjmscontainerconnectionsettings configuration of type HOCON was removed to reflect that StreamBase does not support container connections over JMS or TIBCO EMS.

TIBCO StreamBase® CEP Connectivity Package Adapters Deprecated

The CEP Connectivity Package adapters are deprecated as of 10.2.0, which include:

  • TIBCO StreamBase Adapter for Alpha EMAPI

  • TIBCO StreamBase Adapter for Lime Brokerage

  • TIBCO StreamBase Adapter for Lime Citrius Market Data

  • TIBCO StreamBase Adapter for MarketFactory

  • TIBCO StreamBase Adapter for PlusFeed from Interactive Data

  • TIBCO StreamBase Adapter for Tervela

streambase.log-level Deprecated

For all supported operating systems, StreamBase now uses the industry-standard SLF4J logging system with the Logback framework. The streambase.log.level system property and its related STREAMBASE_LOG_LEVEL environment variable are deprecated. See Using StreamBase Logging.

Migration and Compatibility

Refer to the following for migration information when upgrading a pre-StreamBase 10.2.0 release to 10.2.0.

streambase.log-level Property Removed

The streambase.log-level system property is no longer active. Remove any use of this system property in deployment scripts and sbconf files. If the Studio Migration Wizard finds a legacy project's sbd.sbconf element that sets this property, and migrates it to the HOCON equivalent, remove that HOCON file setting in the migrated project. Make logging level declarations instead using Logback logback.xml configuration files (or equivalent files in the Groovy language) in your project's src/main/resources and/or src/test/resources folders. See the Logging section of the StreamBase Administration Guide.

Legacy Numeric Log Levels Mapped to Logback Levels

Legacy StreamBase numeric log levels are mapped to standard Logback severity levels as follows:

Numeric Level Logback Severity
-2 ERROR
-1 WARN
0 INFO
1 DEBUG
2 DEBUG
3 TRACE
HOCON Security Changes

The security configuration HOCON type was significantly reorganized into seven new root objects. If you have StreamBase 10.1.x projects that specify security settings in a HOCON file of type security, you must update those files. See the Configuration Guide page for security for guidance.

New logback-test.xml Version for All Samples

Samples for StreamBase and LiveView have included a logback-test.xml file since release 10.0.0. For 10.2.0, settings in that file were changed to root level = "INFO" instead of DEBUG. This file is located in the src/test/resources folder for each sample. The Logging sample is an exception because it illustrates logging methods.

Node Directory Location Change

Prior to 10.2.0, Studio created a node directorys for each launched node directly the workspace root directory. In 10.2.0, Studio keeps all node directories for its installed nodes in a normally hidden folder named .nodes at the root of your Studio workspace. On exit, Studio stops and removes all nodes it successfully installed, and therefore removes their node directories in .nodes.

Studio Recording View Replaced

Studio's Recordings view is now deprecated and removed; it was used in legacy releases to record and streaming data enqueued to the Input Streams of EventFlow fragments. Instead, use the epadmin start record command to capture input streams in CSV format, which can then be used as input for a feed simulation file that you construct with the Studio Feed Simulations Editor, or replayed with epadmin start playback.

Manual Input View Remembers Last Used Input Stream

When re-launching an application, Studio's Manual Input view now remembers the last used Input Stream.

Studio Option to Use Local Environment Variables in Launch Configurations

In Studio, the bottom of the Environment tab in the EventFlow Fragment and Java Fragment launch configuration now has a pair of radio buttons that let you user choose whether to include or exclude the current machine's environment variables.

The inclusion of local environment variables by default can also be specified for all node launches with a new Preferences setting in the StreamBase StudioLaunching panel. For backwards compatibility, the default preference value is to exclude local environment variables.

Documentation Updates

The StreamBase documentation set received significant updates to support the StreamBase 10.2.0 release. Highlights include:

New Concepts Guide

The new Concepts Overview describes the concepts and terminology of TIBCO StreamBase® and TIBCO® Live Datamart in two parts. The first part provides quick reference pages, one page per concept. The second part describes features in more architectural detail.

Getting Started Rewritten

Getting Started with StreamBase was completely rewritten to break pages into smaller pieces and to remove concept explanations that are now in the Concepts Guide.

Authoring Guide Updates

The first three sections of the Authoring Guide now describe Studio's Maven project format, and any other pages throughout were rewritten.

Test/Debug Guide Updates

The Test/Debug Guide's Running Fragments and Applications section is all new, with other updates throughout.

Administration Guide Updated

The Administration Guide has all new Logging, Docker, and Troubleshooting sections and Cluster Monitor page, as well as reworked JMX Monitoring, Java VM Memory, and Enciphering pages.

Configuration Guide

The Configuration Guide was updated to reflect changes in HOCON support, including new configuration types:

Samples Guide

The Samples Guide has numerous updates to support new adapters, as well as to address deprecated features.

Installation Guide

The Installation Guide has new Configuring Shells for StreamBase and Configuring Linux as a Service pages, as well as updates and clarifications throughout.

New in StreamBase 10.1.1

TIBCO StreamBase® 10.1.1 fixes several product limitations, as described in the Resolved Limitations and Known Issues sections of the Release Notes.

New Features

TIBCO StreamBase® 10.1.1 adds the following updates and new features:

Studio Menu Option to Create Additional Package Names Added

Studio now includes an option in the FileNew menu to create additional package names in the currently selected Maven-structured StreamBase or Live Datamart fragment project. The selected project must contain a src/main/eventflow folder, or the invoking the menu option which you can use to organize similar file types, for example. New package names must reside in your project folder's src/main/eventflow directory.

Deployment Parameters Support Added to Configurations

Deployment command line argument options were added to Studio's launch configurations for EventFlow, LiveView, and Java. The enhancements include changes to the Run Configuration, Debug Configuration, and Trace Configuration dialogs.

Upgrade Wizard Enhanced to Prevent Name Collision

The Upgrade Wizard now warns about fully qualified name collisions and renames clashing files. For more information, see Upgrading Legacy Projects to StreamBase 10.

Pure Maven Project Import Supported

If you saved a Maven EventFlow or LiveView project in Maven-only format without Eclipse artifacts such as .project or .classpath files, you can now import such projects using FileImportMavenExisting Maven Projects. Studio configures such projects in standard StreamBase EventFlow or LiveView fragment project format.

Projects exported with FileExportGeneralArchive File should still be imported with FileImportGeneralExisting Projects into Workspace.

New OSI PI Adapter

The OSI PI adapter suite now includes an Event Frames adapter which allows applications to access Event Frames on Asset Framework servers. The OSI PI adapters are described in OSIsoft PI Adapters and their use is demonstrated in OSI PI Adapter Sample.

New TERR Operators

The general purpose TERR operator was replaced with a new version that has upgraded functionality. The previous TERR operator is still present for compatibility with your existing modules, but its use is now discouraged. The previous TERR operator is now labeled TERR Legacy in the Insert Operator or Adapter dialog. TIBCO recommends upgrading your modules to use the new TERR operator.

This release also provides a new TERR Predict operator, which implements a locked down predict-only instance of TERR functionality. This operator is used to load RDS files and perform predict operations on them.

The TERR operators are described in Using the TERR Operator and Using the TERR Predict Operator. The TERR Sample provides modules that illustrate both new operators.

New WITSML Adapters

Four new adapters were added to the WITSML adapter suite. These are:

  • Three WITSML Trajectory adapters, which read, write, and delete trajectory records, respectively.

  • WITSML Log Data Convert adapter, which takes in data read from the Read Log adapter and converts the comma-separated strings to data tuples.

For information about their use, see Using the WITSML Operators.

Deprecations

Container Connections Over JMS Deprecated

Support for making EventFlow module container connections with the intermediary of a JMS or EMS bus is now deprecated, and will be removed in a future release.

New in StreamBase 10.1.0

TIBCO StreamBase® 10.1.0 fixes several product limitations, as described in the Resolved Limitations and Known Issues sections of the Release Notes.

New Features

TIBCO StreamBase® 10.1.0 adds the following updates and new features:

Project Upgrade Wizard Added

Every time StreamBase Studio starts, the current workspace is scanned for projects in the non-Maven format of a previous release. If any older format projects are found, an upgrade wizard prompts with a dialog like the following that offers to upgrade the project. For more information about its use, see Upgrading Legacy Projects to StreamBase 10.

Run Configuration Includes Option to Select Random Port

EventFlow and LiveView run configuration settings now include the option to select a random port. The Main tab of the Run Configurations dialog adds a third radio button, labeled Any available, in addition to the existing Configuration or default and Specified radio buttons.

HOCON Elements Relocated

The StreamBaseEngine HOCON file type's modules and containerConnections properties are now deprecated. A new configuration class, EventFlowDeployments, contains those properties, with identical documentation. See StreamBase Engine Configuration for more information.

Configuration File Support for Live Datamart

As part of StreamBase 10's re-introduction of Live Datamart in 10.1.0, the StreamBase HOCON editor now supports three Live Datamart-specific HOCON file types, as follows:

Eclipse Upgraded

Eclipse 4.6.2 is now the basis for TIBCO StreamBase Studio™. If you install the StreamBase Studio plug-ins into your own installation of Eclipse, version 4.6.2 is now the recommended starting point.

Typecheck Errors View Removed

The Typecheck Errors view was removed from Studio. Instead, use the Problems view or problem-specific dialogs when errors appear in your application or configuration.

HDFS File Delete Adapter Removed

The HDFS Delete adapter, deprecated in a previous release, was removed from Studio.

New in StreamBase 10.0.1

TIBCO StreamBase® 10.0.1 fixes several product limitations, as described in the Resolved Limitations and Known Issues sections of the Release Notes.

New Features

TIBCO StreamBase® 10.0.1 adds the following updates and new features:

Syncing Project POM files to Current Release

When opening a project created in a previous release, StreamBase Studio offers to update the project's POM file to refer to the currently installed product artifacts. These updates are available as Quick Fixes. By default, Studio runs all relevant Quick Fixes for you, or you can choose to run them at a later time from the Problems view.

JVM Options for Fragment Launching Supported

A VM arguments text box was added to the Advanced tab of the EventFlow Fragment launch configuration type's view, so that you can specify JVM options to use when deploying such fragments. Quoting can be used to include spaces in arguments, and backslashes can be used to escape quotes. The text box's tooltip shows how your text is parsed into the sequence of arguments.

Ability to Specify Default Debug Port Added

A new user preference allows you to select the number of the port used when an EventFlow fragment is launched in debug mode. In debug mode, an additional socket connection is required. The default port number used for that socket connection is 8000.

Specify the default debug port for all fragment launches using WindowPreferencesStreamBase StudioTest/Debug. You can also specify the debug port number for an individual fragment launch using the Main tab of an EventFlow Fragment launch configuration.

Log Level Setting in Run Configurations Added

The Run Configurations dialog, Advanced tab, now includes a configurable log level setting for a particular fragment launch. The higher the number you specify, the more messages and message types are sent to the Console view or to an output log file.

New Studio Demo Added

A new StreamBase Studio demo was added to the SB Demos perspective. The Financial - Transactions demo is a simple credit-debit application that makes use of a new feature available only in StreamBase 10, the transactionality and rollback available to StreamBase Query Tables.

Clusters View Remove Node Buttons Behavior Change

When you select the Forceful Remove button, if the node is not in the started state, the button deletes the node. If the node IS in the started state, then a dialog more explicitly explains that using the button does NOT gracefully shut down any running fragments on the node.

When you select the Remove button and your node is not in the started state, nothing occurs visibly. That is, StreamBase Studio executes the corresponding epadmin command while a dialog is displayed. However, when the node IS in the started state, the action invoked by the button depends on whether Studio deployed the current fragment (as opposed to an epadmin command line deployment). The resulting dialog more explicitly explains the action Studio takes, depending on your deployment scenario.

Duplicate File Basenames Prevented at Runtime

To prevent a potential runtime error, two resources with the same file basename with different extensions are no longer allowed, and this is enforced at runtime. For example, abcde.sbapp and abcde.sbint in the same project are not allowed.

Configurations Folder Relocated

In the Project Explorer view, the src/test/configurations folder is now displayed as a top-level item. Previously, you had to navigate through the src entry to locate this folder.

EventFlow Editor's Metadata Tab Labeling Change

The top-level panel of the Metadata tab was previously labeled Application Description. Now it is labeled Module Description, to more accurately describe its intended contents.

Studio File Menu Labeling Change

The FileNewStreamBase EventFlow™ Application menu changed to StreamBase EventFlow™ Module to more accurately describe the intended file creation type.

Jetty Upgraded

In StreamBase Studio, the Jetty web server version was upgraded to 9.3.14.v20161028. The upgrade applies to, for example, the TIBCO StreamBase® Web Server Request adapter and the TIBCO StreamBase® Web Server Response adapter, as well as for developing your own applications that require Jetty.

ActiveSpaces Reference Version for ActiveSpaces Operators

TIBCO ActiveSpaces release 2.2.0.017 is now the default version of TIBCO ActiveSpaces used by the TIBCO ActiveSpaces operators.

Adapters Deprecated

The following adapters are deprecated and removed from this release:

  • The Legacy EMS and JMS Input and Output Adapters and their samples. For EMS or JMS connectivity, use the current versions as described in TIBCO EMS Adapter and JMS Adapter, respectively.

  • The Legacy ActiveSpaces operator and its sample. For the current ActiveSpaces operator, see Using the TIBCO ActiveSpaces Operators.

  • The Drools operator.

sbconfutil Command Deprecated

As of 10.0.1, the sbconfutil command is deprecated and removed.

sbunit Command Deprecated

As of 10.0.1, the sbunit command is deprecated and removed.

New in StreamBase 10.0.0

TIBCO StreamBase® 10 is a new product milestone with new features. Like previous releases, StreamBase 10 preserves the same easy-to-use programming interface that allows developers to quickly assemble the business logic of a stream analysis application with drag and drop efficiency. The StreamBase editing environment allows you to develop and test event processing applications much faster than when using a traditional programming language.

At the same time, StreamBase 10 now runs on a new StreamBase Deployment Runtime, which is based on TIBCO's Distributed Transactional Memory platform (DTM) platform. The StreamBase Runtime provides:

  • Transactions — high performance, distributed all-or-none, ACID-compliant processing of events as an option for StreamBase Query Tables.

  • In-Memory Durable Object Store — ultra low-latency transactional persistence.

  • Transactional High Availability — transparent memory-to-memory replication with instant failover and fallback.

  • Distributed Computing — location-transparent objects that allow transparent horizontal scaling.

  • Integrated Hotspot JVM — tightly integrated Java execution environment that allows transparent low latency execution.

New Features

TIBCO StreamBase® 10.0 has the following major features:

StreamBase Studio Now Uses Maven

StreamBase Studio projects are now in Maven project format, and all projects are built and run under Maven control. The Run As context menu now includes several Maven commands and goals.

The change to using Maven gives you a well-known, thoroughly documented, and standard way to specify inter-project and within-project dependencies. Maven automatically configures search paths for code in specified dependencies, replacing StreamBase 7's proprietary module search path feature. Maven also manages resource search paths automatically.

Execution With sbd Is Replaced with DTM-Based StreamBase Runtime

Once your StreamBase 7 project is ported to StreamBase 10 format, you can run or debug your project in Studio as before. Select the top-level EventFlow module in your project, right-click, and select Run AsEventFlow Fragment. This starts a single-cluster, single-engine node in which your EventFlow module runs.

The Manual Input view works as in previous StreamBase releases to send single-tuple events to your module. The Feed Simulation view works as before, if your project has one or more feed simulations ready to run.

To test your EventFlow Fragment running in the context of a distributed application, you must create a separate Deployment Application project in Studio, add your EventFlow Fragment's archive to that project, and then use the new epadmin command at the command prompt. This process is described in more detail in Deploy with epadmin. Documentation for the epadmin command is available from usage text such as epadmin help node, or from the full command reference page in the DTM documentation at this location.

Studio Now Provides a Clusters View

The Clusters View shows the nodes present in the current DTM cluster. By default, the Clusters view shows you only the nodes in your personal cluster, which is your system username by default. You can toggle on or off a view of all clusters in the DTM fabric, which is configured to be the local IP subnet by default. In this alternate view, you can see nodes that you started as well as nodes from other local users.

A DTM node is a container for a fragment, which runs on an engine. When you run your EventFlow Fragment in Studio, Studio configures and starts a node named by default A.username, which means Studio's default node name is A, and its default cluster name is your current logged-in user name. You can change these defaults in Studio Preferences, StreamBase StudioCluster.

See Concepts Overview for more on StreamBase Runtime terminology.

New Configuration File Format

StreamBase 10 introduces a new file format, HOCON, for specifying configuration information. With one exception, the XML-based StreamBase configuration file format of previous releases is no longer supported. StreamBase Studio provides a new HOCON Configuration Editor that offers syntax coloring, command completion, and other convenience features.

HOCON stands for Human-Optimized Configuration Object Notation, and has a formal specification. HOCON is a superset of the JSON array syntax.

Each HOCON configuration file is completely defined by three lines that must be at the top of the file. Each HOCON file is uniquely identifiable from others by these lines, which allows two or more configuration files to reside in the same folder.

HOCON configuration files must have the .conf extension. Place HOCON configuration files in the src/main/configurations folder of your Studio project. Use the HOCON Configuration Guide to learn the syntax of each file type.

The exception to using HOCON format files is that certain adapters rely on adapter configuration files in XML syntax. Support for configuration files whose top level is <adapter-configurations> are still supported. Place such files in the src/main/resources folder of your Studio project.

Development Environment Changes
  • Your command-line development environment must include the path to a system-installed JDK, in addition to the JDK bundled with StreamBase Studio. The system JDK is for running the epadmin command and its subcommands, as described in Installing a Command Line JDK.

  • Your shell environment must include the environment variable TIBCO_EP_HOME set to the same location as STREAMBASE_HOME.

  • In addition to STREAMBASE_HOME/bin, your PATH must include STREAMBASE_HOME/distrib/tibco/bin.

  • On Windows, always use a StreamBase Command Prompt, which sets the above environment and PATH settings for you.

  • On macOS and Linux, set up your shell environment to call the sb-config --env command inside of back quotes as described in the Post-Installation Setup sections of the Installation Guide pages for those operating systems. Use the full path to the sb-config command, such as in the following example for macOS:

    `/Users/sbuser/Application/TIBCO StreamBase 10.0.0/bin/sb-config --env`

    And the following example for Linux:

    `/opt/tibco/sb-cep/10.0/bin/sb-config --env`

Documentation Available

The documentation for StreamBase 10 is extensive, but incomplete. The following books in the documentation set are completely updated for StreamBase 10:

The other books in the StreamBase documentation have partial updates, but should be presumed to primarily describe StreamBase 7 features. In some cases, such as the Authoring Guide, StreamBase 7 and StreamBase 10 features are largely the same. Each book has a note on its home page describing the update level of that book.

Documentation for the StreamBase Runtime is provided separately at this URL.

If You Are Familiar With StreamBase 7

If you have developed with StreamBase 7, pay attention to the following differences.

Start With a New, Unused Studio Workspace

Do not try to open a StreamBase 7 Studio workspace in Studio 10. There is no conversion process provided to convert your projects into the newly required Maven project format. Instead, open Studio 10 with a new, unused workspace and port your projects one by one, following the guidance in Project Upgrade Reference.

First Run Takes Several Minutes

The first time you open and run a new or ported project in StreamBase 10, Studio follows the instructions in the Maven pom.xml file and downloads all the necessary JAR files from various external resources. This can take several minutes.

First Open of a Large Project Takes Time to Build

When you first open a large project, such as the Operator Sample Group taken from the Load StreamBase Sample dialog, the project opens with red marks, indicating typecheck errors. Notice, however, that the bottom right corner of Studio shows the message Building Workspace.

Let this build operation complete and the typecheck error marks will resolve.

Known Issues

The following issues are present at the time of the initial StreamBase 10 release.

Live Datamart Not Yet Supported

StreamBase 10 does not yet support running Live Datamart programs as fragments under the new StreamBase Runtime management.

Many Samples Not Yet Converted

Many of the samples loadable from the FileLoad StreamBase Sample dialog are not yet converted to the Maven project format. When you load an unconverted sample, Upgrade Wizard offers to convert the sample for you. To determine whether a sample has been converted, look for "SB10" at the beginning of its description field. To reduce the dialog to the list of only converted samples, type "SB10" in the search field.

Component Exchange Projects Not Converted

All StreamBase and Live Datamart projects on the StreamBase Component Exchange remain in StreamBase 7 project format. When you download and install these components, convert them to StreamBase 10 format using the Upgrade Wizard.

Windows 10 Start Menu Issues

StreamBase has long supported the installation of more than one major StreamBase release on the same Windows machine, and still does. However, a change in the way Windows 10 supports Start Menu folders makes all StreamBase releases appear together in a single TIBCO folder, without distinction between releases. Future releases of StreamBase are expected to correct for this Windows 10 change, but cannot do so retroactively for currently installed releases.

EventFlow Debugger Limitations

The EventFlow Debugger works as expected for a single module EventFlow fragment, but fails to navigate to breakpoints set in submodules.

StreamBase Unit Test Feature Not Working

The Run AsStreamBase Unit Test feature is not yet implemented. You can instead run Java Junit tests using the Maven Test feature, which reports its results in the Console view.

Runtime Performance Issues on Windows

The start time when running EventFlow fragment launches on supported Windows platforms is decreased from previous StreamBase releases, and from the same fragment on other supported operating systems.

Limited Adapter Support

Not all adapters have been updated or tested with StreamBase 10.

Deprecated and Removed Features

The following features present in previous StreamBase releases are either deprecated or removed from StreamBase 10.

Trace Debugging

The trace debugging feature of StreamBase Studio is not supported in StreamBase 10, and the SB-Trace Debugger perspective was removed from Studio. Trace debugging is still supported at the command line using new HOCON file settings to enable trace files.

Zing ZDK

StreamBase 10 does not support using a Zing ZDK as an alternative to the provided Oracle JDK. Zing ZDK support may return in a future edition of StreamBase 10.

Running StreamBase Runtime as a Windows Service

StreamBase 10 does not support running the StreamBase Runtime as a Windows service. The StreamBase 10 Windows installer no longer places initial entries in the Windows registry to prepare for service running.

Running StreamBase Runtime at Linux Start-up

StreamBase 10 does not support being automatically started as part of the boot process of a Linux-based server. The StreamBase 10 Linux installer no longer provides /etc/init.d commands for this purpose.

Remote Attachment for Debugging

StreamBase Studio still has support for debugging your EventFlow modules while running them in Studio. However, the StreamBase Runtime no longer supports the remote attachment feature that lets you debug a running EventFlow module from another machine on your network.

Security Tagging

StreamBase 10 does not support the security tagging feature of previous releases.

Certain Command-Line Tools Not Included

StreamBase 10 removes the sbd, sbargen and sbbundle commands. The sbconfutil and sbfeedsim-old commands are still present, but do not run. (The functionality of sbd --eval is expected to be replaced with a new command in a later release.)

Troubleshooting

Run Maven Clean

If you encounter any issues with starting and running EventFlow Fragments, try selecting the project name in the Project Explorer, right-clicking, and selecting Run AsMaven Clean.

Run Maven > Update Project

For projects that show persistent Maven build issues, select your EventFlow project's name in the Project Explorer view, right-click, and select MavenUpdate Project.

Remove ~/.m2 to Start Completely Over

To start from scratch with a new installation of StreamBase 10, remove the com/tibco portion of your local Maven repository before reinstalling StreamBase 10. By default, your local Maven repository is in the .m2 folder of your home directory. For macOS and Linux users, you can run:

rm -rf ~/.m2/repositories/com/tibco

On Windows, use a file manager window to locate the .m2 folder, which is written by default at the top of your /Users/loginname folder.