StreamBase Release Notes

TIBCO StreamBase 10.2

Date: 5 Feb 2018

This page contains the release notes for TIBCO StreamBase® release 10.2.1.2 with internal tracking number 258178.

Before You Install

Before you install TIBCO StreamBase® software:

  1. Read this Release Notes document.

  2. Confirm that your target system matches the hardware and software requirements discussed on Supported Configurations.

  3. Read the Installation Guide.

More Information

  • For a summary of what's new in this release, see New and Noteworthy.

  • If you are new to StreamBase, read Getting Started after installation.

  • See the documentation home page to begin exploring the StreamBase documentation. The StreamBase documentation set is available as part of your StreamBase installation in several ways:

    • In TIBCO StreamBase® Studio, select HelpHelp Contents from the menu. This is the best option, and provides a searchable help system.

    • On Windows, open All ProgramsTIBCOStreamBase n.mStreamBase User DocumentationStreamBase n.m User Guide - HTML

    • From the installed file system, open the documentation home page in a web browser. The default locations are:

      Linux    /opt/tibco/sb-cep/n.m/doc/index.html
      Windows
          C:\TIBCO\sb-cep\n.m\doc\index.html
      macOS
          {customer-specific-folder}/TIBCO StreamBase n.m.x/doc/index.html

      To open the documentation directly to the TIBCO Live Datamart sections, open the file lvindex.html instead.

Customer Support

Contact Information contains information about available support options. You can send us email or get information from your TIBCO representative about our support portal.

Resolved Limitations

The following sections provides lists of errors corrected and features updated in each new and maintenance release of TIBCO StreamBase, in descending release order.

Limitations Resolved in 10.2.x

Fixed in 10.2.1
Number Resolution
TIBCO StreamBase® 10.2.1 incorporates all fixes resolved in the release 10.0 series through 10.2.0, and all fixes resolved in the release 7.7 series through 7.7.2.
SB‑42876, SB‑42867 An issue caused the Bidirectional Socket adapters to incorrectly set the byte order encoding. This was fixed in all Bidirectional Socket adapters.
SB‑42875 The epadmin enqueue command would not roll back transactions in some situations when an error occurred. For example, data in a Query Table could be committed instead of rolled back. This was resolved.
SB‑42839 In previous 10.x releases, in the Query operator's Initial Contents tab, the Load initial rows from a resource file control failed to consider files in the project's src/main/resources directory. This was corrected.
SB‑42830 In previous 10.x releases, the epadmin enqueue stream command was not transaction deadlock-safe when reading from standard input. This would cause the command to hang if a deadlock occurred enqueuing a tuple. This was fixed. Any deadlocks are now correctly rolled back when reading from standard input.
SB‑42828 The Kafka sample could fail to run due to temporary files being created that could not be properly accessed. This was fixed.
SB‑42790 When using the Cluster Monitor on clusters where no StreamBase JVMs (EventFlow or LiveView) are discovered, the LiveView Web cards, EventFlow/LiveView Amount of Heap Memory In Use and EventFlow/LiveView Total Current Queue Depth could show an error because the corresponding tables were not created yet. The tables required to display these cards are now created in advance to prevent this error possibility.
SB‑42750 The StreamBase Studio tooltip for the primaryMemberPattern object in the node.conf configuration file type was updated to reflect its correct default value, .* (all nodes matched by default).
SB‑42732 Release 10.2.1 fixes a problem that could occur when importing a StreamBase schema from an XSD definition. When importing lists of referenced types, the importer was incorrectly using the name of the list, rather than the type of the list elements.
SB‑42704 In release 10.2.0, fragment launches in Studio were configured to use only environment variables explicitly specified in the Environment tab of the launch's Run Configuration. Starting with release 10.2.1, Studio's default was reversed to match the behavior of the epadmin command, which is to inherit the system environment at node install time. See Environment Tab for further details.
SB‑42658 In certain circumstances, configuring an availability zone in a configuration file using the loadOnNodesPattern property would fail to add partitions. This issue was resolved; if the local node matches loadOnNodesPattern, then the partition is added to the local node even if it is not the active or backup node.

For more information about availability zones, see Runtime Node Configuration and High Availability in Depth.

