Release Notes

TIBCO StreamBase 7.5

Date: 2 Jun 2015

This page contains the release notes for TIBCO StreamBase release 7.5.3.2.

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 and Solaris
          /opt/tibco/sb-cep/n.m/doc/index.html
      Windows
          C:\TIBCO\sb-cep\n.m\doc\index.html
      Macintosh OS X
          {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.

    • If you were provided an installation DVD-ROM or disk image, open doc/index.html or doc/lvindex.html in a web browser.

Customer Support

Contact Information contains information about available support options. You can send us e-mail 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 maintenance release of TIBCO StreamBase, in descending release order.

Limitations Resolved in 7.5.x

Fixed in 7.5.3
Number Resolution
TIBCO StreamBase® 7.5.3 incorporates all fixes resolved in the release 7.4 series through 7.4.4 and in the release 7.3 series through 7.3.12.
SB‑27913 The Web Reader adapter was not correctly returning the error stream message when it failed. This was fixed.
SB‑27905 In previous releases, if you set one output port, perhaps port 1, of a Filter operator to emit on condition true, then later moved the true condition to another output port, such as port 3, the operator could incorrectly see both ports 1 and 3 as the true condition stream, potentially corrupting the data sent over one or both ports. The cause was identified and corrected.
SB‑27904, SB‑27902 Two fixes for the Tuple to JSON conversion routines were made: (1) JSON data with mixed numeric and string data types in a list can now be correctly converted into a list of strings. (2) JSON to tuple operations can now properly convert lists of lists of unnamed field data into list<list<tuple>> based on field index. These corrections affect several internal conversions in StreamBase as well as the Tuple2JSON adapter.
SB‑27875 The OSI PI adapter was failing to provide the OSI PI default login information when the user name and password fields of the adapter's Properties view were left blank. This was corrected.
SB‑27873 The OSI PI AF adapter was incorrectly gathering historical data. This was fixed such that the adapter now applies the requested date to both the database and the retrieval of data.
SB‑27835, SB‑27528, SB‑27509 Several issues with using the TIBCO StreamBase High-Performance FIX Engine were corrected, including a heartbeat loop issue, a problem starting a session when using a custom Acceptor module, and an Illegal Thread State Exception thrown.
SB‑27809 In previous releases, the byte array output from Tuple.serialize() of a generated-class sub-tuple would incorrectly include its parents' fields as well. This was fixed.
SB‑25218 In the Field Serializer global operator, inner tuple field data was not being correctly updated in subsequent uses of the operator. This was corrected.
Fixed in 7.5.2
Number Resolution
TIBCO StreamBase® 7.5.2 incorporates all fixes resolved in the release 7.4 series through 7.4.4 and in the release 7.3 series through 7.3.12.
SB‑27817 The feed simulation mechanism was incorrectly populating generated tuples based on index in the feed simulation specification's field list, and the corresponding index in the generated tuple's field list. If the field names were the same but in different orders, field values would be assigned to the wrong fields. This was fixed: field names are now correctly used instead of indexes.
SB‑27777 Previously, in rare cases, a Query-Write operator could cause a spurious row deletion in the table. The case was, In a write or update Query operator, if an impure expression was used as a key's match expression, two different values for the key could appear during the course of the write or update operation. (An impure expression is one that evaluates to different values every time it is called.) This led to unexpected and undefined behavior, such as rows being deleted randomly.

The fix was to make sure StreamBase only evaluates the key's expression one time and thereafter caches its value, regardless of the key expression's purity.

SB‑27753 Generating an sbbundle from Studio could produce a bundle that failed to start, while generating a bundle on the same project from the command line with the sbbundle command produced a normal working bundle. The cause was identified and corrected.
SB‑27714 A rare corner case could result in a Duplicate index error that had no visible cause or fix. The cause was identified and corrected. For the record, the rare case is: a hygienic parent module has two module references, both of which are non-hygienic, and one of the sub-module's tables is a placeholder and wants to be overridden by the other sub-module's table.
SB‑27704 The Bloomberg B-Pipe Input adapter now correctly handles same field names between data feeds.
SB‑27702 The FxAll Relationship Trading Provider adapter was throwing a null pointer exception when a message contained <FwdPoints></FwdPoints>, which resulted in a null integer value. The cause was identified and corrected.
SB‑27685 The TIBCO Spotfire Automation Services Output adapter now correctly handles files that have the UTF-8 BOM code as the first byte of the file.
SB‑27684 Including more than one asterisk in an expression would cause a typecheck error even when the specified expansions did not conflict. This was fixed.
SB‑27681 In the IBM WebSphere MQ Input adapter, the payload of incoming EBCDIC-encoded MQ messages was being translated to strings using the default character set instead of the appropriate EBCDIC character set. This was corrected.
SB‑27680 The Feed Simulation adapter was failing to convert fields of the list data type into list fields for the target input stream. This was fixed.
SB‑27670 The Bidirectional Socket adapter was updated to provide speed improvements.
SB‑27643 In previous releases, if a schema field had the same name as a built-in or custom Java function, calling that name resulted in a warning about an ambiguous reference. Starting with this release, StreamBase's name resolution order is honored without a message. That is, the built-in or custom function is always called first. You can disambiguate fields named with with a reserved term by prefixing the field name. For example, a field named random can be distinguished from the internal random() function by referencing it as input.random.
SB‑27635 Starting a LiveView project could result in a java.util.ConcurrentModificationException exception. The cause was identified and corrected.
SB‑27513 The High Performance FIX engine could fail to disconnect initiators after a scheduled stop of a session. This was fixed.
SB‑27509 A High Performance FIX Engine session with a mid-day session gap could prevent an acceptor from accepting connections. The cause was identified and corrected.
SB‑27433 The Deutsche Bank AutobahnFX Classic FIX execution handler (part of the Trading Components Framework) was failing to process SWAP trade requests. This was corrected.
SB‑27287 The CSV File Reader adapter now correctly reports the line number in error messages.
SB‑27318 Releases 7.3.0 and 7.3.1 did not fully take into account an OS X Yosemite change in the way Mac OS X handles LD_LIBRARY_PATH entries. In OS X version prior to Yosemite, any entries added to the LD_LIBRARY_PATH were automatically added to DYLD_LIBRARY_PATH; but starting with Yosemite, such double adds to both path must be handled manually. This only affects OS X users building client applications or custom functions with C++ on OS X.
Fixed in 7.5.1
Number Resolution
TIBCO StreamBase® 7.5.1 incorporates all fixes resolved in the release 7.4 series through 7.4.4 and in the release 7.3 series through 7.3.12.
SB‑27612 In release 7.5.0, StreamBase Studio's remote execution feature failed to connect to remote StreamBase Servers. The cause was identifed and corrected.
SB‑27581 The Log adapter was producing an error message if the Compress Frequent Messages option was enabled. This was fixed.
SB‑27536 The Web Server Request adapter was emitting incorrect payloads when it encountered a large concurrent request count with a large body payload. The cause was identified and corrected.
SB‑27487 The sbprofile -f filter option, which matches a regular expression against operator and queue names to restrict output, was not working for streams. This was corrected.
SB‑27481 The sbmonitor command-line app was showing multiple entries for the same stream. This was fixed.
SB‑27456 The output order of table columns returned by SELECT statements was arbitrary when indices were hashed. This was corrected to preserve the ordering of columns in Query Tables.
SB‑27441 Calling unique() on the output of another list function sometimes caused a code generation error or a null pointer exception at run time. This was fixed.
SB‑27439 POST requests to the TIBCO StreamBase® Web Server Request adapter could generate duplicate requests when one of the endpoints was subordinated to another one that failed to respond quickly enough. This was fixed.
SB‑27436 The TIBCO StreamBase® Web Server Request adapter now returns an HTTP ONLY field for cookies. Cookie fields were re-ordered to enable their direct streaming into the response side. For other updates to this adapter, see New and Noteworthy.
SB‑27375 In release 7.5.0, the Thomson Reuters demo in the SB Demos perspective was failing to send data to its Java client. This was corrected.
SB‑26408 StreamBase Studio reported spurious typecheck errors for valid parent schemas when passed down through multiple levels of module imports. This was corrected.
SB‑25565 The Order property of Query Delete operations did not function correctly when the Ascending direction was selected. This was fixed.
SB‑25403 The sbc readTable -v command displayed tupleid=0 for all dequeued tuples, rather than a sequence of numeric values. You can now specify that sequential or hashed values be assigned for returned tuple IDs by setting the Java property streambase.appgen.tupleid to sequential or hash, respectively. If you do not set this property, tuple IDs are still all reported as 0. For further information, see sbc.
Fixed in 7.5.0
Number Resolution
TIBCO StreamBase® 7.5.0 incorporates all fixes resolved in the release 7.4 series through 7.4.3 and in the release 7.3 series through 7.3.12.
SB‑27381 The TIBCO StreamBase® Adapter for Exegy was ignoring its isAggregated flag for subscription requests, causing prices to be returned in the default format (merged or expanded) of the XCAPI library. The library returns expanded prices by default in versions prior to 3.2.0 and merged (aggregated) prices thereafter. This was fixed
SB‑27305 Removing an arc issuing from a sub-module could make an application's internal state inconsistent with its Eventflow representation. This was corrected.
SB‑27303 Under certain conditions, removing a Filter operator predicate from the Predicate Settings tab triggered a null pointer exception. This was fixed.
SB‑27297 Previously, when a Query operator's input schema was not compatible with the schema of the table that it was reading or writing, a compile error resulted. Now, a typechecking error is generated that describes the problem. In addition, implicit casts to the string data type, which was formerly deprecated, is now disallowed. Instead of generating a warning, attempts at such casts now produce a typecheck error.
SB‑27292

Previously, if the schema of a stream in a hygienic inner module did not match that of the outer module, StreamBase would attempt to rectify the mismatch and proceed without issuing an error. In some situations, however, this could cause ArrayIndexoutOfBound exceptions. Now, if the schemas do not match, you receive a typecheck error saying so.

Caution

If any of your applications have been relying on this lack of strictness, they may now start to fail typechecking. Reported will be: the source and target of the mismatched streams, the number of fields in each, and a list of schemas. To fix, either change the schemas supplied to and expected from modules to have identical field names and data types (order of fields is not important), or mark the inner module as flexible. For more information, see mark the inner module as flexible.

SB‑27288 The TIBCO StreamBase® Adapter for Deutsche Bank Autobahn FX Rapid was reporting quotes as Indicative instead of Tradable. This was fixed.
SB‑27285 You can now define a dynamic variable without providing an update expression. Whatever initial value you provide for the variable will not change. Formerly, doing this raised an error and Studio prompted you to enter an expression for updating the variable.
SB‑27256 In certain use cases, the CSV File Reader input adapter caused typecheck errors because it hard-coded schema names for outbound tuples that could clash with existing schema names. This was corrected.
SB‑27188 Previously, when you used expressions as secondary table indices, those indices would not be used, causing a table scan to be performed. This was fixed.
SB‑27090 To fix a divide-by-zero issue, the slope() and intercept() functions were modified to return zero when a window contains a single point (that is, one row) or multiple identical points (that is, duplicate rows containing the same values).
SB‑27042 Parameter substitution in previous releases consisted of simple text substitution at runtime. This caused a situation where parameters that referenced other parameters saw only the values of the referenced parameters, not the parameter itself. For example, an expression might include:
top=3, bot=2, div=${top}/${bot}
But at runtime, ${div} was actually div=3/2. Thus, when you updated the values of ${top} or ${bot}, those updates were not reflected in ${div}. This was corrected to produce the expected results.
SB‑26912 Previously, the CSV File Writer output adapter provided no notification if its output file was deleted during execution, causing its output to be silently discarded. This is fixed, so that now this condition generates a status event of type Error on the event port.
SB‑26885 The File Reader Input adapter was updated to handle fast rates of incoming control port tuples specifying the names of file to be read. Prior to this fix, the adapter might read the same file multiple times instead of processing multiple files in sequence.
SB‑26798 In some situations, for example in Aggregate windows, assigning values to tuple subfields could cause all of the fields to acquire the same value. For example, specifying:
(1 AS a, 2 AS b, 3 AS c) AS myTuple

might produce an erroneous result such as:

(1 AS a, 1 AS b, 1 AS c)

This was corrected.

SB‑26627 Exporting a bundle from StreamBase Studio could fail with a class loader exception such as Lcom.streambase.fastjson.parser.Feature; cannot be loaded via the given classloader. This was fixed.
SB‑26623 Previously, jsbc dequeue when used with the -v option (to output human-readable tuples) could not output tuples in JSON format. The fix also now allows you to output JSON tuples from sbc dequeue. The sbc utility can now input and issue tuples in JSON format with the -v option, which only jsbc could do previously.
SB‑26469 Previously, in a field grid, when you DECLAREd a field having the name of an existing field and then referenced the field, you did not get any warning or error. Now you get warned that this reference is ambiguous. For example:
the reference to field "x" is ambiguous; you must qualify the field reference
 with one of "input.", "input1.", "new."
SB‑25101 You can now declare an aggregate function and reuse it. Previously, only simple functions could be declared in the Aggregate Functions tab of an Aggregate operator.
SB‑24925 Previously, a field that you included in the output grid of a Map or other operator could not be referenced from subsequent entries within that grid. This is now possible.

Note

  • Only simple expressions can be referenced in this way.

  • If the included field has the same name as an existing dynamic variable, the field will be shadowed by that variable. In such cases, applications can receive warnings about name-shadowing, but they are safe to ignore.

SB‑22255 In previous releases, an unused import warning would be issued in Studio for EventFlow applications that define a constant or function that references an imported named schema. This was corrected.
SB‑20430 A CancelledKeyException was sometimes thrown by the StreamBase HTTP Server for a key that was no longer valid. This was fixed to eliminate such exceptions.

Limitations Resolved in 7.4.x

Fixed in 7.4.4
Number Resolution
TIBCO StreamBase® release 7.4.4 incorporates all fixes resolved in the release 7.3 series through 7.3.11.
SB‑27574 An issue with nested lists when using the Log adapter's custom format expression field was fixed.
SB‑27497 Using a declared expression as an argument to included tuple expressions could cause compilation errors with signatures like File Unknown, Line -1, Column -1: Expression "_vnnn" is not an rvalue. This was corrected.
SB‑27466 When a Metronome operator was configured to Drop delayed tuples it could incorrectly emit timestamps in the future, instead of the most recently seen timestamp within its specified interval. This was fixed.
SB‑27441 Calling unique() on the output of another list function sometimes caused a code generation error or a null pointer exception at run time. This was corrected.
SB‑27381 The TIBCO StreamBase® Adapter for Exegy was ignoring its isAggreated flag for subscription requests, causing prices to be returned in the default format (merged or expanded) of the XCAPI library. The library returns expanded prices by default in versions prior to 3.2.0 and merged (aggregated) prices thereafter. This was fixed
SB‑27364 When multiple schemas were moved from one application to another by refactoring, inconsistent serialization resulted, generating typecheck errors. This was fixed
SB‑27352 Query operator connections to data constructs that used escaped identifiers were not being loaded correctly. This was fixed.
SB‑27305 Removing an arc issuing from a sub-module could make an application's internal state inconsistent with its Eventflow representation. This was fixed.
SB‑27303 Under certain conditions, removing a Filter operator predicate from the Predicate Settings tab triggered a null pointer exception. This was fixed.
SB‑27297 Previously, When a Query operator's input schema was not compatible with the schema of the table that it was reading or writing, a compile error resulted. Now, a typechecking error is generated that describes the problem. In addition, implicit casts to String type, which was formerly deprecated, is now disallowed. Instead of generating a warning, attempts at such casts now produce a typechecking error.
SB‑27293 In the 7.4.3 release, when attempting to run an EventFlow application from Studio created a compilation exception, its sbd process failed to exit, consuming processor cycles and potentially preventing Studio from launching subsequent applications. This was fixed.
SB‑27288 The TIBCO StreamBase® Adapter for Deutsche Bank Autobahn FX Rapid was reporting quotes as Indicative instead of Tradable. This was fixed.
SB‑27256 In certain use cases, the CSV File Reader input adapter caused typecheck errors because it hard-coded schema names for outbound tuples that could clash with existing schema names. This was fixed
SB‑27251 In very rare instances when many StreamBase clients attempted to connect to a server simultaneously, the server could enter an unresponsive state from which it was unable to recover. The cause was identified and corrected.
SB‑27192 In previous 7.4.x releases, selecting an arc on the canvas failed to display the EventFlow editor prompt Select the input/output stream <name> to declare a schema that you could click to immediately edit its schema. This was corrected.
SB‑27188 Previously, when you used expressions as secondary table indices, those indices would not be used, causing a table scan to be performed. This was fixed.
SB‑27164 The FIX adapter could run out of memory as a result of making continued attempts to connect while a counterparty is down. This was corrected.
SB‑27090 To fix a divide-by-zero issue, the slope() and intercept() functions were modified to return zero when a window contains a single point (that is, one row) or multiple identical points (that is, duplicate rows containing the same values).
SB‑27056 Query operators displayed the names of tuples whose types were named schemas simply as "tuple," rather than keeping the names of the named schemas. This was fixed, so that named schemas are no longer anonymous in output schemas.
SB‑27031 When a StreamBase server was running an application on a debug port, the Manual Input view in the SB Test/Debug perspective could fail to connect to it, reporting No Running StreamBase Application. This was fixed.
SB‑26798 In some situations, such as in Aggregate windows, assigning values to tuple subfields could cause all of the fields to acquire the same value. For example, specifying:
(1 AS a, 2 AS b, 3 AS c) AS myTuple

might produce an erroneous result like:

(1 AS a, 1 AS b, 1 AS c)

This was corrected.

SB‑26627 Exporting a bundle from StreamBase Studio could fail with a class loader exception such as Lcom.streambase.fastjson.parser.Feature; cannot be loaded via the given classloader. This was fixed.
SB‑26408 StreamBase Studio reported spurious typecheck errors for valid parent schemas when passed down through multiple levels of module imports. This was corrected.
SB‑25298 When configured for the log4j logging back end, the StreamBase server failed to log shutdown messages. If the StreamBase server fails to start as a result of a port conflict, the resulting port-conflict shutdown message was lost, making it hard to diagnose this condition. This was fixed.
SB‑24246 Environment variables used within StreamBase configuration files of bundled applications could fail to get expanded. In some cases, this caused the bundled application to fail to launch. This was corrected.
Fixed in 7.4.3
Number Resolution
TIBCO StreamBase® release 7.4.3 incorporates all fixes resolved in the release 7.3 series through 7.3.11, and in the release 7.2 series through 7.2.15.
SB‑27044 Metronome and Heartbeat operators indicated typecheck errors when custom functions were used in interval expressions. This was fixed.
SB‑26921 When importing a named schema to use as a table schema in the Interface Editor, the schema's fields failed to display in the Primary Index tab, forcing the user to manually copy and paste the fields into the Edit Table Schema dialog to assign index fields. This was fixed.
SB‑26912 Previously, the CSV File Writer output adapter provided no notification if its output file were deleted during execution, causing its output to be silently discarded. This is fixed, so that now this condition generates a status event of type Error on the event port.
SB‑26878 Using a custom function in an adapter property field could cause spurious typecheck errors, which could be ignored. This was fixed.
SB‑26860 When reopening a saved table schema in which the primary index type was set to Hash, StreamBase Studio reset the index type to Btree. This was fixed.
SB‑26856 Calling mergelist() or filterlist() from user functions caused compilation errors. This was fixed.
SB‑26838 Calling sort() from user functions caused null pointer exceptions. This was fixed.
SB‑26763 Certain FIX counterparties violate the FIX spec during logon when the initial logon message contains ResetSeqNumFlag(141)=Y by replying with a logon message that does NOT also contain 141=Y. Because this is incorrect behavior, by default the High-Performance FIX Engine will refuse the logon reply and disconnect from the counterparty. If you wish the engine to overlook the omission and consider the logon reply valid, add the following line to your fixengine.properties file: ignoreSeqNumTooLowAtLogon=true
SB‑26885 The File Reader Input adapter was updated to handle fast rates of incoming control port tuples specifying names of file to be read. Prior to this fix, the adapter might read the same file multiple times instead of processing multiple files in sequence.
SB‑26804 At startup, an application with deeply nested modules could generate a ConcurrentModificationException. This was fixed.
Fixed in 7.4.2
Number Resolution
TIBCO StreamBase® release 7.4.2 incorporates all fixes resolved in the release 7.3 series through 7.3.11, and in the release 7.2 series through 7.2.15.
SB‑26819 A threading issue prevented the File Writer adapter from appending data to or overwriting an existing file. This was fixed.
SB‑26818 Errors were received when attempting to disable the control and status ports of the File Writer output adapter. These were fixed.
SB‑26815 Invoking join() more than once within an Aggregate operator raised a ClassFormatError warning and prevented the application from producing further output. This was fixed.
SB‑26744 When configuring a Pattern operator, selecting value as the Window Type without first specifying a field for Order Field resulted in a Null Pointer Exception. This was corrected, and now results in a typecheck error.

Important

The Pattern operator's polling-interval parameter is no longer supported, and causes an error if it is present. To correct your applications, open your EventFlow module's .sbapp files in a text editor and search for the string polling-interval. If found, remove the entire <param> element that contains that string.

SB‑26732 Setting tuple fields to null could cause the fields to be set to tuples of null fields instead of null tuples. This was fixed.
SB‑26720 The High-Performance FIX adapter would hang when logging off if the counter-party did not send a Logout reply message. This was fixed.
SB‑26689 StreamBase apps containing Aggregate operators whose emit and emit-all parameters had the same predicate, or whose close and close-all parameters had the same predicate, would cause compilation errors with the signature: name is not an rvalue. This was fixed.
SB‑26676 The skeleton file produced by sbd -s failed to parse on RHEL 4 and earlier RHEL 5 distributions due to an apparent bug in their ICU (International Components for Unicode) library. This issue is now sidestepped by making sure that generated StreamBase configuration files contain the ASCII single-quote character instead of the same character in UTF-8 encoding.
SB‑26674 The TIBCO StreamBase Output Adapter for TIBCO Spotfire Automation Services was incorrectly reporting a typecheck error when using Microsoft Windows authentication and a password was supplied. This was fixed.
SB‑26660 Errors in expressions that referenced a field name specified with the old. prefix could cause a Null Pointer Exception. This was fixed.
SB‑26590 StreamBase Studio project configuration synchronization now correctly creates project-relative paths in cases where the project does not physically reside under the workspace root.
SB‑26583 After using a named schema in a Java operator, if you set that schema to Private Schema in the Edit Schema tab, the module no longer typechecked, even though the schema did not change. The Definitions tab showed the schema as (unnamed) and would not allow you to remove it, and once saved, StreamBase Studio would no longer open the module. This was fixed.
SB‑26421 A malformed formatstring argument passed to the parse_time() function caused StreamBase server to crash after its first invocation. This issue was corrected such that the server now warns at start-up time if it detects a parse_time() function with a malformed formatstring.
SB‑26198 Initialization of the TIBCO StreamBase® Operator for TIBCO ActiveSpaces® would fail when connecting to the ActiveSpaces Metaspace took too long. This was fixed.
SB‑25581 When installing StreamBase Studio as an Eclipse plug-in from the StreamBase Studio Eclipse Update Site, it is no longer necessary to clear the Group Items By Category check box in order to see available updates.
SB‑22750 In the JMS adapter documentation, the configuration example for ActiveMQ servers incorrectly specified the <jms-server> connection-factory-name attribute as org.apache.activemq.ActiveMQConnectionFactory. The string was changed to ConnectionFactory, which is a correct value.
Fixed in 7.4.1
Number Resolution
TIBCO StreamBase® release 7.4.1 incorporates all fixes resolved in the release 7.3 series through 7.3.11, and in the release 7.2 series through 7.2.15.
SB‑26517 The sbconf file synchronizer introduced in release 7.4.0 now correctly handles path names containing trailing slashes.
SB‑26441 The TIBCO StreamBase IBM WebSphere MQ Output Adapter option Queue When Connection Down was added in 7.3.10 to make the adapter queue rather than reject tuples when the connection to the MQ server is down, and then process the queued tuples when the connection is restored. Now, when this option is NOT selected, status messages are issued when a tuple is sent to the MQ server, allowing the application to know whether or not the tuple was published. This restores the behavior prior to 7.3.10.
SB‑26436 The TIBCO StreamBase Output Adapter for UDP (Sender) was causing high CPU loads while connected. This was fixed.
SB‑26429 Sometimes attempting to link a data arc to a module with placeholder tables did not work, even when table names and schemas matched. As a result of this fix, now when a data arc to a table in a referenced module is deleted, all mappings to the table or reference at the other end of the data arc are cleared.
SB‑26398 Previously, you were not able to use named schemas inside a function's body or inside the first argument to eval (as when using sbd --eval "expr" file.sbapp) or compile without explicitly including them. Now you can reference a named schema, such as Point, like this:
eval("Point(1 AS x, 2 AS y)", Point())

In previous releases, you would need to use the full expression:

eval("Point(1 AS x, 2 AS y)", tuple(* AS *), Point())
SB‑26389 The TIBCO StreamBase Input Adapter for Deutsche Bank Market Data did not properly set the arrival time when using a variant of CustomSpot or CustomSwap. This was fixed.
SB‑26340 Due to changes in StreamBase Studio 7.4.0 to make StreamBase lists compatible with Java arrays, custom function resolvers for custom Java functions with generic list arguments failed. This is now corrected, so that you can use List<T> arguments in Custom Function Resolvers.
SB‑26295 StreamBase Studio did not properly initialize default values for adapter properties relating to a capture field strategy, and as a consequence sometimes failed to find capture field conflicts. This was corrected.
SB‑26284 In previous releases, the feed simulation Data File Options dialog let you choose a data file in a different directory than the .sbsf file itself, but did not store the path to the file. This caused the Timestamp from column option to fail, and other problems. In the current release, this is fixed. Feed simulations now store paths to data files, which can be either absolute or relative to the feed simulation folder.
SB‑26274 In some cases, the state of the First row as header option in the feed simulation Data File Options dialog was not being properly stored in between invocations of the dialog. This was fixed.
SB‑26236 In 7.4.0, custom functions could have variable numbers of arguments, but a <custom-function> element for such a function in the .sbconf file would execute only if the args="auto" attribute was set. Starting with 7.4.1, if you want to declare individual <arg> elements, you must include in your <custom-function> element a new attribute, isVarargs="true".
SB‑26226 In 7.4.0, EventFlow lists passed as arrays to custom Java functions could not exceed two dimensions, whether called via a function alias or via calljava(). This is still the case when using a function alias, but you can now use calljava() to pass higher-dimension lists as arrays. See Creating Custom Java Functions in the API Guide for details.
SB‑26045 The function data type introduced in release 7.4.0 enabled definitions of functions that return literals, but StreamBase did not allow such functions or lists of functions with any return type to be manually enqueued to input streams. This was fixed.
SB‑26008 When previewing data files, the feed simulation Data File Options dialog would sometimes incorrectly display read error; lines will be dropped while running simulation. This was corrected.
SB‑25895 In release 7.4.0, multithreaded use of a typecheck-time schema for a Java operator that accesses fields in a tuple could result in spurious errors about an incorrect schema. This was fixed.
SB‑25886 In feed simulation Processing Options, when selected, the Timestamp from column now defaults to first value read, not zero.
SB‑25317 If the actual binding of a capture field conflicted with another field already in the schema, StreamBase would throw a compile-time error, or no error at all, but the application would not show the erroneous component in either case. This was fixed. Typecheck errors are now thrown in these cases.
SB‑25105 In 7.4.0, if a launch configuration had the Allow Remote Java Debugging check box selected, and if the user launched that configuration in Run mode, then the application would not successfully start. This was fixed.
SB‑25090 When creating a feed simulation using a data file for an input stream having no fields, it was not possible to declare First Row as Header or to select a timestamp column by name. This was fixed.
SB‑24416 In some cases, copying and renaming an interface would cause a typecheck error in any referencing modules. This was fixed.
SB‑24008 The feed simulation Data File Options dialog was showing incorrect previews of CSV files when the First Row as header option was selected and the Lines to skip option was set to 1 or higher. This was fixed.
Fixed in 7.4.0
Number Resolution
TIBCO StreamBase® release 7.4.0 incorporates all fixes resolved in the release 7.3 series through 7.3.10, and in the release 7.2 series through 7.2.15.
SB‑26189 The Database Change Data Capture input adapter will no longer re-publish all changes in the log upon start. Instead, it now gets the last change number and starts from that point on. In addition, the issue with "too many open cursors" was fixed.
SB‑26188 Selecting a field name in the feed simulation editor's Customize Fields dialog would sometimes scroll the selected row out of view. This was fixed.
SB‑26167 The StreamBase Studio debugger failed to launch when a StreamBase .sbapp contained one or more operators whose names were escaped because they contained characters other than letters, numbers and underscores, for example, #"big-agg!". This was fixed.
SB‑26140 Using nested fields as primary indices in Query tables shared across modules raised the error "Current module contains no placeholder tables to be configured." This problem did not occur when referencing a table within its own module. This was fixed.
SB‑26131 For imported projects having feed simulations that read data files with non-default column mappings, the feed simulation editor incorrectly displayed default values (i.e., 1,2,3...) in the Map to file column of the Column mapping table. Although the simulation would use the correct column mappings, the UI did not reflect this. This UI issue was corrected.
SB‑26097 Error messages appeared in the StreamBase Studio Error Log if a custom feed simulation reader was not configured properly. These unnecessary messages have been suppressed.
SB‑26000 Operators and adapters were mangling escaped field identifiers (such as #"abc:xyz") into normal identifiers (abcxyz). This was fixed.
SB‑25943 The feed simulation Data File Options UI did not register changes in the delimiter that the user made. This was fixed.
SB‑25925 When selected, the First Row as Header check box in the feed simulation editor was cleared every time the feed simulation file was saved. This was fixed.
SB‑25885 Calling new_tuple(), new_tuple_subset(), or new_tuple_subset_loose() with a named schema as the first argument, for example, new_tuple(MySchema(), 3 AS a, 4 AS b), returned a null result unless the named schema was fully specified in the first argument, for example new_tuple(MySchema(1 AS a, 2 AS b), 3 AS a, 4 AS b). With this release, it is no longer necessary to include a specification of the named schema. That is, new_tuple(MySchema(), 3 AS a, 4 AS b) now produces a fully-formed new tuple. As previously, any fields in the given schema that are not referenced in arguments 2 and higher will be null in the new tuple.
SB‑25877 The feed simulation editor was unable to preview data files compressed using BZ2 format, even though it could read and use them in simulations. Now it can.
SB‑25875 In StreamBase Studio 7.3.x, dynamic variables were not visible to the Gather operator's output target list. Now they are.
SB‑25831 When EventFlow applications having Query operators containing old.<fieldname> references were converted to SSQL, either the SSQL file would fail to typecheck, saying the "old." fields do not exist, or the SSQL would run but might not return a correct result. This was fixed.
SB‑25725 Both the simple and aggregate standard deviation and variance functions for populations (stdevp and variancep) returned null for inputs of size 1 when the result should have been 0. This was fixed. Note that the stdev and variance functions (for sample data) still properly return null for inputs of size 1.
SB‑25658 In previous releases, Query table insert and update operations that referenced unqualified field names created ambiguities in the following use cases:
  • INSERT; if duplicate, UPDATE

  • UPDATE; if not found, INSERT

In such cases, the unqualified field names were automatically assigned as input. at runtime without any notification. Now, StreamBase Studio issues warnings in the Problem view for projects containing ambiguous references. For example:
the reference to field "X" is ambiguous; you must qualify the field reference
 with one of "input.", "input1.", "old."
As these warnings may become errors in a future release, it is best to fully qualify potentially ambiguous field names either with Quick Fix or manually rather than to suppress the warnings. For information about quick-fixing these issues, see Fixing New Typecheck Warnings in Query Operators.
SB‑25657 Previously, if you imported a child schema and used it in a Query Table, although fields from its parent schema were visible, they could not be used as indices. Now they can.
SB‑25654 Applications could fail to launch if they had Aggregate operators with a Predicate dimension configured to evaluate emit and close predicates before adding tuples to its window which referenced fields from the input stream. Users would receive an error message such as 'Runtime exception: Internal error generating operator Aggregate: Attempted to dereference nonexistent field...' This was fixed.
SB‑25498 Previously if you provided Tuple.setfield with a different number of fields than the schema object contained, it would error. Now, the map does not have to contain the same number of entries.
SB‑25340 You can now create a Delta Stream for placeholder query tables. Previously this was only possible for private and shared query tables.
SB‑25203 Accessing a .sbint file specifying a Query Table with an empty secondary index would silently produce errors when data was inserted into the table. Specifying an empty index is still an error, but is now is caught in typecheck. The error message is 'Secondary index n is empty in tablename'.
SB‑25201 Using parameters with escaped identifiers (such as #_A100_) in an Iterate operator's Condition or Filter fields failed to typecheck with a "Field not available from any stream" error. This was fixed.
SB‑25194 In previous release, some BSON operations with timestamp data types would throw an "unsupported BSON type" runtime exception. This was fixed.
SB‑25146 Enabling dequeuing in sbadmin would start all output adapters regardless of their "Start with application" setting, moving them from NOT_YET_STARTED state to STARTED state when the container sent dequeue=ENABLED. Input adapters displayed the same behavior with the enqueue=ENABLED command. This was fixed, so that these commands no longer implicitly start adapters.
SB‑25096 sbd --eval now processes the -f argument to configure all applicable settings before evaluating an expression.
SB‑24953 When specifying a Sequence Identifier for the Sequence operator, you can now specify any suitable numeric field from the input stream rather than having to create a new field to hold sequence values.
SB‑24781 When a Query operator performs an insert, it is now possible to specify the old prefix in an output list, just as it was possible with query updates. Previously, old was disabled on the output list. When the operation is an insert, the value of all the fields in the old tuple is null.
SB‑24664 Typechecking a schema with a capture field could cause a Null Pointer Exception if the capture field's Capture Type was null. This was fixed; failing to specify a Capture Type now generates a typechecking error, as it should.
SB‑24662 References to environment variables in sbd.sbconf were not respected when running apps within StreamBase Studio. Even after setting a launch configuration environment variables, the configuration file obtained variable values from StreamBase Studio. Now, when launching from within studio, all environment variables set in the launch configuration are used when parsing the configuration file.
SB‑24583 In previous versions, a the expression for a declared variable in a target list could be evaluated multiple times, which could lead to inconsistent or incorrect results if the expression included calls to functions like random(). In this version, declared variable value expressions are evaluated at most once.
SB‑24424 The aggregate operator sometimes output tuples whose values were incorrectly calculated when the intermediate emission property value did not divide evenly into the window size or advance property values. This issue was resolved.
SB‑23819 You can now create dynamic variables without first needing to create a stream.
SB‑23709 When a client disconnects from the StreamBase server, the information in the disconnecting client message now includes the client's IP address. Also, the severity of this message was raised from INFO to WARN.
SB‑23636 Declaring a variable more than once or duplicating a field name in a field grid did not cause any typecheck error, but did cause an error at run time. Now declaring or adding the same name more than once generates a "Field named <name> already exists" error.
SB‑23632 Calling String.format with calljava is now supported.
SB‑23187 The Join and Gather operators were unable to use module dynamic variables for setting certain properties. This was fixed.
SB‑22847 sbadmin issued an incorrect and confusing error message when you attempted to add a nonexistent container connection more than one time. (The message indicated that that the connection already did exist.) A failed attempt to add a container connection also made it impossible to subsequently add that connection without restarting the server. This was fixed.
SB‑22815 The second argument to parse_time(), the format string, was formerly required to be a string literal. The function now accepts for that argument an expression that evaluates to a simpleDateFormat string.
SB‑22182 The application/extension section in sbd.sbconf and .sbdeploy files now support all the same configuration options.
SB‑22129 Server configuration files that included nested files via <sb-include> or <xi:include> elements only caused a project to rebuild when the top-level sbconf file changed, and not when saving changes to any nested sbconf file. Now, changing any included file triggers rebuilding of the project.
SB‑21337 Inserting an operator before in an arc containing a breakpoint would delete the breakpoint. This was changed to move the breakpoint to the arc upstream of the inserted operator.
SB‑19921 The Stop and Pause buttons on feed simulations did not become disabled at end of file. This was fixed so that they are both disabled when the Run button is enabled. Both the tuple count and speed are preserved from the initial pass through the data.
SB‑12403 Enabling an error port for the Pattern operator on the General tab of its Properties view created a port that was not functional. Now Pattern operator errors are issued through that port instead of incorrectly being sent to the console.
CQS‑2270 With certain very large query predicates that contain multiple nested AND and OR clauses, StreamBase server may consume very large heap sizes. This was fixed.

Limitations Resolved in 7.3.x

Fixed in 7.3.12
Number Resolution
TIBCO StreamBase® release 7.3.12 incorporates all fixes resolved in the release 7.2 series through 7.2.15 and in the release 7.1 series through 7.1.12.
SB‑27288 The TIBCO StreamBase® Adapter for Deutsche Bank Autobahn FX Rapid was reporting quotes as Indicative instead of Tradable. This was fixed.
SB‑27251 In very rare instances when many StreamBase clients attempted to connect to a server simultaneously, the server could enter an unresponsive state from which it was unable to recover. The cause was identified and corrected.
SB‑26912 Previously, the CSV File Writer output adapter provided no notification if its output file was deleted during execution, causing its output to be silently discarded. This is fixed, so that now this condition generates a status event of type Error on the event port.
SB‑26819 A threading issue prevented the File Writer adapter from appending data to or overwriting an existing file. This was fixed.
SB‑26818 Errors were received when attempting to disable the control and status ports of the File Writer output adapter. These were fixed.
SB‑26763 Certain FIX counterparties violate the FIX spec during logon when the initial logon message contains ResetSeqNumFlag(141)=Y, by replying with a logon message that does NOT also contain 141=Y. Because this is incorrect behavior, by default the High-Performance FIX Engine refuses the logon reply and disconnects from the counterparty. If you wish the engine to overlook the omission and consider the logon reply valid, add the following line to your fixengine.properties file: ignoreSeqNumTooLowAtLogon=true
SB‑26720 The High-Performance FIX adapter would sometimes hang when logging off if the counterparty did not send a Logout reply message. This was fixed.
SB‑26676 The skeleton file produced by sbd -s failed to parse on RHEL 4 and earlier RHEL 5 distributions due to an apparent bug in their ICU (International Components for Unicode) library. This issue is now sidestepped by making sure that generated StreamBase configuration files contain the ASCII single-quote character instead of the same character in UTF-8 encoding.
SB‑26462 The TIBCO StreamBase Input Adapter for Wombat MAMA no longer tries to report transport connect/disconnect/quality messages for TIBRV middleware.
SB‑26441 The TIBCO StreamBase IBM WebSphere MQ Output Adapter option Queue When Connection Down was added in 7.3.10 to make the adapter queue rather than reject tuples when the connection to the MQ server is down, and then process the queued tuples when the connection is restored. Now, when the Queue When Connection Down option is NOT selected, status messages are issued when a tuple is sent to MQ, which allows the application to know whether the tuple was published or not. This restores the behavior for releases prior to 7.3.10.
SB‑26436 The TIBCO StreamBase Output adapter for UDP (Sender) was causing high CPU load while connected. This was fixed.
SB‑26421 A malformed formatstring argument passed to the parse_time() function caused StreamBase server to crash after its first invocation. Also, providing a non-literal string (such as a string field) for the formatstring argument caused a compile-time error that was difficult to diagnose. These issues were corrected such that the server now warns at start-up time if it detects a parse_time() function with a malformed formatstring, and issues an error tuple on any invocation of parse_time() with a non-literal formatstring argument.
SB‑26198 Initialization of the TIBCO StreamBase® Operator for TIBCO ActiveSpaces® would fail when connecting to the ActiveSpaces Metaspace took too long. This was fixed.
SB‑26082 The StreamBase Installation Guide for Linux indicated that you could use the RPM installer without having root privileges. This statement was incorrect and was removed. You can, however, perform a Linux installation from an archive-bin installer without needing root privileges.
SB‑25581 When installing StreamBase Studio as an Eclipse plug-in from the StreamBase Studio Eclipse Update Site, it is no longer necessary to clear the Group Items By Category check box in order to see the available updates.
Fixed in 7.3.11
Number Resolution
TIBCO StreamBase® release 7.3.11 incorporates all fixes resolved in the release 7.2 series through 7.2.15 and in the release 7.1 series through 7.1.12.
SB‑26389 The TIBCO StreamBase Input Adapter for Deutsche Bank Market Data did not properly set the arrival time when using a variant of CustomSpot or CustomSwap. This was fixed.
SB‑26283 Specifying null as a value for a field without giving it a data type produced a null pointer exception in StreamBase Studio. This was fixed such that failing to specify the data type of a null field now generates a typecheck error to indicate that this is not a legal field specification.
SB‑26229 Declaring or including a nested field using its original name could create a compile error. For example, DECLARE data.name AS name failed (but DECLARE data.name AS newName worked). This was fixed so that the two field names can be the same.
SB‑26187 When generating a layout file from an EventFlow file by selecting Extract To Layout File from the StreamBase menu, the EventFlow file could lose its entire contents. However, this only occurred when the EventFlow application was created in StreamBase Studio on another OS platform in which different line ending characters are used. This issue was corrected.
SB‑26097 Error messages appeared in the Error Log view in StreamBase Studio if a custom feed simulation reader was not configured properly. These unnecessary error messages were suppressed.
SB‑26046 Under certain condition StreamBase would fail to compile and launch applications with errors similar to "CompilationException: CompileException: File Unknown, Line -1, Column -1: Expression "_v605" is not an rvalue". This was fixed.
SB‑25979 The HA Heartbeat adapter can now specify the network interface when in multicast mode.
SB‑25317 If the actual binding of a capture field conflicted with another field already in the schema, StreamBase would throw a compile-time error, or no error at all, but the application would not show the erroneous component in either case. This was fixed. Typecheck errors are now thrown in these cases.
SB‑25275 In free form mode, the StreamBase Admin operator failed to recognize certain sbadmin subcommands, resulting in runtime errors. The operator now recognizes the same commands as the sbadmin command does when used at the command prompt.
SB‑25004 Refactoring a named schema to rename it in StreamBase Studio raised fatal InvocationTargetException and IndexOutOfBoundsException errors. This was fixed.
SB‑24416 In some cases, copying and renaming an interface would cause a typecheck error in any referencing modules. This was fixed.
CQS‑2270 With certain very large query predicates that contain multiple nested AND and OR clauses, StreamBase server could consume very large heap sizes. This was fixed.
Fixed in 7.3.10
Number Resolution
TIBCO StreamBase® release 7.3.10 incorporates all fixes resolved in the release 7.2 series through 7.2.15 and in the release 7.1 series through 7.1.12.
SB‑25879 The .NET Client API would sometimes not recover all memory at an Unsubscribe request. This was fixed.
SB‑25687 The .lvconf file editor at times would flag an application element as having an error (for example, not able to find a resource needed by an adapter) even when the configuration file would run. This has been corrected.
SB‑25671 Given certain valid JSON input, jsontobson would throw an IllegalArgumentException that would prevent proper processing of the current tuple in an application. This has been corrected. Note that you can use the function catchexception to work around any exception raised during evaluation of functions or expressions.
SB‑25664 When running on 64-bit Windows platforms, the HTTP Reader, IRC Reader, POP3 Reader, and SMTP Reader Input Adapters would fail to find all available network interfaces, such that the only detectable IP address was 0.0.0.0. This has been fixed.
SB‑25549 When using the parameter maxRequestResendInBlock in the fixengine.properties, the second ResendRequest(2) for the next block of messages contained a bad EndSeqNo(16) field value that caused a Reject(3) and no resends occur following the first block. This has been corrected.
SB‑25542 The StreamBase TREP-RT subscribing adapter, when configured for the market feed message model, incorrectly populated blob tuple fields with the contents of Reuters Opaque fields. This has been fixed.
SB‑24559 Changing a Generation Method setting for a customized feed simulation field did not show the change in the UI until another field there received focus. This has been fixed.
Fixed in 7.3.9
Number Resolution
TIBCO StreamBase® release 7.3.9 incorporates all fixes resolved in the release 7.2 series through 7.2.15 and in the release 7.1 series through 7.1.12.
SB‑25504 In previous releases, the .NET operator always loaded the sbd-java.exe.config rather than its own DLL file. The following behaviors have now been implemented in the .NET operator:
  • If a file named MyAssembly.dll.config is found alongside the target assembly, this file will be loaded as the application's configuration file.

  • You can override the new behavior by using the new operator property NET App Configuration File Name, which allows you to explicitly specify a configuration file to load instead.

Fixed in 7.3.8
Number Resolution
TIBCO StreamBase® release 7.3.8 incorporates all fixes resolved in the release 7.2 series through 7.2.15 and in the release 7.1 series through 7.1.12.
SB‑25242 Creating JMS container connections did not utilize jms-connections-defaults settings, as documented in Connecting Container Streams Through JMS. This has been fixed.
SB‑25420 The UBS Trading Components handler was not correctly parsing the tenor values submitted by the user. This has been fixed and the Tenor checking has also been updated to reflect version 1.19 of the UBS market data spec in relation to Tenor values allowed.
SB‑25325 The behavior of the IBM WebSphere Output Adapter adapter has changed when Quick Connection-Down Detection is disabled. The adapter now avoids making any reference to a remote disconnected queue when this property is disabled.
SB‑25072 The list of fields for setting values for feed simulations after specifying the Generation Method as Enumerated did not display until a control in the dialog was clicked. Now that list of fields displays without having to click a control.
SB‑25146 Enabling dequeuing in sbadmin would start all output adapters regardless of their "Start with application" setting, moving them from NOT_YET_STARTED state to STARTED state when the container sent dequeue=ENABLED. Input adapters displayed the same behavior with the enqueue=ENABLED command. This has been fixed, so that these commands no longer implicitly start adapters.
SB‑24938 Including a trailing slash on paths when setting the TMP environment variable prevented sbd from launching .sbapp files. This has been fixed.
SB‑24494 In StreamBase Studio, switching an Aggregate operator dimension from one type to another (e.g., from tuple to predicate) sometimes did not delete the previous dimension's parameters, producing a "spurious parameters" warning. This has been fixed.
Fixed in 7.3.7
Number Resolution
TIBCO StreamBase® release 7.3.7 incorporates all fixes resolved in the release 7.2 series through 7.2.15 and in the release 7.1 series through 7.1.12.
SB‑25325 The IBM WebSphere Output Adapter, in order to quickly detect connection-down conditions, periodically reads the depth of the base queue. Doing so for remote base queues results in a 2068 (MQRC_SELECTOR_NOT_FOR_TYPE) error. The adapter therefore no longer reads the depth of remote base queues, regardless of the setting of the Quick Connection-Down Detection property.
SB‑25314 In the Thomson Reuters Enterprise Platform for Real-Time Contribution Output Adapter, the default number of digits to the right of the decimal point in encoding REAL64 values was changed from 0 to 4 to match that used in encoding REAL32 values. For more control over the number of digits used, see Data Model in the Adapter's documentation.
SB‑25299 The TREP-RT Contribution Adapter incurred a NullPointerException in processing an ACK response message if no OMM state was present in the message. This was fixed.
SB‑25035 A regression in StreamBase Studio 7.2 could cause feed simulations from .sbfs files to error if a stream contained sub-tuples. This has been fixed.
SB‑25021 In previous versions, TableAccessor.getSchema() could return an equivalent but different object to the result of getSchema() on a returned table row. Accessing a table row using the non-identical schema could cause a performance problem. Now they return identical values.
SB‑24965 The XML to Tuple Java operator was excluding empty values of any type instead of parsing them as the NULL_VALUE_REPRESENTATION property value. This has been fixed.
SB‑24882 Changing the color of data arcs and stream arcs in Studio preferences did not change their appearance on the canvas until Studio was restarted. This has been fixed.
SB‑24050 When using the StreamBaseFIX FIX engine, a FIX adapter configured to run as initiator would not automatically attempt to reconnect when a FIX connection was abnormally terminated. This has been fixed.
SB‑24947
SB‑22083
The following fixes were made to the Exegy Input adapter:
  • The TradingAction event no longer fails with a null pointer exception when the Include Adapter Latency property is enabled.

  • Instead of always reporting as a refresh, Trading Action messages now report a trading action command.

  • You can now send conflation commands to the Exegy server by setting the maximum quote rate value for the adapter as well as sending an optional maxQuoteRate value with each subscription input.

  • Instead of reporting null values, dictionary output tuples now are populated correctly.

SB‑24891 Restarting an initiator application for a StreamBase FIX adapter failed when an alternate FIX dictionary was being used. This has been fixed.
SB‑24337 Studio applications containing a Map operator that concatenates a string with a timestamp (e.g. "time1: " + to_milliseconds(now()) ) in more than one expression generated a CompilationException when run, even though they typechecked. This has been fixed.
SB‑23684 A warning message for the Morningstar Quotes Feed Input adapter was updated to display the Feed Type to help diagnose instances when it may be incorrectly set.
SB‑23528 At times the Wombat MAMA input adapter stopped responding to subscription requests for non-priced symbols. This happened after repeatedly subscribing and unsubscribing to the same set of symbols, because the expired subscriptions were not being cleared from memory. This has now been fixed. The MAMA publisher will now send out an expired message when it removes subscriptions when they time out due to inactivity.
SB‑23356 A race condition can lead to occasional null pointer exceptions that surface in the Log adapter when the adapter is configured for asynchronous logging. This has been fixed.
SB‑22686 If authentication was enabled, the StreamBase Admin operator required valid values for the Username and Password properties to execute commands on the local StreamBase server instance. This has been changed, so that a username and password are no longer required when the Remote Server property is not selected.

The Username and Password properties for this operator are now deprecated and will be removed in a future release. For remote servers running under authentication, specify the username and password as part of the Server URI.

SB‑22531 The StreamBase Admin operator would autocomplete tuple identifiers starting with input. and input1., but Studio would then typecheck with a message saying "The field 'input' (or input1) is not available from any stream." This has been fixed, so that input., input1., and no prefix are now all equally acceptable.
SB‑19808 When the Wombat input adapter tried to push incoming int and long values into a double field, the resulting values would be null. This has been fixed to promote int and long values to doubles where the schema calls for it.
Fixed in 7.3.6
Number Resolution
TIBCO StreamBase® release 7.3.6 incorporates all fixes resolved in the release 7.2 series through 7.2.14, in the release 7.1 series through 7.1.12, and in the release 6.6 series through 6.6.25.
SB‑24919 The all-in rate for spot legs was populated from the bid/ask tuple's spotRate field rather than its allInRate field. This was corrected.
SB‑24914 Removing a condition from a conditional breakpoint on an arc was not possible after deleting the predicate from the Conditional (suspend when true) dialog, because doing so disabled the OK button. This was fixed.
SB‑24877 Limitations resolved in StreamBase 7.2.6 sometimes affected performance when Tuple fields in Java operators were accessed using Schema.Field objects. The performance problem was resolved.
Fixed in 7.3.5
Number Resolution
TIBCO StreamBase® release 7.3.5 incorporates all fixes resolved in the release 7.2 series through 7.2.13, in the release 7.1 series through 7.1.12, and in the release 6.6 series through 6.6.25.
SB‑24720 Under certain circumstances, an unauthenticated user could dequeue tuples from StreamBase with the StreamBase Excel add-in. This bug has been fixed.
SB‑24678 Disconnecting from the StreamBase Monitor API could raise the error: Attempted to read or write protected memory. This is often an indication that other memory is corrupt. This has been fixed. Users of prior releases can call StreamBaseMonitor.Close() to avoid raising the error.
SB‑24659 The Aggregate operator's Predicate dimension now accepts boolean aggregate expressions for the closing and emitting from all windows in addition to boolean simple expressions. The Edit dimension dialog for predicate dimensions now has clarified descriptions for all of the predicate expressions. See Aggregate Operator: Predicate-Based Dimension Options for further details.
SB‑24590 In Studio, editing Java Operator properties of type "expression" had content assist that would offer stream qualified field names (e.g. input1.myfield). At runtime, this would result in an error such as: In expression "input1.myfield" for field "CommandLine": the field "input1" is not available from any stream. As expressions are configured to a particular input port, Studio was corrected to offer only unqualified field names from the applicable stream (e.g. myfield).
SB‑24312 StreamBase Studio would sometimes indicate the typecheck error 'Schema <name> uses an existing name' when referencing an imported Named Schema from a .sbint file, even when no such conflict existed. This has been fixed.
SB‑24236 Formerly, precompiled StreamBase application archive (.sbar) files generated on Windows failed to run on UNIX platforms with a class not found exception, and now they do. To fix an application you precompiled in Windows to avoid this problem, recompile it in the current version of StreamBase Studio.
SB‑24136 In prior 7.3 releases, when the system was overloaded with message volume and queues grew to their maximum size, processing could stall until a timeout period elapsed (default 1000 ms). This prevented new messages from being added to the queue, even if space became available in the queue sooner. Log messages would notify administrators of this condition. The queue behavior could reduce total throughput and increase jitter in an overload scenario. This has been fixed.
Fixed in 7.3.4
Number Resolution
TIBCO StreamBase® release 7.3.4 incorporates all fixes resolved in the release 7.2 series through 7.2.11, in the release 7.1 series through 7.1.12, and in the release 6.6 series through 6.6.24.
Fixed in 7.3.3
Number Resolution
TIBCO StreamBase® release 7.3.3 incorporates all fixes resolved in the release 7.2 series through 7.2.11, in the release 7.1 series through 7.1.12, and in the release 6.6 series through 6.6.24.
SB‑24210 Version 7.3.3 provides a more comprehensive fix for the issue of possible data corruption from concurrent calls from separate Java threads to sendOutputAsync on the same operator than the solution provided in 7.3.2.
Fixed in 7.3.2
Number Resolution
TIBCO StreamBase® release 7.3.1 incorporates all fixes resolved in the release 7.2 series through 7.2.11, in the release 7.1 series through 7.1.12, and in the release 6.6 series through 6.6.23.
SB‑24368 Using IN for a case-sensitive index would trigger a table scan. This was changed.
SB‑24210 In previous versions of 7.3, concurrent calls from separate Java threads to sendOutputAsync on the same operator could lead to duplicate data values and data loss. This has been corrected.
SB‑24161 In previous releases, Join operator Output Settings with no prefixes were serialized incorrectly. Upon being reloaded, they were reordered and given default prefixes such as "input2_". Now empty prefixes are preserved and outputs are maintained in their original order.
SB‑24077 You can now define Eclipse Classpath Variables on the sbbundle command line. For more information, see What Was New in StreamBase 7.3.2
SB‑24015 If you added or removed fields from a schema for a data construct (such as a query table), the identity of the primary key would be lost, even if the modified field were unrelated to the primary index. Now you can modify such a schema without affecting the primary index.
SB‑23958 In previous releases, the predicate dimension fields expression for a control port to open, emit from, or close had to be a fully qualified field name (specified in dot notation, such as input1.cost). In StreamBase 7.3.1 and later, you can omit the qualifier and use just the field name in the expression.
SB‑23907 After hitting a breakpoint on an input stream's outgoing arc, the Variables view in the StreamBase Studio Debugger would be blank. The problem was that the line representing that arc in the Debug view was not automatically selected when the breakpoint was hit. This has been corrected.
SB‑23722 The number of instances of a module can be configured with an expression, and the expression will be evaluated at application startup.
SB‑22171 The strftime function now supports formatting instructions %e, %k and %l, which output a leading space instead of a leading zero for one-digit values.
Fixed in 7.3.1
Number Resolution
TIBCO StreamBase® release 7.3.1 incorporates all fixes resolved in the release 7.2 series through 7.2.10, in the release 7.1 series through 7.1.12, and in the release 6.6 series through 6.6.23.
SB‑23933 If the Java source folder for custom Java operators, adapters, or functions was anything other than java-bin under a Studio project root (as could happen when using Maven to manage the Java files), then Studio was unable to load that operator, adapter, or function during typechecking of the project. Studio would report that the class could not be found. This was corrected.
SB‑23930 The XML-to-Tuple operator can populate tuple fields with XML attributes in one of two ways: (1) By using the special _ATTRIBUTES meta field, or (2) by creating a subfield with a name that matches the attribute name. The second technique was not working if the subfield's parent field was of type list<tuple>. This was fixed.
SB‑23912 In previous releases, the expression language's strptime() function incorrectly interpreted time strings that specified the noon hour as a timestamp 12 hours later. This was corrected.
SB‑23905 The upgrade to Eclipse 3.8 in StreamBase release 7.3 caused a regression that prevented the opening of Query Tables and dynamic variables in the Variables view of the EventFlow Debugger. The cause was identified and corrected.
SB‑23879 Two Unicode-handling bugs in StreamBase Studio were corrected. Even if Studio was configured to be Unicode ready with the streambase.tuple-charset=UTF-8 setting, (1) the Copy as ... options in the context menu of the Application Output view would not correctly copy Unicode characters, and (2) the New StreamBase Unit Test wizard could garble Unicode characters in Java files created from the Application Output view.
SB‑23726 On Linux systems, an unpredictability in classpath loading order was resulting in a NullPointerException for the Alpha Trading Systems adapters. The classpath loading order was updated to assure a predictable order.
SB‑23608 When enqueuing with a C++ or Python client and specifying an input stream by stream name in the default container without its qualifying path (that is, "in" rather than "default.in"), a performance penalty was incurred because the client would repeatedly query the server for stream properties rather than using the client side cache. The workarounds were to manually cache the StreamProperties object or use full stream path name. This limitation was lifted and the workarounds are no longer necessary.
SB‑23485 In previous releases, an xi:include in a server configuration file could cause an error that referred to the Boost libraries when starting StreamBase Server as a Windows service. The cause was identified and corrected.
Fixed in 7.3.0
Number Resolution
TIBCO StreamBase® release 7.3.0 incorporates all fixes resolved in the release 7.2 series through 7.2.8, in the release 7.1 series through 7.1.11, and in the release 6.6 series through 6.6.22.
SB‑23739 A busy loop that caused a thread in the IBM WebSphere MQ adapter to consume 100% of CPU time was identified and fixed.
SB‑23619 When using the Wombat MAMA Input adapter, subscriptions that failed with a NOT_FOUND error were correctly removed from the adapter, but the underlying Wombat subscription was not destroyed. This was fixed.
SB‑23602 An unusual race condition when starting multiple containers with synchronous container connections was fixed.
SB‑23336 Dynamic variables in StreamSQL programs were updated to allow recursively referencing themselves in an update expression.
SB‑23137 Documentation for previous 7.2.x releases continued to state that only jsbc enqueue could enqueue an empty tuple to an input stream defined with an empty schema. Actually, sbc enqueue gained that capability starting with 7.2.0.
SB‑22757 The .NET Client Library was updated to behave more like the Java Client Library in one respect. Previously, when a DequeueResult.Interceptor returned null, the null was returned to its caller, which interrupted dequeuing. Now a null case no longer interrupts dequeuing.
SB‑22961 The parsejson() expression language function, when used with expressions containing asterisk wildcards, could cause methods to grow beyond the Java 64K boundary. This was fixed.
SB‑21383 In previous releases, an internal error at runtime occurred for Filter operators that were followed by output streams with schemas explicitly set to have compatible but differently ordered fields. This was corrected.

Resolved in Previous Releases

See the Release Note Archives for the list of issues resolved in previous releases.

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.

SB‑27489 LiveView Wikipedia Montoring demo not supported in 32-bit StreamBase Studio.
Description When running the 32-bit version of StreamBase Studio, the TIBCO LIveView - Wikipedia Monitoring demo appears in the list of other demos in the SB Demos perspective. However, this demo is only supported on 64-bit Studio.
Workaround Run the demo from 64-bit Studio.
SB‑27488 Runtime exception when using Drools operator with sbd under Java 8.
Description StreamBase applications containing Drools operators may compile under Java 8 but fail with a wrong class format exception when they run.
Workaround Run the application under Java 7, if possible.
SB‑27456 Ordering of fields returned by SELECT does not correspond to column order.
Description The output order of table fields returned by SELECT statements can be arbitrary when indices are hashed.
Workaround To retrieve output fields in the same order as table columns, run StreamBase under Java 8, which does not present this issue.
SB‑27278 Custom timestamp formats for the sbc command may produce unexpected results or fail on Windows.
Description On Windows, the C++-based sbc command returns different results for certain custom timestamp formats, such as %F (which on Windows needs to be %Y-%m-%d) and %z (which may return a time zone identifier instead of its offset), as the Java-based jsbc command, and may error.
Workaround Use Windows-specific formats in the few cases where format string options differ from OS X and Linux formats.
SB‑27096 Standalone Help Viewer and sbhelp not provided.
Description Starting with StreamBase 7.5.0, the standalone Help Viewer on Windows, and the sbhelp utility on OS X and Linux, no longer function. The move to Eclipse 4.4 as a base for StreamBase Studio caused complications that were solved for Studio, but not for the Help Viewer.
Workaround Use the Eclipse Help provided as part of StreamBase Studio, or the website version of the documentation, as described in Using the Help System
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 unistall an RPM installation on RHEL 7. Otherwise, all StreamBase and Live Datamart processes run as expected on RHEL 7.
SB‑26627 Exception when exporting application bundle from StreamBase Studio with FileExport
Description Exporting an application bundle in StreamBase Studio can raise a class loader error, preventing the operation.
Workaround Run all the apps in the project before exporting the bundle from StreamBase Studio. If that fails, use the sbbundle command line tool to export the bundle.
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‑25527 Extension points cannot be externally configured for deployed .sbar files.
Description It is currently not possible to configure extension points for precompiled StreamBase applications deployed as .sbar files. Attempting to do so raises the error: SBAR file for container <name> is itself made from a deploy file.
Workaround None
SB‑25403 Tuple IDs returned by sbc readTable all contain zero.
Description The sbc readTable -v command displays tupleid=0 for all tuples retrieved from a query table, rather than a sequence of numeric values.
Workaround To obtain sequential values for tuple IDs, run StreamBase server in a Java 8 environment.
SB‑23835 Command line bundler does not find JUnit jar
Description When referenced by the usual Eclipse JUnit library, the junit.jar is not found by the bundler from the command line using the -P option.
Workaround Manually add junit.jar (from %STREAMBASE_HOME%\lib) as an external .jar reference in StreamBase Studio (not to the .sbconf file) to enable the command-line bundler to find it on the build path. Also add rfa.jar from %STREAMBASE_HOME%\lib\bootext in the same way.
SB‑23741 Studio crashes on older 32-bit Linux distributions.
Description A reported Eclipse bug causes Studio to crash on 32-bit Linux when attempting to render a non-empty EventFlow application. This problem is seen with 32-bit RHEL 4 and SuSE 10 distributions, and only with Studio 7.3.0 or later, where the base Eclipse installation is 3.8.
Workaround Try using a 64-bit version of the same distributions, where this problem does not occur.
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‑21107 Problems using activemq-all.jar.
Description Projects that include references to the activemq jar file may not load slf4j or exhibit other classpath problems.
Workaround Replace the actviemq library with the individual jar files provided by apache.org for activemq, which are listed at http://activemq.apache.org/version-5-initial-configuration.html..
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‑18189 Some Windows UI themes fail to render borders.
Description On some Windows UI themes, such as the Windows XP Classic theme, some UI elements are drawn without a border. This affects the JDBC SQL text box of the Query operator, among others.
Workaround Try a different Windows theme.
SB‑17414 Order of layout parameters changed one time after import into 6.5 or later.
Description When importing an EventFlow module created with StreamBase 6.4 or earlier into StreamBase 6.5 or later, some layout parameter lines may shift positions in the .sblayout file (or .sbapp file if you do not use separate layout files). This may affect difference comparisons or version control systems.
Workaround The reordering of layout parameter lines is a one-time occurrence after the first save in StreamBase 6.5 or later. Thereafter, these lines are stored consistently with each save.
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‑14862 Custom Java operators and adapters cannot include their own janino.jar.
Description The StreamBase Server executable, sbd[.exe], incorporates a customized version of the Janino libraries that include bug fixes that have not yet been absorbed by the Janino project. If you attempt to include the standard janino.jar implementation of Janino as part of a custom operator or adapter, that JAR file conflicts with the version embedded in sbd.
Workaround Call Janino as part of StreamBase's server.jar, or see http://code.google.com/p/janino-streambase for public access to StreamBase's Janino bug fixes.
SB‑14239 Recordings in Studio fail to play back against streams with imported schemas.
Description Since release 6.4.0, applications can use the Module Imports feature of the EventFlow Editor's Definitions tab to import schemas. If you use the Studio Recordings view to record the operation of such an application, it fails to play back.
Workaround Create a local copy of the imported schema in the application module that contains the stream, and specify the copy for use by the stream. Then re-record the application.
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 and 7.
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‑12824 Java and C++ format doubles differently.
Description When displaying integer-like values of type double, Java code outputs the value with a decimal point and zero appended (34.0), whereas C++ code outputs the same value without those features (34). Thus, the same double values output to stdout with sbc dequeue and jsbc dequeue are formatted differently.
Workaround None.
SB‑12401 Clients connecting to sbproxy with misconfigured SSL may hang.
Description Client applications attempting to make a secure connection to StreamBase Server by means of the sbproxy server may hang if the client or server is not configured to support SSL.
Workaround Carefully review your SSL configuration setup.
SB‑12136 On 32-bit Windows, some third-party applications can interfere with StreamBase Server starting.
Description In recent releases, StreamBase Server is started by default with a requested maximum memory size of 512 or 1024 MB. Certain third-party applications, including Apple's Bonjour program, load themselves in the middle of available RAM, which can prevent StreamBase Server from reserving a contiguous block of memory.
Workaround You can (1) reduce StreamBase Server's maximum memory size request by adjusting the server configuration file as described in Java VM Memory Settings, (2) remove the competing program, such as Bonjour, or (3) upgrade to a supported 64-bit platform.
SB‑11964 Case-sensitive Unicode regular expressions require Java 1.6.
Description When running StreamBase with Java 1.5, with Unicode support enabled as described in Unicode Support, the regexmatch() expression language function behaves as if an ignore-case option was enabled.
Workaround To have both case-sensitive regular expressions and Unicode support, you must run StreamBase with Java 1.6, which is the default JDK shipped with StreamBase.
SB‑11245 RFA/Java Configuration: Test Connection sometimes fails with RTIC servers.
Description The RFA/Java Configuration Wizard and Reuters Schema Designer, under certain conditions when used with an RTIC server, fail to access the server. This occurs when using the Configuration Wizard's Test Connection button and the Schema Designer's Discover Services and Start FIDs Lookup tools.
Workaround None needed. Despite the reported connection failures, the RFA/Java configuration file generated by the wizard is valid and usable by the Reuters RMDS subscribing adapter.
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‑8640 Java Operator with zero inputs does nothing.
Description While it is not an error to create a Java operator with zero input ports, the processTuple method will never be called, and thus the Java operator can never emit any tuples.
Workaround None.
SB‑8297 Files edited outside StreamBase Studio are not refreshed in Studio automatically.
Description For .sbapp and .sbfs files that were created using StreamBase Studio and are still open in Studio, modifications made using an external editor are not automatically refreshed in the current Studio Editor session.
Workaround If edits are made outside of Studio and you now want to use the latest file, right-click the project that contains the changes you made and select Refresh.
SB‑7148 Invalid byte error when opening EventFlow application.
Description Studio sometimes fails to open an EventFlow application with this error:

org.xml.sax.SAXParseException: Invalid byte 1 of 1-byte UTF-8 sequence

Workaround Perform the following steps to recover:
  1. Close the EventFlow Editor, if it is open.

  2. Open the EventFlow file in a text editor. For example, in StreamBase Studio, right-click the file and choose Open WithText Editor.

  3. In the source, find any multi-byte characters that might have been pasted from a multi-byte source (for example, formatted text that was copied from Microsoft Word into a description field in an EventFlow Editor Properties view).

  4. Remove the multi-byte characters or any other characters that might be causing trouble. Typically, the characters to remove appear as a square box. Replace them with characters that you type in manually.

  5. Confirm that the application opens in the EventFlow Editor (repeat step 2 to reassign the file to the EventFlow Editor).

SB‑7075 Changing perspectives can rearrange the Studio toolbar.
Description The position of toolbar sections can change when you go from perspective to perspective, especially when going from the Authoring to the Demo perspective and back.
Workaround Eclipse toolbars do not have fixed locations, so this is expected behavior.
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‑6346 Custom function C++ code typechecking is delayed until the application is generated.
Description Most portions of a StreamBase application are typechecked in real time as you add features to an EventFlow or StreamSQL application. However, starting with release 5.0, typechecking for a custom function written in C++ is delayed until the application is generated and run.
Workaround None. Be aware that typechecking errors may not be reported as usual when using custom C++ functions.
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‑5779 SBAPP-to-SSQL Conversion Assistant resets module parameters to default values.
Description If you run the SBAPP-to-SSQL Conversion Assistant on an EventFlow application that makes use of module parameter references, the resulting StreamSQL application does not have any module parameter references. They are replaced by their default values.
Workaround After the conversion, edit the StreamSQL file to add the non-default module parameter values.
SB‑5749 Feed Simulation Editor's data rate edit and save Issue on Linux.
Description In StreamBase Studio, the Feed Simulation Editor lets you set the rate in number of tuples per second at which data will be generated for a stream. On Linux only, if you use the keyboard to enter an integer in the Data Rate text box, the new value might not be saved.
Workaround After clicking into the text box and entering the value, press Enter or change the cursor's focus (for example, press Tab). Then press the Save icon or enter Ctrl+S. Note that if you press Ctrl+S while your cursor is within the Data Rate text box, the new value is not saved. You must press Ctrl+S again.
SB‑4931 SBAPP-to-SSQL Conversion Assistant does not support parallel operators.
Description If your EventFlow application file has individual operators that are marked for parallel operation, the SBAPP-to-SSQL Conversion Assistant cannot generate equivalent functionality in the generated StreamSQL application because there is no direct analogy for parallel operators in StreamSQL.
Workaround After the conversion, if appropriate for your application (no dependencies on data in other operations), you can use an APPLY PARALLEL MODULE statement or APPLY PARALLEL JDBC statement in the StreamSQL file. For details on the APPLY statement, see the StreamSQL Guide.
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‑4225 Some disk drive configurations can corrupt disk-based Query Tables if power fails.
Description Some caching disk drives do not guarantee the sequencing of disk writes, nor do they guarantee that all the writes to the drive have actually happened. This behavior improves disk performance, but at the risk of data corruption in the event of a power outage or equipment failure. StreamBase is vulnerable to this kind of data corruption if your StreamBase application uses disk-based Query Tables.
Workaround Disk drives with this behavior usually have a driver-level setting to turn this capability on or off. For example, the driver may present you with a check box labeled Enable write caching on the disk. Unchecking this box would prevent the problem from occurring.
SB‑3955 Finding sbd process failure details.
Description When StreamBase Studio runs an application, it launches the server process in the background. If the server process fails for any reason, Studio tries to report the reason to you. However, the actual message that Studio displays may not contain enough information,depending on the failure.
Workaround To get more information about the reason for the sbd process failure, open the Eclipse Error Log View, as described in Error Log View.
SB‑3585 Inconsistent support for undo in StreamBase Studio.
Description Many editing operations in Studio cannot be undone. This includes operations such as copying schemas, editing definitions, editing feed simulations, and so on.
Workaround The Revert command in the File menu can be used to undo all changes since the last time a file was saved.
SB‑2931 Relocatable RPMs install incorrect symbolic links in /usr.
Description The Linux RPM packages are relocatable. This means that the default installation location of /opt/streambase can be changed to a different location. However, if this is done, symbolic links are still installed in /usr/bin and /usr/lib that point to /opt/streambase.
Workaround Either edit the symbolic link by hand, or use the archive file installer instead of the RPMs to install StreamBase on Linux.
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.
SB‑1969 StreamBase Studio on Windows triggers Windows firewall when running Server.
Description Users of StreamBase Studio on Windows may find that the Windows Firewall, or a third-party firewall product, prompts for permission to continue when first starting StreamBase Server. The message may refer to javaw or to StreamBase Server by name. This is expected behavior of Windows firewalls. You must grant the requested permission in order to continue using StreamBase Server on this machine.
Workaround After granting permission once, you should not be prompted about this again.
SB‑1769 LockDirectoryException error encountered when starting StreamBase Server.
Description There may be a number of cases when you would encounter the LockDirectoryException error. If the message indicates File exists, either another instance of StreamBase Server is currently running or the prior instance of Server was improperly shut down.
Workaround If another StreamBase Server instance is running, change the server configuration file to point the datadir element to a different directory. If there is no other Server instance running, you must manually delete the directory named in the File exists message.
SB‑1289 IPv6 addresses not supported.
Description StreamBase Server can only connect to IPv4 addresses. If you try to connect using IPv6 addresses, the connection is refused.
Workaround None.
SB‑1164 Issues with certain older Linux kernel versions.
Description Linux kernel versions 2.6.8-10 have a known bug in their thread handling code. This bug can cause sbd to exit immediately after servicing its first client request. For more information, see http://www.ussg.iu.edu/hypermail/linux/kernel/0410.2/1650.html.
Workaround This bug was fixed in Linux kernel 2.6.11. This does not affect the Linux distributions currently supported by StreamBase. If you are running an older kernel in the 2.6.8-10 range, then set the environment variable STREAMBASE_IGNORE_SIGHUP=1 to work around this problem. Set the variable in the login environment in which StreamBase Server will run.
SB‑1039 C++ code is not binary compatible between releases.
Description If you use either the C++ Client library, plug-in functions, or plug-in aggregates, you must recompile them from source in order to use them in each new release. Without recompiling, StreamBase returns an error message at runtime.
bin/sbd: error while loading shared libraries ...
cannot open shared object file: No such file or directory
Workaround Recompile your C++ code from your original source against the new headers.
SB‑804 init.d script uses a hard-coded port number.
Description UNIX only. If you change /opt/streambase/etc/sbd.sbconf to point to a port other than 10000, then the stop, restart, and status commands in the /etc/init.d/streambase script do not work as expected. Those commands assume that sbd is running on port 10000.
Workaround Edit the commands in the /etc/init.d/streambase script to use the -p option, to force sbd to run on the same port specified in the modified sbd.sbconf file.