SB‑42648 In previous 10.x releases, running an epadmin command against a node that was not currently running incorrectly returned success. This condition was corrected to allow epadmin commands to report an error when run against a node that is expected to be running but is not. This change does not affect commands that are designed to work against an inactive node, such as epadmin node target.
SB‑42625 The resume container epadmin command previously reported failed commands as being successful. This was fixed and the command now correctly returns both an error message a non-zero return code.
SB‑42515 Release 10.2.1 now correctly displays system container information when running the epadmin display container command.
SB‑42411 Release 10.2.1 fixes an issue in which two audit logs were created: an empty file in the node directory's logs subdirectory, and the real audit file in logs/audit.log.
SB‑42397 The Create a snapshot button in the toolbar of the Clusters view now opens its selection dialog in the .nodes folder of the current Studio workspace. This corrects an issue where (a) Windows users had to know the full system path to their Studio workspace folder to get to the .nodes directory, and (b) StreamBase now displays the previously invisible .nodes folder on the Mac.
Fixed in 10.2.0
Number Resolution
TIBCO StreamBase® 10.2.0 incorporated all fixes resolved in the release 10.0 series through 10.1.1, and all fixes resolved in the release 7.7 series through 7.7.1.
SB‑42604 The StreamBase server process was incorrectly allowing timestamp-related functions in expressions that required pure functions. This was corrected.
SB‑42338 If a node deploy configuration is loaded during fragment deployment, it was not deactivated and removed when the fragment was terminated. This was fixed.
SB‑42086 The Spark MLlib Operator sample documentation page was updated to include the correct URL to download the Spark MLib 1.6.0 binary distribution.
SB‑41670 In previous releases, a decision table using BusinessEvents style expressions required a leading zero for fractional values of type double. For example, MyField > 0.02 was required, and > .02 would produce an error. This restriction was lifted.
SB‑41589 The XML2tuple and tuple2XML operators can now use XSLT to transform the XML into forms more acceptable.
SB‑41352 A Java memory leak could occur in internal StreamBase Runtime-generated code for native methods that returned arrays. This was fixed.
SB‑41047, SB‑30970 EventFlow fragment launch history is now remembered in fragment launch menu items.
SB‑32231 Intermittent compilation failures could occur when deploying EventFlow fragments. The cause was identified and corrected.
SB‑31471 Commented out substitution variables in configurations specified in a node deploy configuration file would syntax errors. They are now correctly ignored.
SB‑31461 Closing a window containing the StreamBase Command Prompt that was used to install a node would terminate the node. This was corrected.
SB‑31282 The externalNativeLibraryPath parameter was ignored in StreamBase engine configuration files when a fragment was deployed. This was fixed.
SB‑31233 Terminating a LiveView fragment before it completed initialization would cause the engine termination timer to expire, which in turn caused the node to be brought down with an error.
SB‑31198 A launched LiveView fragment could fail to shut down within the shutdown timer following a duplicate port failure. This was corrected.
SB‑31040 Properties primaryMemberPattern and backupMemberPattern are being ignored in node deploy configuration files. This was fixed.

Limitations Resolved in 10.1.x

Fixed in 10.1.1
Number Resolution
TIBCO StreamBase® 10.1.1 incorporates all fixes resolved in the release 10.0 series through 10.1.0, all fixes resolved in the release 7.7 series through 7.7.0, and all fixes resolved in the release 7.6 series through 7.6.7.
SB‑30812 In previous releases, there was no means to specify a particular engine name when deploying EventFlow or LiveView fragments. Launch configuration dialogs now include an optional field for entering engine names.
Fixed in 10.1.0
Number Resolution
StreamBase 10.1.0 incorporated all fixes resolved in the release 10.0 series through 10.0.1, and all fixes resolved in the release 7.6 series through 7.6.7.
SB‑30454 Release 10.1.0 fixes an issue in which Studio was not correctly resolving cross-project resource references.
SB‑30444 An EventFlow typechecking error occurred when referring to adapters defined in a dependent project. This was resolved.

Limitations Resolved in 10.0.x

Fixed in 10.0.1
Number Resolution
TIBCO StreamBase® 10.0.1 incorporates all fixes resolved in the release 7.6 series through 7.6.6.
SB‑30293 When you create a new project, Studio generates a test file that references the name of the EventFlow fragment just created. In some cases, Studio did not use the fully qualified name of the fragment, but instead used only the basic name such as FTPGet.sbapp, instead of com.tibco.sb.sample.ftp.FTPGet.sbapp. This was resolved.
SB‑30284 In 10.0.0, if a Java fragment was run in debug mode on Windows, selecting the Terminate button could lead to a failure where the symptoms included the appearance of a Runtime Error dialog. This problem was fixed.
SB‑30229 When connecting to a JDBC data source, the JDBCDataSource configuration file's userName and password parameters were ignored in some cases. This problem was resolved.
SB‑30220 An error caused a newly created package folder to appear twice in the Project Explorer. This was fixed.
Fixed in 10.0.0
Number Resolution
  The StreamBase 10.0.0 release represents a new launching point for TIBCO StreamBase.

Known Limitations

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

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

Known Issues for the StreamBase Runtime are provided separate at this location.

SB‑42478 Cluster Monitor can fail to start in some circumstances.
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‑42408 ADS: load failure if artifact is not replicated on each node.
Description Using dynamic partitioning for the Artifact Distribution Service (ADS) will cause duplicate key errors when loading artifacts, if the artifacts are not replicated to all nodes in a cluster.
Workaround Ensure that artifacts are replicated to all nodes in a cluster.
SB‑42407 Artifacts reported as missing and duplicate created after cluster shape change.
Description The Artifact Distribution Service (ADS) can report existing artifacts as missing and create duplicate artifacts after a node is added or removed from a cluster, if high availability is not configured.
Workaround Configure high availability for ADS if the cluster shape is going to be changed.
SB‑42093 Reloading entire node deploy configuration in a cluster failing.
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 Reloading entire node deploy configuration in a cluster failing.
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‑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‑30948 Trouble using the TERR operators on macOS.
Description On macOS, EventFlow modules that use the TERR operators fail to start even when using the Use Embedded TERR check box. This includes the TERR operator samples shipped with StreamBase.
Workaround TERR requires 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 VirtualBox network adapter slows fragment startup on Windows.
Description If you have Oracle VM VirtualBox® installed, and one or more of your virtual machines has its network adapter activated, this slows down the launch of EventFlow and LiveView fragments into a StreamBase Runtime node by several minutes.
Workaround Temporarily disable the network adapter feature of your VirtualBox VMs while launching fragments in either StreamBase Studio or with the epadmin command.
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‑29576 Web Server Request adapter in Maven builds needs a certain jetty.jar
Description When building a StreamBase application with Maven, where the application uses the Web Server Request adapter, the wrong version of the required Jetty JAR file is selected by default.
Workaround The StreamBase distribution includes two versions of the Jetty JAR file for different purposes. Configure your Maven POM file to require the Jetty JAR file shipped in $STREAMBASE_HOME/lib/ext for use with this adapter.
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 Live Datamart 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 rpm -e fails as an uninstallation method.

Workaround Remove StreamBase directories manually to uninstall an RPM installation on RHEL 7. Otherwise, all StreamBase and Live Datamart processes run as expected on RHEL 7.
SB‑26927 <MyNamedSchema> is not a function that can be called error.
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 <MyNamedSchema> is not a function that can be called. This compilation behavior and language ambiguity was introduced with the function data type in StreamBase 7.4.0.
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‑16555 Doubled menu items in Windows Start menu.
Description The Start menu should be cleared when a previous StreamBase release is uninstalled, so that you only see menu entries for the most recently installed release. However, on systems with more than one StreamBase release installed (such as releases 6.4 and 6.5), the uninstaller can sometimes fail to remove the old entries from the Start menu. In previous releases, this was not an problem, because the new installer (for, say, 6.5.3) would simply overwrite the same entries for the previously installed release (say, 6.5.1).

However, starting with release 6.5.4, the StreamBase installer now adds the release number to Start menu entries for the StreamBase Command Prompt and for links to documentation. If an uninstaller fails to clean up the Start menu for a previous 6.5 release, you may see both old and new style links.

Workaround Uninstall the most recently installed release (such as 6.5.4). Manually remove its entire Start menu folder (such as Start(All) ProgramsStreamBase 6.5), then reinstall the new release.
SB‑14133 sb-config --cxx returns a setting for G++ 4.3, 4.4, or 4.5 on newer Linux distributions
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++ 4.3, 4.4, or 4.5 compiler, which is not 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.2, and edit the Makefiles to specify CXX=g++-4.2.
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‑13303 Reuters RFA Configuration File wizard appears to not connect under Windows Vista or Windows 7.
Description Under Windows Vista and Windows 7, you can run the Reuters RFA Configuration File wizard, but the wizard's Test Connectivity page shows a red X and the Test Connection button remains dimmed.
Workaround This wizard makes changes to the Windows registry, and under the Vista and Windows 7 security model, registry changes require administrator permissions. For these operating systems, use the procedure described in Special Steps for Windows Vista, 7 and 10.
SB‑13113 Application output 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‑13021 JDBC database errors related to string lengths.
Description Due to the removal of string lengths in StreamBase as of release 6.3, some static checking of JDBC table sizes is no longer possible. This can lead to database-specific errors, possibly including data truncation, if a StreamBase application attempts to insert into a JDBC table string values that are too wide for the JDBC table's schema.
Workaround None.
SB‑11117 Test Editor might not update changes in an open Feed Simulation file.
Description If a StreamBase Feed Simulation file is modified while a Test Editor is open that references that feed simulation, the Test Editor may not update its contents until it is closed and reopened.
Workaround Close the Test Editor before editing a Feed Simulation file referenced in the test.
SB‑10983 Reuters RFA Publishing Adapter not shipped for Linux
Description Because of a change in C++ libraries, the Reuters RFA Publishing external adapter is not shipped for Linux in StreamBase 6.x or 7.x.
Workaround Use the new Reuters RMDS Publishing embedded adapter.
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, StreamSQL fails to convert timestamps, resulting in typecheck errors. This is because the Sybase timestamp is based on the Sybase varbinary data type.
Workaround In StreamSQL 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.
SB‑2507 Java Client library IOException when client program is suspended.
Description A program using the StreamBase Java Client library may receive an unexpected IOException if it is suspended (using either Ctrl+Z, or kill -SIGSTOP). The IOException is thrown when the program is resumed, or placed in the background. The exception may be thrown even if there is no network traffic at the time. This issue does not apply to Windows systems.
Workaround Do not suspend StreamBase clients written in Java.