Release Note Archives

This page summarizes the history of limitations resolved in previous StreamBase releases.

Limitations Resolved in 7.0.x

Fixed in 7.0.12
Number Resolution
Release 7.0.12 incorporates all fixes resolved in the release 6.6 series through release 6.6.18. See Limitations Resolved in 6.6.x for details.
SB‑21880 An error in the Aggregate operator was causing expressions such as firstval(input1).* to run out of code size too soon. This was corrected.
SB‑21768 The schema for the status port of the FXall Relationship Trading Provider adapter was optimized to use current StreamBase APIs.
SB‑21655 When using the optional StreamBaseFIX FIX engine, FIX tag values greater than about 33000 resulted in an error when loading the data dictionary. This was corrected.
SB‑21648 The error message from calling sendOutput() on the instance of a Java operator used for typechecking was improved.
SB‑21602 An exception that could occur during initial connection using the Deutsche AutobahnFX Trading System adapter was fixed.
SB‑20656 The Wombat MAMA Output adapter was verified to work over the TIBCO Rendezvous (RV) transport. You must obtain a Wombat library version that supports RV and is at least version 5.0.4 or later.
Fixed in 7.0.11
Number Resolution
Release 7.0.11 incorporates all fixes resolved in the release 6.6 series through release 6.6.17. See Limitations Resolved in 6.6.x for details.
SB‑21438 In previous releases, a port on which to run StreamBase Server specified in a server configuration file was honored for standard uses but ignored when running same application as an embedded server as part of the StreamBase JUnit test framework. This was corrected.
SB‑21249 When importing multiple table schemas that used private schemas from the same file, a Query Table could pick up an incorrect schema. This was fixed.
SB‑21161 When the Thomson Reuters RMDS Subscribing Input adapter was configured to process market feed and emit thin tuples, if it encountered an enumeration field with an invalid value, it generated an exception. This was fixed.
SB‑13271 Previous releases of the .NET Client Library did not provide a way to construct a new DequeueResult, while the Java Client Library did provide SimpleDequeueResult for this purpose. This situation was corrected in the October 2011 refresh of the .NET API with the addition of the DequeueResult constructors. See Migrating .NET Clients.
SB‑12662 In previous releases of the .NET Client Library, using IsNull("wrong_field_name") threw the generic SEHException instead of StreamBase.SB.NoSuchFieldException. This situation was corrected in the October 2011 refresh of the .NET API as described above.
Fixed in 7.0.10
Number Resolution
Release 7.0.10 incorporates all fixes resolved in the release 6.6 series through release 6.6.16. See Limitations Resolved in 6.6.x for details.
SB‑21249 When importing multiple table schemas that used private schemas from the same file, a Query Table could pick up an incorrect schema. This was fixed.
SB‑21198 In previous releases, a Stack Overflow Error could be thrown while bundling an application contained in a project with inadvertently circular project references. The bundler was updated to better handle these conditions.
SB‑21116 The rfa.jar library provided by Thomson Reuters was causing a Null Pointer Exception error when the library received a STATUS_RESP message that did not contain status state for the item stream. This error was corrected by upgrading the rfa.jar version shipped with StreamBase from 7.0.0 to 7.0.1.E4.
SB‑21114 In previous releases, using the Extract as Module command in the EventFlow Editor could result in several duplicate placeholder tables in the extracted Module Reference. This was corrected.
SB‑21098 In previous releases, when using an Edit Schema tab in the Properties view, Studio could throw a Stack Overflow Error that referred to java.util.TreeMap when adding a field to a multilevel schema. This was fixed.
SB‑21096 The use of xi:include in a StreamBase Server configuration file was not working as expected when sbd -f sbd.sbconf ... was run from a directory with spaces in its name. This was corrected.
SB‑21087 Studio was leaking memory by leaving instances of the EventFlow Editor in the heap under certain circumstances. The cause was identified and corrected.
SB‑21085 A corner case for unsupported, custom-generated application XML that passed typechecking in previous releases became invalid in StreamBase 7.x. StreamBase was updated to handle these cases.
SB‑21080 When using the FIX Schema Designer, FIX fields of type UTCTimestamp, UTCDate, UTCDateOnly, UTCTimeOnly, Time, and LocalMktDate are now correctly mapped as StreamBase timestamp fields instead of int fields.
SB‑21056 Studio could throw a Null Pointer Exception when you edited the named schema that defined a Query Table shared between parent and child modules. This was corrected.
SB‑21056 Studio could throw a Null Pointer Exception when you edited the named schema that defined a Query Table shared between parent and child modules. This was corrected.
SB‑21020 Using the EventFlow Editor's Extract as Module command followed by Undo was resulting in a Null Pointer Exception. This was fixed.
SB‑21007 In previous releases of the EventFlow Editor, on a canvas with one Query Table and two unconnected Query operators all in vertical alignment, if the cursor passed over Query1 when dragging an association arc from the table to Query2, the arc connection would be grabbed by Query1. This was fixed.
SB‑20969 Using the Extract as Module command in the EventFlow Editor could result in duplicate module parameters, which cause the extracted module to fail typechecking. This was corrected.
SB‑20859 There were certain cases of dragging a module from the Package Explorer view to the canvas to form a Module Reference that working in 6.6.x releases, but not in 7.x releases. The cause was identified and fixed.
SB‑20804 When reading a compressed input file, the Binary File Reader adapter was throwing a spurious WARN message about a protocol version mismatch. The adapter was updated to suppress this message.
SB‑20703 In the Data File Options dialog of the Feed Simulation Editor, StreamBase disallowed selecting Timestamp builder in the Map to file column if the First row as header check box was selected. This unnecessary restriction was removed.
SB‑17816 In previous releases, a custom simple function that returns void caused a Null Pointer Exception. This condition was corrected to report a typecheck error.
Fixed in 7.0.9
Number Resolution
Release 7.0.9 incorporates all fixes resolved in the release 6.6 series through release 6.6.15. See Limitations Resolved in 6.6.x for details.
SB‑20889 The Gather operator was updated to accept more than 31 incoming streams.
SB‑20867 Using a Query operator configured to output no rows from the query, but also configured with a group-by clause, would halt StreamBase Server with an XmlRpcManager exception. The cause was found and fixed.
SB‑20772 The Interactive Data PlusFeed Input adapter could produce a Java error message instead of timing out when the adapter or the containing StreamBase Server was shutting down. This condition only affected the adapter in releases 6.6.14, 7.0.7, 7.0.8, and 7.1.2, and was corrected as of this release.
SB‑20768 Under certain circumstances, Studio could unnecessarily rebuild workspace projects more than necessary on changing project properties for a given project. The underlying cause was identified and corrected.
SB‑20758 The TBF adapter was emitting a null pointer exception when its recovery session did not have a matching feed reconnect session. This was fixed.
SB‑20725 CPU intensive modules with loops that were designated to run in multiple concurrent threads would exhibit unfair sharing of CPU resources on multiple CPU machines. This was corrected.
SB‑20598 Container connections specified in a StreamBase deployment file were not always started in the specified order, which could prevent some connections from occurring in a multiple sbd environment. This was fixed.
Fixed in 7.0.8
Number Resolution
Release 7.0.8 incorporates all fixes resolved in the release 6.6 series through release 6.6.14. See Limitations Resolved in 6.6.x for details.
SB‑20642 In the Java Client Library, the internals of the SBServerManager and Dequeuer interfaces in the sb.unittest package were reworked to provide faster dequeues.
SB‑20614 In previous releases of the FIX adapter (and all adapters based on it) when using the QuickFIX/J FIX engine, tuples with a non-null list field representing a repeating group could be converted into a FIX message where the group's NumInGroup field would have a value of zero. This was corrected.
SB‑20605 In previous releases, the TBF Input adapter could stop processing retransmit requests if messages arrived out of order on the multicast feed. This was fixed.
SB‑20565 An internal class was producing an error when included in debug output that was run with an elevated log level. This was corrected.
SB‑20559 In previous releases, adapters that use a file resource property would re-dirty the containing module immediately after saving the containing module in Studio. This was fixed.
SB‑20550 In the Thomson Reuters RMDS Subscribing Input adapter, OMMData values with attribute isBlank=true are now discarded.
SB‑20521 As before, StreamBase Systems does not recommend overriding the Operator.getName() method. However, StreamBase internals are now protected from the consequences if your application requires doing so.
SB‑20517 When the Studio preference setting Use middle mouse button to scroll instead of pan was selected, clicking with the middle mouse button in the EventFlow Editor would sometimes select an arc instead of scrolling. This was corrected.
SB‑20506 In the Containers tab of the Launch Configuration dialog, Studio inadvertently allowed changing the name of the container named default, despite Studio requiring the primary application module to run in default. Changing the name of the default container is now disallowed in that dialog.
SB‑20473 The Reuters Schema Designer feature lost its ability to connect to RFA6 servers after a recent update of the Reuters libraries. The cause was found and fixed.
SB‑20469 Module-scope dynamic variables were not correctly recognized in operator expressions. This was fixed.
SB‑20408 The EventFlow Editor in Studio could flicker and redraw excessively after deleting many operators. The cause was found and fixed.
Fixed in 7.0.7
Number Resolution
Release 7.0.7 incorporates all fixes resolved in the release 6.6 series through release 6.6.13. See Limitations Resolved in 6.6.x for details.
SB‑20495 Table schemas using named schemas were not being correctly added to applications when implementing an interface. This was fixed.
SB‑20466 In previous releases, when using a Query read or delete operation on a Query Table, if you specified a group-by field and then used that same field as part of an aggregate output expression, the Query operation could result in an error. This was corrected.
SB‑20397 An issue with the sorting of the names of named schemas was fixed.
SB‑20391 The feed simulation for the RTD sample included with the StreamBase Adapter for Microsoft Excel had two columns out of order. This was corrected.
SB‑20345 A deadlock issue in the JMS adapter was detected and fixed.
SB‑20330 The data dictionary for the Currenex adapter was updated to more accurately reflect the latest Currenex specification.
SB‑20325 An earlier fix, SB-19792, uncovered a conflict between Studio and certain adapters, including the TIBCO Subscribe adapter, that were using older classloaders. The cause was identified and fixed.
SB‑20321 A StackOverflowError was sometimes generated when saving portions of the Trading System Framework as a StreamBase bundle. This was fixed.
SB‑20299 The StreamBaseFIX FIX engine was updated with a mechanism to specify FIX message storage policy on a per-session basis. New settings in the adapter configuration file for the FIX adapter (and all StreamBase adapters that use the StreamBaseFIX engine) are <storage-factory> and <storage-directory>. These settings supercede the similar settings in the properties file, which allows per session settings.
SB‑20287 The FIX adapter, and all StreamBase adapters that use the QuickFIX/J FIX engine, were updated to correct a problem in the engine whereby an output adapter would write out the fields of a repeating group in the order in which they appeared in the StreamBase schema instead of the order of the data dictionary.
SB‑20238 In some instances, the QuickFIX/J and StreamBaseFIX FIX engines were not correctly handling the LOCALMKTDATE FIX data type. The cause was identified and corrected.
SB‑19883 Modules that implement an interface underwent unnecessary typechecking whenever any other module or interface file was saved. This was fixed.
SB‑19875 JMS embedded adapters were incorrectly handling white space in CDATA values in their configuration files. This was corrected.
Fixed in 7.0.6
Number Resolution
Release 7.0.6 incorporates all fixes resolved in the release 6.6 series through release 6.6.13. See Limitations Resolved in 6.6.x for details.
SB‑20286 A NullPointerException error could be emitted from the StreamBaseFIX FIX engine when parsing a FIX message with repeating groups. This was corrected.
SB‑20136 The StreamBase Admin operator, when running with its asynchronous option enabled, sometimes caused a null pointer exception error. This was fixed.
SB‑20069 Errors in aggregate expressions that attempted to access nested tuple fields were not detected at typecheck time, and instead caused a runtime error in the server. This was fixed.
SB‑20047 The FIX adapter, and all StreamBase adapters that use the QuickFIX/J FIX engine, were updated so that log files that store the last sequence number of received messages are now correctly closed when the adapter exits, which allows deletion and cleanup of such files without shutting down StreamBase Server.
SB‑19970 In previous 7.0.x releases, running the Reroute components and arcs for best layout function had the inadvertent effect of expanding any collapsed Groups. This was fixed to preserve Group status.
SB‑19931 In previous 7.0.x releases, the EBS adapter could fail to start. The cause was identified and corrected.
SB‑19917 In the Application Input and Output views, using the Copy as CSV function from the context menu always included values from the Time column, even when that column was configured to not appear. This was corrected such that Copy as CSV now copies only the visible columns.
SB‑19899 In previous 7.0.x releases, dragging an arc to the edge of the canvas did not automatically scroll the canvas in that direction. This was corrected and the pre-7.x behavior restored.
SB‑19853 Certain erroneous configurations involving a dynamic variable in the Group Options tab of a Query operator would incorrectly pass typechecking, but then cause a runtime error in the server. This was corrected.
SB‑19841 Studio would sometimes show a typechecking error message when in the Properties view when a field's expression definition began with a module parameter in the form ${param}. Studio was corrected to allow this valid construction without showing an error.
SB‑19772 In previous 7.0.x releases, double-clicking an Input Stream or Output Stream component on the canvas failed to open and bring its Properties view to the foreground. This was corrected.
SB‑19739 When loading EventFlow modules created with an earlier release into Studio 7.x, on occasion, an arc could be rendered with a gap. The cause was found and corrected.
SB‑19653 Errors in custom resolver functions now take into account any function aliases in use when reporting the error.
SB‑19351 In previous 7.0.x releases, the X X keyboard shortcut with no operators selected acted as if all operators were selected. This was corrected to restore the documented behavior, the same as in the 6.6.x release series, that X X without a selection draws an arc on the last two items placed on the canvas.
SB‑19223 In previous 7.0.x releases, copy and paste of an entire EventFlow module failed to copy Groups or Group contents. This was corrected.
SB‑19202 For Studio on Linux, the Reroute Arcs function's keyboard shortcut was changed to Shift+L. Studio's keyboard shortcut on Windows for that function is Ctrl+Alt+L, but on Linux using a Gnome-based desktop, that key combination locks the screen by default.
SB‑19087 In previous releases, when dragging a new Query operator to the canvas, the Group Options tab in its Properties view was immediately available, but any options entered there were not saved once you connected a data construct to the operator. Starting with 7.0.6, a new Query operator's Properties view shows only the General tab until a data construct is connected.
SB‑18851 The High Availability Finite State Machine sample was updated to correct minor errors.
SB‑15779 On the EventFlow canvas, running the Reroute Arcs function on a selected arc inside a Group resulted in the arc being routed around the Group. This was fixed.
Fixed in 7.0.5
Number Resolution
Release 7.0.5 incorporates all fixes resolved in the release 6.6 series through release 6.6.12, and in the release 6.5 series through release 6.5.13. See Limitations Resolved in 6.6.x and Limitations Resolved in 6.5.x for details.
SB‑19702 Typecheck error messages from the Query operator could sometimes appear twice for one error. This was fixed.
SB‑19582 A race condition dealing with adding many containers at the same time with the StreamBase Admin operator was fixed.
SB‑19557 The TIBCO Subscribing Input adapter was emitting a Notice informational log message that reported the adapter's current queue size on receipt of every Tibrv message. This was fixed.
SB‑19461 The SettlDate field was added to the data dictionary for the EBS adapter.
SB‑19454 The temporary workspace directory created by the StreamBase Manager utility was getting created in the wrong location. This was corrected.
SB‑19441 In previous 7.0.x releases, the visual debugger in Studio showed placeholders instead of field names for Query Tables. This was fixed.
SB‑19421 In previous 7.0.x releases, collapsing then moving a group on the EventFlow canvas prevented the group from being uncollapsed. This was corrected.
SB‑19398 Error messages from the sbargen command now include file names for each error line.
SB‑19293 The StreamBase .bin file installer for Solaris for Intel would sometimes fail to extract files. This was corrected.
SB‑19273 The Reuters RMDS Contribution Output adapter was reading its configuration file in a nonstandard way that prevented applications that included this adapter from being bundled. This was corrected.
SB‑19010 In previous releases on Windows, a space in a path set by the TMP environment variable was not recognized. This was fixed.
SB‑18749 In recent releases, the default value for the Java property streambase.tmpdir was used even when a customer specified a different value on the sbd command line. This was corrected, and user-specified values are once again honored.
SB‑13159 In previous releases, clicking the Home button in the standalone Help Viewer opened a generic page on using Eclipse Help. This was corrected to open the home page of StreamBase documentation.
Fixed in 7.0.4
Number Resolution
Release 7.0.4 incorporates all fixes resolved in the release 6.6 series through release 6.6.11, and in the release 6.5 series through release 6.5.12. See Limitations Resolved in 6.6.x and Limitations Resolved in 6.5.x for details.
SB‑19437 Java code that implemented the FXall Trading Provider and Trading Customer adapters was assigning names to schema instances constructed by the adapters, which sometimes caused a typechecking conflict if customer code specified a named schema with the same name. These adapters were updated to not assign names in Schema() constructors.
SB‑19433 In previous releases, setting the Log Level to -1 or -2 was honored when using the streambase.log-level system property, but not when using the STREAMBASE_LOG_LEVEL environment variable. This was corrected.
SB‑19424 An internal redundancy in the Log adapter was corrected. Customers who use the Log adapter configured at DEBUG or TRACE level in performance-sensitive paths should experience a significant performance improvement.
SB‑19288 ERROR messages were enhanced to include the name of the operator in which the error occurred.
SB‑19284 In the 6.6.x release series, if a bundle file included a precompiled archive file (.sbar file), and the sbd version running the bundle did not match the sbd version that generated the .sbar file, then sbd automatically fell back to compiling the EventFlow and StreamSQL modules contained in the bundle.

In releases 7.0.0 through 7.0.3, a version mismatch with a bundle's precompiled files did not automatically fall back to compiling the source files in the bundle, and instead stopped and reported the mismatch. As of release 7.0.4, this was corrected, and the 6.6 behavior was restored.

SB‑18792 In previous releases, in a custom Java operator or adapter, running the typecheck() method would sometimes remove the Description attribute for subtuple fields in a schema that included a list of tuples. This was corrected.
SB‑17915 In previous releases, when passing string values through the StreamBase .NET Client API, characters could be lost if the value contained non-Latin or other special characters. This was corrected, and now, if you configure both StreamBase Server and your .NET client environment for Unicode support as described on Unicode Support, there is no character loss when using the .NET API.
Fixed in 7.0.3
Number Resolution
Release 7.0.3 incorporates all fixes resolved in the release 6.6 series through release 6.6.11, and in the release 6.5 series through release 6.5.12. See Limitations Resolved in 6.6.x and Limitations Resolved in 6.5.x for details.
SB‑19301 In previous releases, the RMDS Contribute adapter was responding with an error in response to certain ACK and NAK messages. The cause was determined and corrected.
SB‑19264 A problem was found with schemas in Java Operator tuples that had multiple instances of the same nested named schema. The problem caused incorrect values to be set in the duplicated nested named schema. The problem was corrected.
SB‑19260 The FXall Relationship Trading Provider was inadvertently discarding an order when a quote for the order was withdrawn. This was fixed.
SB‑19247 Since release 7.0.0, the sbargen command has been using excess memory during application compilation, with the result that applications that precompiled easily in release 6.6.x failed to precompile in 7.0.0 through 7.0.2. The cause was found and the problem corrected.
SB‑19181 The getLeadershipStatus() function in the StreamBase expression language was not correctly working when used as part of a filtered subscribe predicate in a client application. This was fixed.
SB‑19173 In previous releases, Error Streams were overwriting explicitly set action field settings in the error tuple when crossing module boundaries. This was corrected.
SB‑19024 In previous releases, invalid time and date format streams were causing hard-to-decipher error messages on startup of StreamBase Server. Such errors are now better caught at typecheck time, and if not detected during typecheck, a more informative error message is produced.
SB‑18918 In previous releases, some exceptions thrown during application startup were missing some information when the application was loaded by means of the sbadmin addContainer command. This was corrected.
Fixed in 7.0.2
Number Resolution
Release 7.0.2 incorporates all fixes resolved in the release 6.6 series through release 6.6.11, and in the release 6.5 series through release 6.5.12. See Limitations Resolved in 6.6.x and Limitations Resolved in 6.5.x for details.
SB‑19118 In previous 7.0.x releases, using the pinned feature of the Palette view did not survive Studio restarts. This was corrected, and Palette view pinning was restored to the same functionality as in release 6.6, as described in Palette View Drawer Pinning.
SB‑18758 A race condition when using the get or set dynamic variable feature was corrected.
Fixed in 7.0.1
Number Resolution
Release 7.0.1 incorporates all fixes resolved in the release 6.6 series through release 6.6.10, and in the release 6.5 series through release 6.5.11. See Limitations Resolved in 6.6.x and Limitations Resolved in 6.5.x for details.
SB‑19013 Some parts of the C++ Client Library were ignoring the STREAMBASE_XMLRPC_TIMEOUT variable, leaving the XML RPC timeout at zero, meaning wait forever. This was corrected.
SB‑18981 Applications in 7.0.0 that used the Query Table replication feature could not be typechecked in Studio, but still typechecked and ran when running from the command line with sbd. This was fixed.
SB‑18901 In a rare configuration where the output port of one Query write operator was shared by two arcs, one leading to a second Query write operator updating the same Query Table, "old" table rows emitted to the third operator (such as the Map operator shown here) could contain incorrect values. The data in the Query Table itself was not corrupted. The condition was not triggered when the first Query operator was followed by any single operator, such as a Split connected to the second Query and third operators. The cause of the problem was identified and corrected.
SB‑18838 Applications that specified JDBC data sources could be bundled, but the bundle would sometimes not run, reporting an error message that the data source was modified since the application was compiled. This was corrected.
SB‑18566 In previous releases, when using the Query operator for Write-Insert or Write-Update operations, if you selected Assign these values to "new" table row for the behavior-on-failure control, the default value provided for tuple fields was tuple(null), which failed to validate. This was fixed, and the default value now provided for all data types is simply null.
SB‑18305 StreamBase bundle files created with the -c option were correctly generating a precompiled archive file, and the .sbar file was included in the bundle. However, when running such a bundle, StreamBase Server would sometimes not use the .sbar file, resulting in slower startup times than expected. This was corrected.
SB‑18807 In-memory Query Tables that use secondary indices were optimized to reduce their memory overhead. Improvements on the order of 10 to 25% less overhead have been seen in real world applications.
SB‑18726 In previous releases, only selecting without changing a Module Reference that contained a placeholder table would incorrectly flag the EventFlow Editor session as needing to be saved. This was fixed.
SB‑18716 A version issue with the MarketFactory API JAR file included with StreamBase was corrected.
SB‑18713 File chooser dialogs in Studio were failing to show StreamBase interface files imported from other modules. This was fixed.
SB‑18672 In previous releases, the return type of custom Java functions was not checked for validity. This was corrected.
SB‑18669 A race condition was found and corrected that could cause a DLL crash in the Microsoft Excel external adapter when used with Excel 2010.
SB‑18661 In the EBS adapter, a Mina parsing error was corrected.
SB‑18658 The Currenex and EBS output adapters were reporting a null pointer exception when tuples were sent before the adapter's FIX connection was established. Now tuples sent to these output adapters before the connection is established are dropped and reported on the console.
SB‑18481 StreamBase JUnit tests with an external data source configured in the server configuration file could fail with the erroneous error data source is already defined. This was corrected.
SB‑18425 The Load StreamBase Component Exchange dialog could appear to be empty if you scrolled to the bottom of the dialog and then used the search feature. This was fixed.
SB‑18120 The JSONTupleMaker class in the StreamBase unit test API was enhanced to report errors on unexpected or mismatched fields in JSON strings used in test classes.
SB‑17822 In release 7.0.0, memory-based Query Tables could not be safely expanded and viewed when using the Visual Debugger in StreamBase Studio. This was corrected.
SB‑17726 In some cases, an operator parameter specified in the server configuration file was not correctly expanded when referenced with ${param} in a module parameter. This cause was identified and corrected.
SB‑17714 When using the Visual Debugger in StreamBase Studio, Studio now automatically opens the Editor tab of the associated EventFlow Editor for the active module when you click a stack frame line in the Debug view.
Fixed in 7.0.0
Number Resolution
Release 7.0.0 incorporates all fixes resolved in the release 6.6 series through release 6.6.6, and the release 6.5 series through release 6.5.10. See Limitations Resolved in 6.6.x and Limitations Resolved in 6.5.x for details.
SB‑16936, SB‑16975 In previous releases, running ProjectClean on a StreamBase project while EventFlow or StreamSQL Editor sessions are open could leave those editors unable to complete typechecking under some circumstances. The cause was identified and corrected.
SB‑15596 Using RefactorRename on a Studio project folder was failing to adjust the project's module search path and resource search path properties. This was corrected.
SB‑14436 Starting with release 7.0.0, output streams that use a declared schema now pass typechecking without a stream connected to their input port. This allows output streams with declared schemas to be used in StreamBase interfaces.
SB‑12993 The Union operator no longer requires the order of sub-fields in tuple fields to match when using the default Loose union setting. However, sub-field order must still match when using the Strict union or Declared schema options, as described in the Known Issues section.

Limitations Resolved in 6.6.x

Fixed in 6.6.20
Number Resolution
Release 6.6.20 incorporates all fixes resolved through 6.6.19.
Fixed in 6.6.19
Number Resolution
Release 6.6.19 incorporates all fixes resolved in the release 6.5 series through release 6.5.13. See Limitations Resolved in 6.5.x for details.
SB‑22259 The Wombat MAMA Publishing Output adapter was updated to clarify WARN log messages from the adapter that occur when the feed dictionary changes, but the application still expects a field with a type defined in the previous dictionary.
SB‑22231 When StreamBase Server starts, it keeps an internal copy of the PATH environment variable, which it uses only to locate processes requested to be run by the External Process operator. In previous releases, on 64-bit Windows, an error prevented STREAMBASE_HOME/bin64 from appearing in this internal PATH, leaving STREAMBASE_HOME/bin as the first entry in the PATH. This was corrected.
SB‑21848 In previous releases, multiple Update operations from Query operators in separate threads to an in-memory Query Table showed non-atomic behavior, whereas the same case for an on-disk Query Table did not. The cause was identified and corrected.
SB‑21417 The high availability sample in sample/ha was failing to run from its start scripts on Windows. This was corrected.
Fixed in 6.6.18
Number Resolution
Release 6.6.18 incorporates all fixes resolved in the release 6.5 series through release 6.5.13. See Limitations Resolved in 6.5.x for details.
SB‑20656 The Wombat MAMA Output adapter was verified to work over the TIBCO Rendezvous (RV) transport. You must obtain a Wombat library version that supports RV and is at least version 5.0.4 or later.
Fixed in 6.6.17
Number Resolution
Release 6.6.17 incorporates all fixes resolved in the release 6.5 series through release 6.5.13. See Limitations Resolved in 6.5.x for details.
SB‑21438 In previous releases, a port specified in a server configuration file on which to run StreamBase Server was honored for standard uses but ignored when running same application as an embedded server as part of the StreamBase JUnit test framework. This was corrected.
SB‑21161 The Thomson Reuters RMDS Subscribing Input adapter, configured to process market feed and emit thin tuples, if it encountered an enumeration field with an invalid value, it generated an exception. This was fixed.
SB‑20273 In previous releases, certain StreamBase-provided and customer-written input adapters that emit tuples at high rates could incur timeouts when being shut down or suspended. This was corrected.
SB‑13271 Previous releases of the .NET Client Library did not provide a way to construct a new DequeueResult, while the Java Client Library provided SimpleDequeueResult for this purpose. This situation was corrected in the October 2011 refresh of the .NET API with the addition of the DequeueResult constructors. See Migrating .NET Clients.
SB‑12662 In previous releases of the .NET Client Library, using IsNull("wrong_field_name") threw the generic SEHException instead of StreamBase.SB.NoSuchFieldException. This situation was corrected in the October 2011 refresh of the .NET API as described above.
-->
Fixed in 6.6.16
Number Resolution
Release 6.6.16 incorporates all fixes resolved in the release 6.5 series through release 6.5.13. See Limitations Resolved in 6.5.x for details.
SB‑21116 The rfa.jar library provided by Thomson Reuters was causing a Null Pointer Exception error when the library received a STATUS_RESP message that did not contain status state for the item stream. This error was corrected by upgrading the rfa.jar version shipped with StreamBase from 7.0.0 to 7.0.1.E4.
SB‑20937 An issue in the IBM WebSphere MQ adapter with parsing XML messages into tuples was corrected. Fields containing XML escape sequences such as A &amp; B were inadvertently truncated, populating the tuple field with A instead of A & B.
SB‑17816 In previous releases, a custom simple function that returns void caused a Null Pointer Exception. This condition was corrected to report a typecheck error.
Fixed in 6.6.15
Number Resolution
Release 6.6.15 incorporates all fixes resolved in the release 6.5 series through release 6.5.13. See Limitations Resolved in 6.5.x for details.
SB‑20772 The Interactive Data PlusFeed Input adapter could produce a Java error message instead of timing out when the adapter or the containing StreamBase Server was shutting down. This condition only affected the adapter in releases 6.6.14, 7.0.7, 7.0.8, and 7.1.2, and was corrected as of this release.
SB‑20758 The TBF adapter was emitting a null pointer exception when its recovery session did not have a matching feed reconnect session. This was fixed.
SB‑20725 CPU intensive modules with loops that were designated to run in multiple concurrent threads would exhibit unfair sharing of CPU resources on multiple CPU machines. This was corrected.
SB‑20642 In the Java Client Library, the internals of the SBServerManager and Dequeuer interfaces in the sb.unittest package were reworked to provide faster dequeues.
SB‑20614 In previous releases of the FIX adapter (and all adapters based on it) when using the QuickFIX/J FIX engine, tuples with a non-null list field representing a repeating group could be converted into a FIX message where the group's NumInGroup field would have a value of zero. This was corrected.
SB‑20605 In previous releases, the TBF Input adapter could stop processing retransmit requests if messages arrived out of order on the multicast feed. This was fixed.
SB‑20565 An internal class was producing an error when included in debug output that was run with an elevated log level. This was corrected.
SB‑20521 As before, StreamBase Systems does not recommend overriding the Operator.getName() method. However, StreamBase internals are now protected from the consequences if your application requires doing so.
SB‑20473 The Reuters Schema Designer feature lost its ability to connect to RFA6 servers after a recent update of the Reuters libraries. The cause was found and fixed.
Fixed in 6.6.14
Number Resolution
Release 6.6.14 incorporates all fixes resolved in the release 6.5 series through release 6.5.13. See Limitations Resolved in 6.5.x for details.
SB‑20550 In the Thomson Reuters RMDS Subscribing Input adapter, OMMData values with attribute isBlank=true are now discarded.
SB‑20499 The Wombat MAMA adapters were updated to allow configuration of their properties before the required third-party Wombat JAR file has been installed. This corrects the NoClassDefFoundError messages seen when starting Studio for Linux at the command prompt.
SB‑20469 Module-scope dynamic variables were not correctly recognized in operator expressions. This was fixed.
SB‑20391 The feed simulation for the RTD sample included with the StreamBase Adapter for Microsoft Excel had two columns out of order. This was corrected.
SB‑20345 A deadlock issue in the JMS adapter was detected and fixed.
SB‑20330 The data dictionary for the Currenex adapter was updated to more accurately reflect the latest Currenex specification.
SB‑20325 An earlier fix, SB-19792, uncovered a conflict between Studio and certain adapters, including the TIBCO Subscribe adapter, that were using older classloaders. The cause was identified and fixed.
SB‑20299 The StreamBaseFIX FIX engine was updated with a mechanism to specify FIX message storage policy on a per-session basis. New settings in the adapter configuration file for the FIX adapter (and all StreamBase adapters that use the StreamBaseFIX engine) are <storage-factory> and <storage-directory>. These settings supersede the similar settings in the properties file, which allows per session settings.
SB‑20287 The FIX adapter, and all StreamBase adapters that use the QuickFIX/J FIX engine, were updated to correct a problem in the engine whereby an output adapter would write out the fields of a repeating group in the order in which they appeared in the StreamBase schema instead of the order of the data dictionary.
SB‑20286 A NullPointerException error could be emitted from the StreamBaseFIX FIX engine when parsing a FIX message with repeating groups. This was corrected.
SB‑20238 In some instances, the QuickFIX/J and StreamBaseFIX FIX engines were not correctly handling the LOCALMKTDATE FIX data type. The cause was identified and corrected.
SB‑19883 Modules that implement an interface underwent unnecessary typechecking whenever any other module or interface file was saved. This was fixed.
Fixed in 6.6.13
Number Resolution
Release 6.6.13 incorporates all fixes resolved in the release 6.5 series through release 6.5.13. See Limitations Resolved in 6.5.x for details.
SB‑20220 The Thomson Reuters RMDS Subscribing Input adapter was updated to download its data dictionary only once per connection when using the RMDS 6 message model.
SB‑20216, SB‑18913 In interactive monitoring of a running application with StreamBase Manager or the sbmonitor command, queue size information was not being updated correctly, with the result that some queues that appeared to be empty were not. In addition, the batch processing time and batch latency values were sometimes reported as negative numbers. These issues were corrected.
SB‑20214 Using the HotspotFX adapter with a getAllTrades request resulted in an error message. The cause was identified and corrected.
SB‑20073, SB‑19776 When the Thomson Reuters RMDS adapter was used in a certain sequence of events (subscribe, duplicate subscribe, unsubscribe, subscribe), the duplicate subscribe would silently override the unsubscribe, resulting in two subscriptions. This was fixed.
SB‑20047 The FIX adapter, and all StreamBase adapters that use the QuickFIX/J FIX engine, were updated so that log files that store the last sequence number of received messages are now correctly closed when the adapter exits, which allows deletion and cleanup of such files without shutting down StreamBase Server.
SB‑20041 The CSV File Writer Input adapter was emitting an incorrect filename for a Closed event. This was fixed.
SB‑20039 The CSV File Writer Input adapter was updated so that its File Name property is optional if the Start Control Port property is enabled. The adapter emits a warning if a write tuple is enqueued before an output file has been opened, which can happen if no File Name is specified and a start control tuple with a file name has not yet been enqueued.
SB-19959 The Thomson Reuters RMDS Contribution Output adapter was inadvertently dividing by 10,000 when publishing or contributing a Reuters Real32 field using a StreamBase int field. This was fixed.
SB-19928 The Currenex adapter had issues dealing with non-ASCII characters in schema definitions used in Java operators. This was resolved.
SB‑19792 A PermGen memory leak in Studio was resolved. This leak would affect users whose workspaces contained projects with large numbers of libraries on the Java Build Path. The leak would manifest with Studio eventually displaying an OutOfMemoryError referring to PermGen space.
SB‑19707 The Wombat MAMA Input adapter would occasionally fail to send an Init tuple when subscribing to a symbol. This was fixed.
SB‑19702 Typecheck error messages from the Query operator could sometimes appear twice for one error. This was fixed.
SB‑19673 The CSV File Writer Input adapter no longer shuts down if the configured file cannot be opened during startup and a Start Control Port is enabled.
SB‑18791 In previous releases, in a Schema tab of the Properties view for an operator, if the schema was defined by a named schema or table schema, the entire grid was disabled including its scroll bars, which prevented read-only inspection of the full grid. Starting with this release, under the same circumstances, the scroll bars for schema grids remain enabled, which allows you to browse the read-only fields.
SB‑18790 In previous releases, when using the EventFlow Debugger, breakpoints in modules that had multiplicity enabled were never hit. This was corrected.
SB‑16223 In previous releases, a custom Java function that returns a list would cause a null pointer exception if the function returned a list(null). This was fixed, and a list(null) is now correctly returned.
SB‑13159 In previous releases, clicking the Home button in the standalone Help Viewer opened a generic page on using Eclipse Help. This was corrected to open the home page of StreamBase documentation.
Fixed in 6.6.12
Number Resolution
Release 6.6.12 incorporates all fixes resolved in the release 6.5 series through release 6.5.12. See Limitations Resolved in 6.5.x for details.
SB‑19557 The TIBCO Subscribing Input adapter was emitting a Notice informational log message that reported the adapter's current queue size on receipt of every Tibrv message. This was fixed.
SB‑19560 A race condition in memory Query Table pooling was found and fixed. This issue could only be triggered when updating a memory Query Table from two or more different parallel regions simultaneously.
SB‑19461 The SettlDate field was added to the data dictionary for the EBS adapter.
SB‑19437 Java code that implemented the FXall Trading Provider and Trading Customer adapters was assigning names to schema instances constructed by the adapters, which sometimes caused a typechecking conflict if customer code specified a named schema with the same name. These adapters were updated to not assign names in Schema() constructors.
SB‑19433 In previous releases, setting the Log Level to -1 or -2 was honored when using the streambase.log-level system property, but not when using the STREAMBASE_LOG_LEVEL environment variable. This was corrected.
SB‑19424 An internal redundancy in the Log adapter was corrected. Customers who use the Log adapter configured at DEBUG or TRACE level in performance-sensitive paths should experience a significant performance improvement.
SB‑19398 Error messages from the sbargen command now include file names for each error line.
SB‑19301 In previous releases, the RMDS Contribute adapter was responding with an error in response to certain ACK and NAK messages. The cause was determined and corrected.
SB‑19293 The StreamBase .bin file installer for Solaris for Intel would sometimes fail to extract files. This was corrected.
SB‑19288 ERROR messages were enhanced to include the name of the operator in which the error occurred.
SB‑19273 The Reuters RMDS Contribution Output adapter was reading its configuration file in a nonstandard way that prevented applications that included this adapter from being bundled. This was corrected.
SB‑19260 The FXall Relationship Trading Provider was inadvertently discarding an order when a quote for the order was withdrawn. This was fixed.
SB‑19181 The getLeadershipStatus() function in the StreamBase expression language was not correctly working when used as part of a filtered subscribe predicate in a client application. This was fixed.
SB‑19024 In previous releases, invalid time and date format streams were causing hard-to-decipher error messages on startup of StreamBase Server. Such errors are now better caught at typecheck time, and if not detected during typecheck, a more informative error message is produced.
SB‑19010 In previous releases on Windows, a space in a path set by the TMP environment variable was not recognized. This was fixed.
SB‑18918 In previous releases, some exceptions thrown during application startup were missing some information when the application was loaded by means of the sbadmin addContainer command. This was corrected.
SB‑18792 In previous releases, in a custom Java operator or adapter, running the typecheck() method would sometimes remove the Description attribute for subtuple fields in a schema that included a list of tuples. This was corrected.
SB‑18749 In recent releases, the default value for the Java property streambase.tmpdir was used even when a customer specified a different value on the sbd command line. This was corrected, and user-specified values are once again honored.
Fixed in 6.6.11
Number Resolution
Release 6.6.11 incorporates all fixes resolved in the release 6.5 series through release 6.5.12. See Limitations Resolved in 6.5.x for details.
SB‑19110 Expressions that combined a StreamBase constant with an asterisk to indicate all fields were incorrectly failing to typecheck. This was fixed.
SB‑19137 The 29West LBM Publishing output adapter was throwing a NullPointerException when run with streambase.operator.parameters.log-level set to 3. This was corrected.
SB‑19028 In previous releases, there were cases where Studio would show a typecheck error due only to field ordering differences between two schemas, but the same module would run as expected in StreamBase Server. Studio typechecking was corrected.
SB‑19022 In previous releases, when using a valid, defined parameter in ${PARAMETER} format in the Join operator's Tuple-based Settings tab, Studio failed to substitute parameter values, resulting in a typecheck error. This was fixed.
SB‑19013 Some parts of the C++ Client Library were ignoring the STREAMBASE_XMLRPC_TIMEOUT variable, leaving the XML RPC timeout at zero, meaning wait forever. This was corrected.
SB‑18929 The FIX data dictionary used by the Currenex adapter was corrected to use data type int for field tag 460 with name "Product".
SB‑18980 Modules with complex module importation patterns were generating spurious typecheck errors. For example, let's say file A.sbint defines named schema A; file B.sbint defines schema B which has a tuple field of type A (imported from A.sbint); then file C.sbapp imports from B.sbint. In previous releases, module C.sbapp would show a typecheck error, complaining that schema A could not be found. This was corrected.
SB‑18960 The Studio Visual Debugger would sometimes miss breakpoints in complex applications that use extension points, especially those set before a Once adapter or other functionality that occurred early. The debugger was corrected for those cases.
SB‑18905 A memory leak in list handling in the C++ and .NET versions of the StreamBaseClient API was fixed.
SB‑18864 When using the Extract as Module command from the context menu in Studio, layout information was being written to the .sbapp file, even when the preference was set to use .sblayout files. This was corrected.
SB‑18838 Applications that specified JDBC data sources could be bundled, but the bundle would sometimes not run, reporting an error message that the data source was modified since the application was compiled. This was corrected.
SB‑18809 The Reuters RMDS Publishing adapter was issuing a confusing error message that reported "no subscribers" after responding to an incoming subscribe request for a RIC.

The expected usage is for the StreamBase application to always issue a REFRESH action in response to a subscribe request before issuing any updates. Accordingly, the adapter was updated to distinguish the true no-subscriber case from the case immediately after receiving a subscribe request. The WARN message for the latter case now reads "There are 0 pending snapshots and 1 pending subscriptions but no active subscriptions for item RICname. Consider publishing a REFRESH instead."

Fixed in 6.6.10
Number Resolution
Release 6.6.10 incorporates all fixes resolved in the release 6.5 series through release 6.5.11. See Limitations Resolved in 6.5.x for details.
SB‑18901 In a rare configuration where the output port of one Query write operator was shared by two arcs, one leading to a second Query write operator updating the same Query Table, "old" table rows emitted to the third operator (such as the Map operator shown here) could contain incorrect values. The data in the Query Table itself was not corrupted. The condition was not triggered when the first Query operator was followed by any single operator, such as a Split connected to the second Query and third operators. The cause of the problem was identified and corrected.
SB‑18566 In previous releases, when using the Query operator for Write-Insert or Write-Update operations, if you selected Output these values instead for the behavior-on-failure control, the default value provided for tuple fields was tuple(null), which failed to validate. This was corrected, and the default value now provided for all data types is simply null.
Fixed in 6.6.9
Number Resolution
Release 6.6.9 incorporates all fixes resolved in the release 6.5 series through release 6.5.11. See Limitations Resolved in 6.5.x for details.
SB‑18869 Message throughput of the 29West LBM Publishing adapter was not at the expected level compared to a similar Java client. This was corrected.
SB‑18868 The 29West LBM adapters were failing to locate their configuration files on the resource search path, leading to a conflict between Studio typechecking and runtime typechecking. This was corrected.
SB‑18867 The 29West LBM Subscribing input adapter could fail to subscribe to a topic. This was fixed.
SB‑18847 The 29West LBM Publishing Output adapter was emitting the error topic already associated with a source because idle topics were inadvertently discarded after a short period of inactivity. The cause was identified and fixed.
SB‑18846 Shutting down a container that includes a FIX adapter before it has completely initialized no longer throws an exception.
SB‑18845 A custom aggregate function called by a defined alias was failing when reused with a different schema. The cause was identified and corrected.
SB‑18731 When running a feed simulation, using the rate slider control in the Feed Simulations view could sometimes cause the simulation to stop sending data and enter an infinite loop. This was fixed.
SB‑16212 Typechecking tests were added to the Field Serializer Operator so that it now reports when the Edit Schema tab in the Properties view is null or empty.
Fixed in 6.6.8
Number Resolution
Release 6.6.8 incorporates all fixes resolved in the release 6.5 series through release 6.5.10. See Limitations Resolved in 6.5.x for details.
SB‑18807 In-memory Query Tables that use secondary indices were optimized to reduce their memory overhead. Improvements on the order of 10 to 25% less overhead have been seen in real world applications.
SB‑18305 StreamBase bundle files created with the -c option were correctly generating a precompiled archive file, and the .sbar file was included in the bundle. However, when running such a bundle, StreamBase Server would sometimes not use the .sbar file, resulting in slower startup times than expected. This was corrected.
SB‑18726 In previous releases, only selecting without changing a Module Reference that contained a placeholder table would incorrectly flag the EventFlow Editor session as needing to be saved. This was fixed.
SB‑18716 A version issue with the MarketFactory API JAR file included with StreamBase was corrected.
SB‑18713 File chooser dialogs in Studio were failing to show StreamBase interface files imported from other modules. This was fixed.
SB‑18672 In previous releases, the return type of custom Java functions was not checked for validity. This was corrected.
SB‑18669 A race condition was found and corrected that could cause a DLL crash in the Microsoft Excel external adapter when used with Excel 2010.
SB‑18661 In the EBS adapter, a Mina parsing error was corrected.
SB‑18658 The Currenex and EBS output adapters were reporting a null pointer exception when tuples were sent before the adapter's FIX connection was established. Now tuples sent to these output adapters before the connection is established are dropped and reported on the console.
SB‑18582 In previous releases, if you began a Property view edit, then switched to a non-EventFlow Editor session, then back, your edits were not preserved. This was corrected.
SB‑18481 StreamBase JUnit tests with an external data source configured in the server configuration file could fail with the erroneous error data source is already defined. This was corrected.
SB‑18425 The Load StreamBase Component Exchange dialog could appear to be empty if you scrolled to the bottom of the dialog and then used the search feature. This was fixed.
SB‑17726 In some cases, an operator parameter specified in the server configuration file was not correctly expanded when referenced with ${param} in a module parameter. This cause was identified and corrected.
Fixed in 6.6.7
Number Resolution
Release 6.6.7 incorporates all fixes resolved in the release 6.5 series through release 6.5.10. See Limitations Resolved in 6.5.x for details.
SB‑18627 The EBS adapter was updated to not require the Username, Password, or NewPassword properties in its configuration file when the adapter runs as an acceptor.
SB‑18593 The FIX adapter, and adapters based on it, including the EBS adapter, could fail to read FIX 5.0 data dictionary files when running with the QuickFIX/J FIX engine. This was corrected.
SB‑18529 The Reuters RMDS Publishing Output adapter was publishing ASCII and UTF-8 strings incorrectly, and in a way that could not be consumed by Microsoft Excel clients. This was fixed.
SB‑18526 The Reuters D3000 adapter honored the resource search path during typechecking, but failed to honor it at runtime. This caused the adapter to fail to locate its instrument price format file if placed in a different directory that the StreamBase application file. This was corrected.
SB‑18461 The CSV File Writer adapter was failing to recover from a disk full event, and did not continue writing output when disk space was cleared. This was fixed.
Fixed in 6.6.6
Number Resolution
Release 6.6.6 incorporates all fixes resolved in the release 6.5 series through release 6.5.10. See Limitations Resolved in 6.5.x for details.
SB‑18337 An issue involving Query read operations that used complex group-by expressions was identified and fixed.
SB‑18259 In previous releases, Studio was incorrectly flagging as a duplicate action error certain expressions that used an asterisk in both Field Name and Expressions columns. This was corrected.
SB‑18165 When using multiple TIBCO Rendezvous embedded input adapters in the same StreamBase application, a race condition could result in spurious warnings and null pointer exceptions when under heavy message loads. This was fixed.
SB‑18160 The TIBCO Rendezvous embedded input adapter now allows a specific field ID to be present at multiple levels in a Tibrv message.
SB‑18045 In previous releases, if the IBM WebSphere MQ output adapter was configured to not generate XML from tuple fields, and the adapter's input schema contained both a payload (string) field and a metadata (tuple) field, then the adapter could generate an erroneous typecheck error: "Error(s) in schema of input port (1): Exactly one field (of type string) must be present when not generating XML from tuple fields". This was corrected.
SB‑17968 In previous releases, if a Query-Read operator used an imported table schema and specified match input with null values if now rows were found, the Query operator would fail typechecking after modifying the table schema; but the typechecking state was cleared just by selecting the Query operator and re-saving the module. This cause for this condition was identified and corrected.
SB‑17869 In previous releases, StreamBase JUnit tests did not set the library path for the StreamBase Server that the test invoked to run the test, which prevented any module that used disk-based Query Tables to fail to run. As of release 6.6.6, JUnit tests set the library path to STREAMBASE_HOME/lib or /lib64, as appropriate for the server version you are testing with.
SB‑17821 In previous Studio releases, for EventFlow applications with very long description text for any component, running View Source from the context menu of the canvas would create a non-resizable window the full width of the monitor. This was fixed, and the source view window is now always resizable.
SB‑17799 Threading and performance issues in the CSV Socket Writer adapter were identified and corrected.
SB‑17551 StreamBase Admin operators that specified the correct URI syntax were still not correctly connecting to remote servers. This was fixed.
SB‑17294 In StreamBase Manager, the field that reports the CPU usage of a process was not correctly showing large percentage numbers. This was corrected.
Fixed in 6.6.5
Number Resolution
Release 6.6.5 incorporates all fixes resolved in the release 6.5 series through release 6.5.9. See Limitations Resolved in 6.5.x for details.
SB‑17662 A rare deadlock situation involving parallel access to memory-based Query Tables was fixed.
SB‑17661 The ActivFeed Input adapter was updated to use the originating exchange's time zone when processing timestamp fields, as specified by Activ.
SB‑17649 In previous releases on Linux, the stop subcommand of the /etc/init.d/streambase script failed to stop a running instance of StreamBase Server. This was corrected.
SB‑17633 The Reuters RMDS Publishing Output adapter was not setting an expected flag to indicate completion in non-hierarchical refresh messages. This was corrected.
SB‑17619 Running sbd –b at the StreamBase Command Prompt was producing a crash report. The cause was identified and corrected.
SB‑17600 The Reuters RMDS Publishing Output adapter could lose track of subscriptions to a RIC when two clients subscribed and the second client unsubscribed. This was fixed.
SB‑17573 The Extension Point operator was failing to enforce unique reference names for modules. This was corrected.
SB‑17550 Some StreamBase adapters, including the FIX adapter and adapters that inherit from it, allow you to set a logging level independently of the hosting StreamBase Server's logging level. In previous releases, this feature worked for the Logback logging mechanism that is used by Studio and when sbd is run interactively. However, the adapter log levels did not work with the log4j logging mechanism that is used when running sbd –b or when running StreamBase Server as a Windows service. As of releases 6.5.9 and 6.6.5, adapter log level settings are honored in all contexts.
SB‑17545 When the Copy Schema From dialog prompted to save the application, and you did save, the Copy Schema dialog failed to reappear. This was corrected.
SB‑17499 A schema-bearing operator followed by a downstream operator with a declared schema was causing an EvalPluginException if the declared schema specified a different field order. This was fixed.
SB‑17443 The StreamBase Server configuration file validator failed to support custom functions that took a list of tuples as an argument. This was fixed.
Fixed in 6.6.4
Number Resolution
Release 6.6.4 incorporates all fixes resolved in the release 6.5 series through release 6.5.8. See Limitations Resolved in 6.5.x for details.
SB‑17427 A rounding error was affecting the feed simulator when using a CSV data file as input and the Timestamp from column feature, with the result that timestamps with millisecond components were batched into one second groups. This was corrected.
SB‑17425 Calling Schema.getName() in the typecheck() method for a Java operator or adapter once again returns any schema name set in the properties for that operator or adapter. This capability was present in early 6.5.x releases, was inadvertently removed, and is now restored in releases 6.5.9 and 6.6.4.
SB‑17497 In the StreamBase .NET API, running Tuple.SetList() for a list of longs was throwing an exception. This was fixed.
SB‑17417 The Studio typecheck cache was not correctly flushed when an imported table schema was modified with a new field. This was corrected.
SB‑17392 The installer for 64-bit Windows now creates the placeholder registry key sbd64.n.m for the authentication keys that can be configured for the 64-bit version of StreamBase Server, as described on StreamBase Registry Keys on Windows.
SB‑17366 Typecheck errors could be seen in a newly created EventFlow application that was created with FileNew with the Implement interfaces option selected and the selected interface used schemas that imported schema definitions. This was corrected.
SB‑17335 The combination of a Java operator with a schema and an immediately downstream operator with an explicitly declared schema could fail with an internal error if the explicit schema defined fields in a different order. The internal error condition was eliminated.
SB‑16827 The Edit Table Schema dialog was failing to draw scrollbars for very large schemas, which prevented the Add, Edit, and Remove buttons from showing. This was fixed.
Fixed in 6.6.3
Number Resolution
Release 6.6.3 incorporates all fixes resolved in the release 6.5 series through release 6.5.8. See Limitations Resolved in 6.5.x for details.
SB‑16999 If the text of a Note component on the EventFlow canvas contained a string such as ${text} that could be interpreted as a reference to a variable or parameter, the containing module gave a typecheck error. This was corrected by URL encoding such strings in the EventFlow XML.
SB‑17267, SB‑17237 In previous releases, there were issues with table references, where a Query Table in module A referenced a placeholder table in a Module Reference to module B, and module B in turn imported table schemas from module C. Symptoms included an inability to access the Query Table in module A, and the secondary index failing to appear as an index option for Query Read operations. The cause of these issues was identified and corrected. See also the related entry in the Known Limitations table.
SB‑17158 In the QuickFIX/J library used by the FIX adapter, the FIX message field OrigSendingTime, optionally included in the adapter output schema, now checks the QuickFIX/J configuration setting MillisecondsinTimeStamp, also used by the SendingTime field, to determine whether to include milliseconds. This setting is set to Y by default.
Fixed in 6.6.2
Number Resolution
Release 6.6.2 incorporates all fixes resolved in the release 6.5 series through release 6.5.7. See Limitations Resolved in 6.5.x for details.
SB‑17170 In release 6.6.1 only, an inadvertent error prevented using the mouse to connect the second and subsequent arcs from an operator or module reference with two or more output ports to the next downstream component. In 6.6.1, keyboard shortcuts and context menu actions were unaffected and still worked normally to make the same arc connections. The mouse arc connection issue was fixed in release 6.6.2.
SB‑17124 When using the Alpha Trading Systems EMAPI Order Entry adapter, the Passive Only field was inadvertently set to null for update messages. This was corrected.
SB‑17189 A cache used in conjunction with Query Tables was causing excessive object creation during Query Table writes, which in turned caused excessive garbage collection activity. This was fixed.
SB‑17185 StreamBase Server collects statistics as it runs and emits those as tuples from the system container's stat stream. The collection of statistics for the stat stream was optimized to improve caching and to prevent allocating excessive objects. The default size of the stat stream's tuple cache was changed to dynamically grow as needed by the application. You can control the stat stream's cache size by means of the system property streambase.max-stat-tuples-cache. The default value is –1.
SB‑17165 An error with Query Table replication was fixed for cases of two tables with the same name but different schemas in the same application.
Fixed in 6.6.1
Number Resolution
Release 6.6.1 incorporates all fixes resolved in the release 6.5 series through release 6.5.6. See Limitations Resolved in 6.5.x for details.
SB‑17080 In release 6.6.0, there were cases where the Properties view for a Module Reference could lose its connection to the underlying EventFlow Editor, which forced re-entering property settings. In release 6.6.1, the cause was identified and corrected.
SB‑17066 StreamBase client applications written with the C++ Client Library could enter a loop that consumed 100% of CPU resources, if the client application called dequeue() with a 0 timeout, and no tuples were enqueued to any stream that client subscribed to. The cause was identified and corrected.
SB‑16968 The StreamBase IBM WebSphere MQ Adapter was not emitting an Event Port tuple when it was unable to process a message. This was fixed.
SB‑16950 The Interface tab of the Interface Editor could draw with its buttons inaccessible under the right window edge if an interface or component had a very long description. Starting with 6.6.1, a horizontal scroll bar appears in these cases.
SB‑16898, SB‑17031 The Extension Point operator, introduced in release 6.6.0, was not initially compatible with the Trace Debugger. This was corrected, and you can now step through tuple traces for applications that include both Extension Points and Module References.
SB‑16766, SB‑16767 In previous releases, if you renamed a table schema, locally defined tables that used that table schema failed to be updated. Similarly, if you renamed a named schema used by a table schema, locally defined table schemas were not updated. These issues were fixed.
Fixed in 6.6.0
Number Resolution
Release 6.6.0 incorporates all fixes resolved in the release 6.5 series through release 6.5.5. See Limitations Resolved in 6.5.x for details.
SB‑16777 In previous releases, StreamBase erroneously provided schema, schema field descriptions, and schema names at runtime. These properties are only maintained during application development and have no meaning during application runtime.
SB‑16706 The performance of paste operations in an EventFlow application when the clipboard contains many items was dramatically improved.
SB‑16004 In previous releases, typechecking in StreamBase Studio sometimes failed to ignore references to file resources in the file system outside of the Studio workspace. This applied both to EventFlow module files and resource files (such as CSV input files) on the module search path. As of release 6.6.0, Studio strictly requires referenced files to be in the Studio workspace.
SB‑11376 Previously, when intermediate stream dequeuing was enabled, it was also possible to enqueue into intermediate input streams. This was corrected so that non-public inner module streams remain private, even with ISD enabled.

Limitations Resolved in 6.5.x

Fixed in 6.5.13
Number Resolution
Release 6.5.13 incorporates all fixes resolved in the release 6.4 series through release 6.4.14. See Limitations Resolved in 6.4.x for details.
SB-19560 A race condition in memory Query Table pooling was found and fixed. This issue could only be triggered when updating a memory Query Table from two or more different parallel regions simultaneously.
SB-18905 A memory leak in list handling in the C++ and .NET versions of the StreamBaseClient API was fixed.
Fixed in 6.5.12
Number Resolution
Release 6.5.12 incorporates all fixes resolved in the release 6.4 series through release 6.4.14. See Limitations Resolved in 6.4.x for details.
SB-18961 Under certain circumstances, the TBF Input adapter in multicast mode was dropping field values and emitting NullValueException errors. The cause was identified and corrected.
SB-18901

In a rare configuration where the output port of one Query write operator was shared by two arcs, one leading to a second Query write operator updating the same Query Table, "old" table rows emitted to the third operator (such as the Map operator shown here) could contain incorrect values. The data in the Query Table itself was not corrupted. The condition was not triggered when the first Query operator was followed by any single operator, such as a Split connected to the second Query and third operators. The cause of the problem was identified and corrected.

SB-18859

The JDBC external adapter was incurring a NullPointerException in response to an attempt to insert a null value into a table. This was fixed.

In previous releases, the adapter would shut down in response to SQL exceptions, such as a primary key violation. The adapter was updated to log SQL exceptions and continue processing.

Fixed in 6.5.11
Number Resolution
Release 6.5.11 incorporates all fixes resolved in the release 6.4 series through release 6.4.14. See Limitations Resolved in 6.4.x for details.
SB-18716 A version issue with the MarketFactory API JAR file included with StreamBase was corrected.
SB-18658 The Currenex and EBS output adapters were reporting a null pointer exception when tuples were sent before the adapter's FIX connection was established. Now tuples sent to these output adapters before the connection is established are dropped and reported on the console.
SB-18476 The performance of Query Tables with aggregate expressions was increased.
SB-18305 StreamBase bundle files created with the -c option were correctly generating a precompiled archive file, and the .sbar file was included in the bundle. However, when running such a bundle, StreamBase Server would sometimes not use the .sbar file, resulting in slower startup times than expected. This was corrected.
Fixed in 6.5.10
Number Resolution
Release 6.5.10 incorporates all fixes resolved in the release 6.4 series through release 6.4.14. See Limitations Resolved in 6.4.x for details.
SB-18338 StreamBase authentication did not validate usernames as expected when an application used one of the StreamBase to StreamBase adapters. This was corrected.
SB-18203 In the FIX adapter using the QuickFIX/J FIX engine, sending a double field as a NaN caused a checksum failure on the counterparty. This was corrected such that StreamBase doubles that evaluate to NaN now result in the corresponding FIX field being null in the outgoing FIX message.
SB-18036 Typechecking of server configuration files was failing to detect a <page-pool param="max-client-pages"> value that exceeded the system's MAX_INT setting. This was corrected.
SB-17903 As of release 6.5.10, if a FIX input adapter and FIX output adapter are linked, the Log Level setting of the output adapter is also used by the input adapter.
SB-17792 When launching an application remotely, Studio reported a failure to launch if a custom operator requested a resource that was not present in the same directory as the top level module. This was an incorrect error, and was resolved.
SB-17778 When a Studio project's properties specified the automatic building of precompiled archive files, and the project had a project reference to another project, typechecking of applications sometimes failed. This was fixed.
SB-17662 A rare deadlock situation involving parallel access to memory-based Query Tables was fixed.
SB-17310 Custom values for the type field in error ports now propagate correctly instead of reverting to default values.
SB-17103 The FIX input adapter now fails typechecking if a message type appears more than once in the map.
SB-16117 The FIX adapter did not have the same reconnect after logoff behavior when using the CameronFIX FIX engine as when using the QuickFIX/J engine. This was corrected.
SB-14359 The visual debugger in Studio could sometimes miss its initial breakpoint. The cause was identified and corrected.
Fixed in 6.5.9
Number Resolution
Release 6.5.9 incorporates all fixes resolved in the release 6.4 series through release 6.4.14. See Limitations Resolved in 6.4.x for details.
SB-17649 In previous releases on Linux, the stop subcommand of the /etc/initi.d/streambase script failed to stop a running instance of StreamBase Server. This was corrected.
SB-17550 Some StreamBase adapters, including the FIX adapter and adapters that inherit from it, allow you to set a logging level independently of the hosting StreamBase Server's logging level. In previous releases, this feature worked for the Logback logging mechanism that is used by Studio and used when sbd is run interactively. However, the adapter log levels did not work with the log4j logging mechanism that is used when running sbd –b or when running StreamBase Server as a Windows service. As of release 6.5.9, adapter log level settings are honored in all contexts.
SB-17497 In the StreamBase .NET API, running Tuple.SetList() for a list of longs was throwing an exception. This was fixed.
SB-17427 A rounding error was affecting the feed simulator when using a CSV data file as input and the Timestamp from column feature, with the result that timestamps with millisecond components were batched into one second groups. This was corrected.
SB-17425 Calling Schema.getName() in the typecheck() method for a Java operator or adapter once again returns any schema name set in the properties for that operator or adapter. This capability was present in early 6.5.x releases, was inadvertently removed, and is restored in release 6.5.9.
SB-17417 The Studio typecheck cache was not correctly flushed when an imported table schema was modified with a new field. This was corrected.
SB-17392 The installer for 64-bit Windows now creates the placeholder registry key sbd64.n.m for the authentication keys that can be configured for the 64-bit version of StreamBase Server, as described on StreamBase Registry Keys on Windows.
SB-17345 In the Queues view in both StreamBase Manager and sbmonitor, values for the Current Size, Latency, and Proctime columns now reset to zero if there is no activity on the queue in the previous one second.
SB-16827 The Edit Table Schema dialog was failing to draw scrollbars for very large schemas, which prevented the Add, Edit, and Remove buttons from showing. This was fixed.
Fixed in 6.5.8
Number Resolution
Release 6.5.8 incorporates all fixes resolved in the release 6.4 series through release 6.4.14. See Limitations Resolved in 6.4.x for details.
SB-17267, SB-17237 In previous releases, there were issues with table references, where a Query Table in module A referenced a placeholder table in a Module Reference to module B, and module B in turn imported table schemas from module C. Symptoms included an inability to access the Query Table in module A, and the secondary index failing to appear as an index option for Query Read operations. The cause of these issues was identified and corrected. See also the related entry in the Known Limitations table.
SB-17158 In the QuickFIX/J library used by the FIX adapter, the FIX message field OrigSendingTime, optionally included in the adapter output schema, now checks the QuickFIX/J configuration setting MillisecondsinTimeStamp, also used by the SendingTime field, to determine whether to include milliseconds. This setting is set to Y by default.
SB-16999 If the text of a Note component on the EventFlow canvas contained a string such as ${text} that could be interpreted as a reference to a variable or parameter, the containing module gave a typecheck error. This was corrected by URL encoding such strings in the EventFlow XML.
Fixed in 6.5.7
Number Resolution
Release 6.5.7 incorporates all fixes resolved in the release 6.4 series through release 6.4.14. See Limitations Resolved in 6.4.x for details.
SB-17141 The MarketFactory Trading Input adapter was updated to correct an inadvertent swap of two fields internally.
SB-17124 When using the Alpha Trading Systems EMAPI Order Entry adapter, the Passive Only field was inadvertently set to null for update messages. This was corrected.
SB-17108 A hang in Disk Query Tables was found to be caused by not properly closing the cursor when the limit was reached. This was fixed.
SB-17017 In previous releases, using the Copy Schema From dialog sometimes failed when attempting to copy a schema from a Query Table defined with a table schema. The cause was identified and corrected.
SB-17066 StreamBase client applications written with the C++ Client Library could enter a loop that consumed 100% of CPU resources, if the client application called dequeue() with a 0 timeout, and no tuples were enqueued to any stream that client subscribed to. The cause was identified and corrected.
SB-16938 In previous releases, when using synchronized feed simulations, the overall feed simulation would halt when the first synchronized stream completed. This was corrected, and now all feed simulations in a synchronized set run to completion.
SB-16922 The substr() function in the StreamBase expression language was updated to correct errors in Unicode string handling when StreamBase Server is set to use the UTF-8 character set. The strresizetrun(), systemenv(), and systemproperty() functions were updated to correct their use of byte lengths for Unicode strings, as documented.
Fixed in 6.5.6
Number Resolution
Release 6.5.6 incorporates all fixes resolved in the release 6.4 series through release 6.4.13. See Limitations Resolved in 6.4.x for details.
SB-17028 Exceptions thrown from Java operator init() methods were incorrectly dropped when the Java operator was configured to have an Error Stream. This was corrected.
SB-16977 When file looping was enabled, sbfeedsim was found to ignore the specified timestamp field on the second and subsequent iterations through a CSV file. This was fixed.
SB-16973 A race condition that could cause the loss or duplication of tuples with external dequeue clients was fixed.
SB-16968 The StreamBase IBM WebSphere MQ Adapter was not emitting an Event Port tuple when it was unable to process a message. This was fixed.
SB-16954 When the external Reuters Messaging adapter was installed, its sample was missing from the Load StreamBase Sample dialog. The sample is now included in the External Adapters category.
SB-16921 StreamBase Server now ensures that it properly shuts down in the event of a catchable signal (SIGINT, SIGHUP). This ensures that Query Table locks are released.
SB-16887 In previous releases, the Filter operator showed errors when StreamBase Studio was run on Windows with a non-English locale. The same condition affected the conversion of applications from EventFlow to StreamSQL. These issues were corrected.
SB-16800 The StreamBase Alpha Trading Systems EMAPI Order Entry Adapter had some problems with rounding and scaling. These were fixed.
SB-16799 Sometimes the CSV File Reader adapter, when operating in tail mode, could encounter a partially flushed record at the end of the file, resulting in corruption of the resulting tuple or tuples. The adapter now processes only complete records — that is, records ending in one or more CR and/or LF characters.
SB-16626 In StreamBase Studio, Query operators displayed false typecheck errors when multiple table schemas that did not use named schemas were imported from one file. This was fixed.
SB-16362 StreamBase Studio sometimes generated spurious typecheck errors for references to a field of type long in the expression editor. This was fixed.
SB-13871 The Reuters SFC Adapter on Linux had an incompatibility issue with the SFC libraries provided by Reuters. This was resolved.
Fixed in 6.5.5
Number Resolution
Release 6.5.5 incorporates all fixes resolved in the release 6.4 series through release 6.4.12. See Limitations Resolved in 6.4.x for details.
SB-16881 Studio could throw a NullPointerException error when typechecking an EventFlow module that included a Materialized Window, if the module imported a schema. This was corrected.
SB-16820 The compilation size was reduced for applications that perform a replacement of subtuple fields in an Aggregate operator.
SB-16778 An error was preventing the debugging of applications that included a Materialized Window data construct. The problem was identified and corrected.
SB-16743 The tuple.getField() method in the Java Client API was updated to provide better performance for nested tuple values.
SB-16709 In releases 6.5.0 through 6.5.4, in the Windows Event Viewer, events related to a background StreamBase Server instance were not correctly labeled. Starting with 6.5.5, such events are shown with a Source field populated with "StreamBase.n.m".
SB-16706 The performance of paste operations in an EventFlow application when the clipboard contains many items was dramatically improved.
SB-16413 A more robust fix was implemented for issues where the Java system property streambase.queue-flush-interval is set to 0.
Fixed in 6.5.4
Number Resolution
Release 6.5.4 incorporates all fixes resolved in the release 6.4 series through release 6.4.12. See Limitations Resolved in 6.4.x for details.
SB-16440 The expression language's min() and max() functions were updated to handle null values consistently.
SB-16424 In previous releases, precompiled archive files (.sbar files) generated on Windows with the sbargen command would sometimes fail to run when moved to a Linux host. This problem was identified and corrected.
SB-16413 In previous releases, setting the Java system property streambase.queue-flush-interval to 0 to minimize latency in client connections could result in dropped tuples. This was corrected.
SB-16397 In custom code using the StreamBase Client API, when performing a field lookup that involves two schema objects, a DEBUG message was emitted at runtime warning that "Tuple.resolveField had to compare schemas slowly." This was fixed.
SB-16377 The Windows installer was installing registry keys that are no longer used by StreamBase, including LogFile, LogLevel, LogToLogFile, CrashDump, CrashQuiet, and CrashPause. The installer was updated to stop installing those registry keys.
SB-16358 In previous releases, when an application module was saved and another editor contained an application referencing the saved module file, StreamBase Studio would not re-typecheck the module reference, and thus would not reflect schema changes on the module reference's output ports. This was corrected. A side effect of this fix is that you may see application editors that dirty themselves more often after a module they reference is saved. This is normal and is designed to ensure every application is up-to-date.
SB-16221 Typecheck efficiency was improved throughout StreamBase Studio for cases such as adding an arc, inserting operators onto existing arcs, and when using the Quick Connect feature.
SB-16181 In StreamBase 6.3 and 6.4, a running StreamBase Server was seen in operating system process listings as sbd-java[.exe]. This feature was inadvertently disabled in 6.5.0, but is now restored in 6.5.4.
SB-16143 In 6.5.x releases before 6.5.4, the Trace Debugger failed to display the values for the first row in the table. This was fixed.
Fixed in 6.5.3
Number Resolution
Release 6.5.3 incorporates all fixes resolved in the release 6.4 series through release 6.4.10. See Limitations Resolved in 6.4.x for details.
SB-16182 When using the automatic table replication feature, the container designated as LEADER would send the NON-LEADER two messages (a delete, then an insert) to designate a table update, potentially leading to lost data in a failover event. This was corrected to send update messages as a single, atomic update event.
SB-16162 In previous releases, moving the downstream end of an arc exiting from a collapsed group on the EventFlow canvas could cause Java errors. Starting with release 6.5.3, you can no longer move such an arc while the group is collapsed; uncollapse the group first.
SB-16170 An error converting the Query operator from 6.4 format to 6.5 format was corrected.
SB-16150 Previous 6.5.x releases could generate a Java error when using a named schema as a declared schema for an output stream. This was fixed.
SB-16174 The CSV File Writer adapter would sometimes throw a FlushTask error when resumed from suspended state. The cause was identified and corrected.
SB-16093 Studio could inadvertently double the parallel parameter in the EventFlow XML in cases where two Query operators were both marked to run in separate threads. This was fixed.
SB-16071 The previous version of the InsertInput Adapter and InsertOutput Adapter dialogs were inserting a different adapter than the one selected. This was corrected by providing new dialogs to perform these functions, as described in EventFlow Editor Keyboard Shortcuts.
SB-16065 In previous 6.5.x releases, the clientapi.jar file (the file that implements the StreamBase Client API build path library) inadvertently excluded the SLF4J classes. This caused compilation errors for custom Java code that accessed classes such as Logger. This issue was resolved.
SB-16045 In previous releases, the feed simulator, when used with a CSV input file, could incorrectly collapse adjacent columns when the delimiter was tab or space. This was corrected.
SB-15452 The Threads view in the sbmonitor application occasionally showed inaccurate CPU time statistics because operator or adapter Runnables that used the RegisterRunnable interface were registered with the same name. This was corrected.
Fixed in 6.5.2
Number Resolution
Release 6.5.2 incorporates all fixes resolved in the release 6.4 series through release 6.4.8. See Limitations Resolved in 6.4.x for details.
SB-15962 Under certain circumstances in recent releases, StreamBase Studio could fail to load custom or third-party Java code in JAR files called by custom Java operators or adapters, even when the JAR file was installed in the Studio project folder. The cause was identified and corrected in releases 6.4.9 and 6.5.2.
SB-15933 Support for the Appia FIX engine in the StreamBase FIX adapter was adjusted to provide more flexibility in the BeginString message.
Fixed in 6.5.1
Number Resolution
Release 6.5.1 incorporated all fixes resolved in the release 6.4 series through release 6.4.8. See Limitations Resolved in 6.4.x for details.
SB-15898 The CSV File Reader adapter now reports a failure to open its specified CSV file on its event port, if enabled.
SB-15804 The group-by feature of the Query operator for read operations (specified in the Group Options tab in the operator's Properties view) was inadvertently disabled in release 6.5.0. This was corrected.
SB-15108 In release 6.5.0, the Trace Debugger was not correctly tracing tuples into the modules of a multiple module application. This was corrected.
Fixed in 6.5.0
Number Resolution
Release 6.5.0 incorporated all fixes resolved in the release 6.4 series through release 6.4.6. See Limitations Resolved in 6.4.x for details.
SB-15498 In previous releases, if any module parameters were specified for the main application module, and that module was compiled into a precompiled archive (.sbar) file, then StreamBase Server would fail to run that .sbar file. Now, the server verifies that any parameters set with the module-parameters element in the server configuration file at compile time are the same as at .sbar load time. If so, the .sbar is loaded and run; if not, the server issues an error.
SB-15376, SB-15377 In previous Studio releases, when editing an expression in a Properties view cell using content assistance, when you clicked outside the content assistance popup, the popup would close, but the cell's editing mode would remain active. Under similar circumstances, Studio could attempt to revalidate the expression before the cell editing was complete. These issues were corrected.
SB-15307 The Javadoc for com.streambase.sb.Operator was updated to explain what happens if exceptions occur during calls to resume(), resumed(), suspend(), and suspended().
SB-14758 The format string qualifier %z for the strftime() function was corrected to adhere to the documented standard.
SB-14761 The sbargen command was ignoring certain settings in the java-vm section of the specified server configuration file, whereas StreamBase Server using the same configuration file would locate and use those settings as expected. The sbargen command was updated to read the server configuration file the same way as the server.

Limitations Resolved in 6.4.x

Fixed in 6.4.14
Number Resolution
Release 6.4.14 incorporates all fixes resolved in the release 6.3 series through release 6.3.12. See Limitations Resolved in 6.3.x for details.
SB-17066 StreamBase client applications written with the C++ Client Library could enter a loop that consumed 100% of CPU resources, if the client application called dequeue() with a 0 timeout, and no tuples were enqueued to any stream that client subscribed to. The cause was identified and corrected.
SB-16800 The StreamBase Alpha Trading Systems EMAPI Order Entry adapter had some problems with rounding and scaling. These were fixed.
Fixed in 6.4.13
Number Resolution
Release 6.4.13 incorporates all fixes resolved in the release 6.3 series through release 6.3.11. See Limitations Resolved in 6.3.x for details.
SB-16977 When file looping was enabled, sbfeedsim was found to ignore the specified timestamp field on the second and subsequent iterations through a CSV file. This was fixed.
SB-16938 In previous releases, when using synchronized feed simulations, the overall synchronized feed simulation would halt when the first synchronized stream completed. This was corrected, and now all feed simulations in synchronized set run to completion.
SB-16397 In custom code using the StreamBase Client API, when performing a field lookup that involves two schema objects, a DEBUG message was emitted at runtime warning that "Tuple.resolveField had to compare schemas slowly." This was fixed.
SB-14968 Operator-parameter values used as part of the definition of a different operator-parameter were incorrectly interpreted as environment variables. Expressions of this type were correctly interpreted in release 6.3, but were failing in 6.4. This was corrected.
Fixed in 6.4.12
Number Resolution
Release 6.4.12 incorporates all fixes resolved in the release 6.3 series through release 6.3.10. See Limitations Resolved in 6.3.x for details.
SB-16454 In recent releases, if you specified custom icons for your custom operators and adapters, using a file name for the icon file that included a period, the icon failed to appear in the Palette view or on the canvas. This was corrected and custom icons now appear as expected.
SB-16377 The Windows installer was installing registry keys that are no longer used by StreamBase, including LogFile, LogLevel, LogToLogFile, CrashDump, CrashQuiet, and CrashPause. The installer was updated to stop installing those registry keys.
Fixed in 6.4.11
Number Resolution
Release 6.4.11 incorporates all fixes resolved in the release 6.3 series through release 6.3.10. See Limitations Resolved in 6.3.x for details.
SB-16261 In previous releases, if a CSV File Writer adapter was marked to not start with the application and not open the file during initialization, and the adapter was never started before the application was shut down, a spurious warning would be displayed during shutdown. If an error port was configured for the adapter, an error would be reported when attempting to shut down the application. This was fixed.
SB-15525 In previous releases, if the server configuration file contained a JDBC connect string that included two hyphens, they were interpreted as the beginning of a comment. This could cause the failure to expand module parameters in the string after the hyphens. This was corrected.
Fixed in 6.4.10
Number Resolution
Release 6.4.10 incorporates all fixes resolved in the release 6.3 series through release 6.3.10. See Limitations Resolved in 6.3.x for details.
SB-16105 The Wombat MAMA Input adapter was experiencing JVM crashes for unsubscribes during times of high message rates. The causes were identified and corrected.
SB-15452 The Threads view in the sbmonitor application showed inaccurate CPU time statistics because operator or adapter Runnables that used the RegisterRunnable interface were not correctly registered with the stats infrastructure. This was corrected.
Fixed in 6.4.9
Number Resolution
Release 6.4.9 incorporates all fixes resolved in the release 6.3 series through release 6.3.10. See Limitations Resolved in 6.3.x for details.
SB-15962 Under certain circumstances in recent releases, StreamBase Studio could fail to load custom or third-party Java code in JAR files called by custom Java operators or adapters, even when the JAR file was installed in the Studio project folder. The cause was identified and corrected in releases 6.4.9 and 6.5.2.
Fixed in 6.4.8
Number Resolution
Release 6.4.8 incorporates all fixes resolved in the release 6.3 series through release 6.3.9. See Limitations Resolved in 6.3.x for details.
SB-15855 The StreamBase Python Client library now catches all exceptions generated in C++ that derive from either std::exception or sb::StreamBaseException and properly converts them into Python exceptions.
SB-15777 In previous releases, in the Input sub-tab of the Streams tab in the Properties view, when you selected Copy Stream Qualified Field Name from the context menu for a sub-field of a tuple defined with a named schema, the result in the clipboard was incorrect for that case. This was fixed.
SB-15702 In previous releases, container connections from an application on one server to an inner module on another server were not handled correctly when specified in the server configuration file. The same case worked as expected when specified with sbadmin. The configuration file case was corrected.
SB-15354 Documentation for the expression language's length() function was updated to include the effect of null arguments.
Fixed in 6.4.7
Number Resolution
Release 6.4.7 incorporates all fixes resolved in the release 6.3 series through release 6.3.9. See Limitations Resolved in 6.3.x for details.
SB-15727 As of 6.4.7, when importing schemas and constants from another module, if that module does not contain any importable resources, the Selected Named Schemas and Constants controls are dimmed and unselectable.
SB-15695 The Data File Options dialog (part of the Feed Simulation Editor) was reporting the wrong column for problem data in error messages. This was corrected.
SB-15685 The Edit Dimension dialog (part of the Aggregate Operator's Properties view) is now resizable.
Fixed in 6.4.6
Number Resolution
Release 6.4.6 incorporates all fixes resolved in the release 6.3 series through release 6.3.9. See Limitations Resolved in 6.3.x for details.
SB-15593 An error in the coercion of bounds expressions to the data type of the keys in a Query Table was found and fixed.
SB-13189

In previous releases, a StreamBase client built with the .NET API could not be loaded by an ASP-based web page. This problem was corrected.

Fixed in 6.4.5
Number Resolution
Release 6.4.5 incorporates all fixes resolved in the release 6.3 series through release 6.3.8. See Limitations Resolved in 6.3.x for details.
SB-15280 On Windows, uninstalling the 64-bit overlay kit while leaving the 32-bit base kit in place inadvertently removed the path-setting batch file used by the StreamBase Command Prompt. This was fixed.
SB-15251, SB-15180, SB-15177 The Comstock adapter was updated to correct a race condition, to stop emitting spurious No subscription with key warnings after a restored connection, and to stop emitting Unsubscribe failed messages for unauthorized exchanges when unsubscribing from a symbol on all exchanges.
SB-15122 The New Operator Wizard no longer generates enablement stub code for each specified property, in cases where the Methods to control enablement of UI widgets check box is cleared.
SB-15092 In previous releases on Linux, StreamBase Studio showed errors in the error log from the Inforeach TMS adapter. The cause was identified and corrected.
SB-15083 In previous 6.4.x releases, running sbprofile -s resulted in a NullPointerException error message. This was corrected.
SB-15050 When using the Java Client library to develop a custom adapter, if you specified a property with type Map<String,String>, any periods in the key for such a property were inadvertently stripped out. This was fixed.
SB-14943 The Wombat MAMA Input adapter was updated to correct a problem seen in the following scenario: when resubscribing after unsubscribing, data for infrequently traded symbols was not updated.
SB-14674 In previous 6.4.x releases, dynamic variables were not being recognized when used in aggregate expressions. This was corrected.
Fixed in 6.4.4
Number Resolution
Release 6.4.4 incorporates all fixes resolved in the release 6.3 series through release 6.3.7. See Limitations Resolved in 6.3.x for details.
SB-15058 As of release 6.4.4, the "application running" banner is again shown across the top of a running application in the SB Test/Debug perspective.
SB-15056 When specifying an explicit result set schema in the JDBC Query operator, a standard schema editor control appears. As of release 6.4.4, you can invoke named schemas by name in this control.
SB-14996 Leading and trailing whitespace is now automatically trimmed around network settings in the properties for the TIBCO Rendezvous adapters. Inadvertent spaces were causing argument conflict errors.
SB-14922 In previous releases, the Binary File Reader adapter could show a warning on the console in cases where the Binary File Writer adapter truncated an existing output file (when set to do so), but no records were yet written. The Binary File Writer was updated to correct for these conditions.
SB-14904 The Concurrency tab in the Properties view for most operators and adapters now generates a typecheck error if the expression in the Key expression field does not evaluate to an int.
SB-14894 The JMS adapters, both embedded and external, were updated to connect to queues as well as topics on the IBM WebSphere Application Server 6.1 implementation of a JMS server.
SB-14871 A difference in sorting of nulls between memory and disk Query Tables was found and fixed.
SB-14843 The sbbundle -r command could fail when replacing the configuration file into a bundle file larger than one megabyte. This was corrected.
SB-14819 Named schemas were not visible to Java operators marked to run with concurrency options. This was fixed.
Fixed in 6.4.3
Number Resolution
Release 6.4.3 incorporates all fixes resolved in the release 6.3 series through release 6.3.7. See Limitations Resolved in 6.3.x for details.
SB-14726 When running an application in Studio, Studio normally ignores settings in the jar and library elements of a project's server configuration file, because Studio locates Java resources with Eclipse property settings. As of 6.4.3, Studio now also ignores settings in the dir element of the .sbconf file.
SB-14709 The row limit setting for a read query is now honored when followed by a delete query on the same Query Table.
SB-14699 The JMS external adapter could exit with an illegal argument exception when dequeuing with certain schemas. This was corrected.
SB-14657 In Studio, in an operator's Properties view, when editing an expression in one cell, the expression could sometimes be incorrectly applied to an adjacent cell. In addition, when selecting one expression cell, then a diagonally adjacent cell, the first cell's expression could be inadvertently copied to the second cell. These problems were corrected.
SB-14272 When using the StreamBase Manager utility, an error could result when reconnecting to a StreamBase Server instance that had been stopped and restarted. This was fixed.
Fixed in 6.4.2
Number Resolution
SB-14680 The Hotspot FX adapter was updated to enqueue tuples asynchronously to avoid a potential deadlock circumstance.
SB-14495 In previous releases, a large number of clients rapidly connecting to and disconnecting from the server could cause memory issues. This was corrected.
SB-14489 Dynamic variables were updated from operator-scoped to module-scoped in release 6.4.0. As of release 6.4.2, module-scoped dynamic variables also work when used with aggregate functions.
SB-14437 In previous releases, calling a custom adapter from a child module could result in a null pointer exception. This was fixed.
SB-14322 In previous releases of Studio on Linux, the F9 key could sometimes fail to stop a running application, instead leaving a message in the Error Log view. This was corrected, and as a consequence of the fix, the F9 key now appears in the Key Assist list (Ctrl+Shift+L), and you can now reassign the Stop StreamBase Application action to a different key in Studio preferences.
SB-14133 On Linux distributions that provide GCC 4.3 as the system default compiler (which is not supported by StreamBase), the sbconfig --cxx command did not honor the CXX environment variable. This was corrected so that sbconfig --cxx now returns the value of CXX, if set.
Fixed in 6.4.1
Number Resolution
SB-14401 In the StreamBase Client library, the com.streambase.sb.Tuple class now fully implements the standard java.io.Serializable interface.

Note

Do not assume that the serialized form of any StreamBase class remains constant between StreamBase releases. An instance of a StreamBase class serialized in one release might not be deserializable in another release.

SB-14363 In the StreamBase Client library, there were cases where a correctly-used Operator.getResourceFile() method would fail typechecking, in places where Operator.getResourceContents() would succeed. The cause was identified and corrected.
SB-14148, SB-14210 In previous releases, editing operations such as cut, copy, paste, select-all, and delete were not universally available in all controls in the Properties view. This was corrected.
SB-14127 Constants defined in the Definitions tab were not being displayed in the Outline view for StreamSQL applications. This was corrected.
SB-13929 In previous Studio releases, with EventFlow layout information set to be stored in separate .sblayout files, using RefactorRename caused the separate layout file to be out of sync. This was corrected.
SB-13428 In previous releases, disk-based Query Tables did not report old values when reporting the results of an update operation. This was corrected so that disk-based Query Tables now report old values the same way as memory-based Query Tables.
Fixed in 6.4.0
Number Resolution
SB-13570 In previous releases, using auto-completion in a dynamic variable's updating expression field could result in a null pointer exception. The cause was found and corrected.
SB-13472 The StreamBase to StreamBase Input and Output adapters were not reporting parameter errors until runtime. This was corrected to report such errors at typecheck time.
SB-13312 In previous Studio releases, when you used the keyboard shortcut XX to quickly connect the last two components added to the canvas, you could not undo that action. This was corrected and undo now works after the XX shortcut.
SB-13186 In previous releases, in the New Java Function wizard, the drop-down list of data types for return value and arguments did not list all available data types. This was corrected.
SB-11765 Previous releases failed to issue a typecheck error for an aggregate operator when two or more dimensions had the same name. This was corrected.
SB-4967 The content assistance feature added in release 6.3 sometimes displayed several entries for the same function, when that function's arguments were overloaded by type. These cases were collapsed into a single entry for each function.

Limitations Resolved in 6.3.x

Fixed in 6.3.12
Number Resolution
SB-17079, SB-16966 Previous releases would store extra information for every row of a Query Table, which doubled the memory requirements for Query Tables. This was corrected.
SB-16800 The StreamBase Alpha Trading Systems EMAPI Order Entry Adapter had some problems with rounding and scaling. These were fixed.
Fixed in 6.3.11
Number Resolution
SB-16261 In previous releases, if a CSV File Writer adapter was marked to not start with the application and not open the file during initialization, and the adapter was never started before the application was shut down, a spurious warning would be displayed during shutdown. If an error port was configured for the adapter, an error would be reported when attempting to shut down the application. This was fixed.
SB-16243 A rare condition relating to manipulating arcs in Studio could cause a NullPointerException error. This was corrected.
SB-16375 Using Ctrl+O to open Outline View in Studio could cause a NullPointerException error. This was corrected.
Fixed in 6.3.10
Number Resolution
SB-15898 The CSV File Reader adapter now reports a failure to open its specified CSV file on its event port, if enabled.                                                         
SB-15797 An error using NaNs in Query Tables was identified and corrected.
Fixed in 6.3.9
Number Resolution
SB-15660 A problem was identified when using a Metronome operator with a Query Table downstream that could result in a NullPointerException error. This was corrected.
SB-15230, SB-14140 Query operators were ignoring the Row Limit setting when the operator returned aggregate results, and when group options were set. These problems were corrected.
SB-15211 In previous releases, the JMS adapter could silently drop tuples if a message converter's schema did not exactly match the adapter's schema. A console message and error tuple were added to report this condition.
SB-14772 The FIX adapter was updated to incorporate a change in the way the CameronFIX FIX engine located its data dictionary file.
SB-12071 Two methods in the .NET Client library were producing incorrect results for Field objects whose type is DataType.TUPLE: Schema::Field::GetHashCode() and Schema::Field::Equals(). The .NET API was corrected.
Fixed in 6.3.8
Number Resolution
SB-14996 Leading and trailing whitespace is now automatically trimmed around network settings in the properties for the TIBCO Rendezvous adapters. Inadvertent spaces were causing "argument conflict" errors.
SB-14922 In previous releases, the Binary File Reader adapter could show a warning on the console in cases where the Binary File Writer adapter truncated an existing output file (when set to do so), but no records were yet written. The Binary File Writer was updated to correct for these conditions.
SB-14871 A difference in sorting of nulls between memory and disk Query Tables was found and fixed.
SB-14851 The Deutsche Bank AutobahnFX Trading System adapter was updated such that, when building spot, forward, and swap ladders, it filters out quotes that return isValid=false.
SB-14824 StreamBase Studio was updated to flag the current canvas as changed (and thus needing to be saved) for text-only changes in the Description field for components, including Notes. Studio does not run a typechecking pass when it detects changes only in Description fields.
SB-14699 The JMS external adapter could exit with an illegal argument exception when dequeuing with certain schemas. This was corrected.
SB-14583 When the FIX adapter is disconnected from a counterparty, a tuple is generated by the FIX Input adapter on the Admin message output port with the __ExtraInfo field's value set to "Disconnect". As of 6.3.8, this tuple now also has the SenderCompID and TargetCompID fields correctly set to help identify the session that has just disconnected.
Fixed in 6.3.7
Number Resolution
SB-14791 The Deutsche Bank Autobahn Trading System adapter would sometimes leave an orphaned process running after disconnection. This was corrected.
SB-14780 When using the Query operator with a Materialized Window data construct, the Query Settings tab could show settings for an ordered index as if it were unordered. This was fixed.
SB-14723 In previous releases, the Deutsche Bank Autobahn Trading System adapter would correctly reconnect to the Autobahn service after disconnection, but would incorrectly ignore forwards after reconnection. The cause was identified and corrected.
SB-14613 The StreamBase Manager utility was updated with the ability to stop and start adapters hosted in submodules.
SB-14401 Studio could appear to hang in cases where you tried to stop a running application with a running feed simulation, but the application was blocked waiting for the feed simulation to disconnect from the server. Prior to this release, you could unblock Studio by force-stopping the sbd and sbd-java processes. As of 6.3.7, changes were implemented to allow Studio to not block if feed simulations are having trouble disconnecting from the server.
Fixed in 6.3.6
Number Resolution
SB-14495 In previous releases, a large number of clients rapidly connecting to and disconnecting from the server could cause memory issues. This was corrected.
SB-14437 In previous releases, calling a custom adapter from a child module could result in a null pointer exception. This was fixed.
SB-14430 When using the CameronFIX engine with the FIX adapter, log files now include the full outgoing FIX message.
SB-14421 In previous releases of the Client library, using Tuple.setField() on fields of type Tuple with values of type String could cause a null pointer exception. This was fixed.
SB-14401 In the StreamBase Client library, the com.streambase.sb.Tuple class now fully implements the standard java.io.Serializable interface.

Note

Do not assume that the serialized form of any StreamBase class remains constant between StreamBase releases. An instance of a StreamBase class serialized in one release might not be deserializable in another release.

SB-14092 In the StreamBase Client API, the method Schema.Field.checkType(DataType) was deprecated in favor of Schema.Field.checkType(CompleteDataType), which correctly handles hierarchical types like list and tuple.
Fixed in 6.3.5
Number Resolution
SB-14353 The SQL statement edit control in a Query operator associated with a JDBC Table data construct did not honor cut, copy, paste, and select-all commands and shortcuts. This was fixed.
SB-14306 In releases 6.3.0 through 6.3.4, the expression language's format() function returned an IllegalArgumentException for some test cases that worked as expected under release 6.2. The cause was found and corrected.
SB-14241 If the Limit number of output rows option is not enabled for the Query operator, the hover summary text for that operator no longer includes text describing line limits.
SB-14189 In previous releases, the sbbundle command would inadvertently include a JAR file twice in the bundle if it was listed both in the jar element of the server configuration file and was also present in a directory specified in the dir element. This was corrected.
SB-13944 When using separate layout files for your EventFlow modules, and when using a third-party version control plug-in with StreamBase Studio, the layout files by themselves were sometimes ignored when Studio generated lists of changed files ready to be checked in. This was corrected.

If you encounter this situation, open the EventFlow .sbapp file associated with the .sblayout file you want to check in. Make a simple change and save the EventFlow file. This clears the incorrect bit on the associated layout file and it is now flagged as ready to check in.

SB-13643 In previous releases, when using the Query operator with a JDBC data source connected to an Oracle database, a SQL statement encapsulated in the PL/SQL begin and end statements would return an error if the statement spanned more than one line. This was corrected, and multiline PL/SQL statements that include begin and end are now processed correctly.
SB-13602 In previous releases, when using the FIX adapter, customer-initiated resend requests resulted in the rejection of the resent messages as out of sequence. This condition was corrected.
SB-13428 In previous releases, disk-based Query Tables did not report old values when reporting the results of an update operation. This was corrected so that disk-based Query Tables now report old values the same way as memory-based Query Tables.
SB-13291 In previous releases, in the Feed Simulation Editor, when using the Data File generation method, selecting the First row as header option resulted in slower CSV file parsing as column names were matched with field names. This was corrected so that, when using a data file with a one-to-one column-to-field mapping, the CSV file is read just as fast with the First row as header option selected as without.
Fixed in 6.3.4
Number Resolution
SB-14051 In previous releases, the Schema.Field.checkType() method in the Client library always returned an exception indicating that the test failed. This method was fixed to return the exception only when the method's test actually does fail.
SB-13962 In releases 6.3.0 through 6.3.3, the samples custom-simple-function and custom-aggregate-function ran as expected at the command prompt, but failed to run when loaded in Studio. The cause was identified and corrected.
SB-13760 The sbc command, when dequeuing a tuple that contained a list with zero elements, would show an error Cannot infer the element type of a zero-length list. This was fixed.
SB-13637 Windows only. The presence of a file named Program at the root of C:\ prevented StreamBase Serverfrom starting. This was corrected.
SB-13570 In previous 6.3.x releases, using auto-completion in a dynamic variable's updating expression field could result in a null pointer exception. The cause was found and corrected.
SB-13315 In previous releases, the sbargen command did not use the same algorithm to locate the StreamBase installation directory as the sbd command. This was fixed.
SB-12570 In previous releases, StreamBase Server could be seen to leak memory if many client connections were made in a short period of time. This was fixed.
Fixed in 6.3.2
Number Resolution
SB-13619 For some supported databases where the JDBC connection was configured to retry when a disconnect occurred, and the SQL statement in the Query operator had field parameter substitutions, the reconnect attempt would fail. This was fixed.
SB-13617 When running StreamBase Server as a service on Windows, the Server could receive a shutdown signal when the service-owning user logged out of Windows. This was corrected.
SB-13614

When using the Reuters RMDS Subscribing adapter and the data from Reuters contains partial updates to string fields (which is a rarely encountered mechanism), update tuples were incorrectly handled and could be lost. There were two cases: when using the adapter's Send Thin Tuples property, partial string updates resulted in lost tuples. When using standard tuples and the Send Unchanged Fields as Null check box is selected, string fields in tuples were null. These conditions were corrected.

SB-13567 In the StreamBase C++ API, using TupleList's operator[] with out-of-range data could result in a segfault, instead of the documented behavior, an assert. This was corrected.
SB-13536 Studio release 6.2 added Export view as PNG to the context menu of the EventFlow Editor. However, the image files actually created by this feature were in GIF format, despite their .png extension. This was corrected, and the feature now creates PNG files.
SB-13501 Despite the removal of string lengths in release 6.3.0, typechecking in the Query operator, when connected to a JDBC data source, was still testing for string length maximums in query responses returned from connected databases such as Oracle 10. This was corrected.
SB-13472 The StreamBase to StreamBase Input and Output adapters were not reporting parameter errors until runtime. This was corrected to report such errors at typecheck time.
SB-13448 When using the Query operator to update a row in a Query Table, the presence of the expression if isnull() would inadvertently suppress the output of the old.fieldname fields. This was fixed.
SB-12604 In previous releases, when using groups in the EventFlow Editor, it could be difficult to select exactly one arc inside a group. This was corrected.
SB-11576 In previous Studio releases, if you opened a project, opened an application in the project, deleted the project, and then selected the application in the EventFlow Editor, StreamBase Studio generated duplicate File Deleted dialog boxes. This was corrected.
Fixed in 6.3.1
Number Resolution
SB-13373 A 64-bit byte-swapping issue was corrected that affected communication between a Windows client and StreamBase Server on Solaris.
SB-13355 In previous Studio releases, if you opened two copies of the same EventFlow application in different projects, Studio could become confused when you closed one of the copies, and thereafter fail to show editable values in the Properties view. This was fixed.
SB-13287 In previous Studio releases, in the Properties view for a Query Table, if you specified a secondary index of type Unordered (hash), that selection was honored and saved correctly. However, the next time you entered the Properties view for the same Query Table, and opened the Edit Secondary Index dialog, the secondary index type reverted to Ordered (btree). This situation was corrected.
SB-13268 In previous Studio releases, when you used Extract as Module to create a new module from components that referenced a named schema, the named schema was not copied to the new module. This was fixed.
SB-13207 In previous Studio releases, when set to use a separate layout file for an EventFlow application, if you moved a component group as a whole, the components inside that group did not preserve their layout information when the group was next opened. This was fixed.
SB-13187 In release 6.3.0, in the C++ Client API, the CompleteDataType's operator== method was performing incomplete comparisons for lists and tuples. As of 6.3.1, CompleteDataType's operator== compares all members of lists and tuples, such that two CompleteDataTypes of type DataType::LIST are only considered equal if both have the same element CompleteDataType, and two CompleteDataTypes of type DataType::TUPLE are only considered equal if both have the same schema.
SB-13101 In previous releases, the SMTP Reader adapter required SMTP commands to be sent with uppercase letters (HELO, RCPT, and so on). This was corrected to accept lowercase and mixed case commands.
SB-12774 In previous releases, a Java bug could trigger a race condition between two instances of StreamBase Server, or between the server and certain external adapters. This release includes a workaround for the Java bug.
SB-12681 In previous releases, when using Query operators with Query Tables, an input string value longer than a string returned from a table would appear as the returned value overwriting the input value. This only occurred when input values other than the primary key were passed into the result tuple, and did not affect the actual value returned from the table. This condition was corrected.
SB-12372 In release 6.2.x, bundled JAR files were not automatically deleted after exiting from running a bundle file on Windows. This was fixed.
SB-11103 In previous releases, an EventFlow application file was marked as needing to be saved as soon as it was opened. This was corrected so that EventFlows are so marked only when the user has made interactive changes.
Fixed in 6.3.0
Number Resolution
SB-13139 Previous StreamBase releases failed to call C++ custom aggregate functions when one of the arguments was null. This limitation was resolved.
SB-12954 In previous releases, if Studio was launching an application on a port that was currently in use by a running sbd that was launched outside of Studio, Studio would incorrectly try to use that server, and cause it to shut down when Studio was stopping the launched application. This was corrected, and Studio now avoids using a port already in use by a running StreamBase Server started outside Studio.
SB-12942 Global editing actions such as copy, cut, paste, select-all, undo, and redo, and the standard keyboard shortcuts for those actions, would affect the Editor subtab of the EventFlow Editor, even if initiated in another subtab. That is, if you copied and pasted an operator in the Editor subtab, then switched to the Parameter subtab and performed editing tasks that included pasting, the Parameter subtab paste operation also inadvertently reapplied the last paste of the Editor subtab. This was corrected.
SB-12779 On Windows, with multiple instances of StreamBase Server running as a service on the same machine, event log messages from each server instance were hard to distinguish. This was fixed by adding your assigned service name to the Source field of each event log entry that comes from the server startup code. Remember that most messages from a running Server now come from the log4j logging system. You can configure those messages with the log4j configuration file, as described in Server Background Mode and Logging.
SB-12400 In previous releases, when using Studio's Visual Debugger, the Pattern operator was failing to turn blue to show it was reached when stepping through an application. This was corrected.
SB-11341 In previous releases, the method used to start and shut down StreamBase Server prevented use of the Java method Runtime.getRuntime().addShutdownHook() in customer client code. As of release 6.3.0, this limitation is lifted and addShutdownHook() can now be used in client code.
SB-11087 In releases 6.0 through 6.2, when you clicked a Show in Help link in the Properties view's Functions pane, the Studio Help window opened to the top of the Expression Language page. As of 6.3.0, clicking Show in Help now correctly opens directly to the same function in the Help window that is currently selected in the Functions pane. This restores the Show in Help functionality of releases 3.x and 5.x.

Limitations Resolved in 6.2.x

Fixed in 6.2.5
Number Resolution
SB-13536 Studio release 6.2.0 added Export view as PNG to the context menu of the EventFlow Editor. However, the image files actually created by this feature were in GIF format, despite their .png extension. This was corrected, and the feature now creates PNG files.
SB-13307 In previous releases of the C++ and .NET client libraries, if you specified a dequeue timeout less than the heartbeat interval (10 seconds by default), a heartbeat timeout exception could occur. The cause was identified and corrected.
SB-12604 In previous releases, when using groups in the EventFlow Editor, it could be difficult to select one arc inside a group, and only that arc. This was corrected.
SB-11576 In previous Studio releases, if you opened a project, opened an application in the project, deleted the project, and then clicked the application in the EventFlow Editor, StreamBase Studio generated duplicate File Deleted dialog boxes. This was corrected.
Fixed in 6.2.4
Number Resolution
SB-13373 A 64-bit byte-swapping issue was corrected that affected communication between a Windows client and StreamBase Server on Solaris.
SB-13305 In previous releases, StreamBase recordings of applications that resided in a subfolder of a project sometimes resulted in an error message at the completion of a recording. The recordings were correctly made, but Studio had trouble locating them. This situation was corrected.
SB-13287 In previous Studio releases, in the Properties view for a Query Table, if you specified a secondary index of type Unordered (hash), that selection was honored and saved correctly. However, the next time you entered the Properties view for the same Query Table, and opened the Edit Secondary Index dialog, the secondary index type reverted to Ordered (btree). This situation was corrected.
SB-13226 In previous releases, the UNIX installers for the TIBCO Rendezvous external adapter presumed an installation directory in /opt/streambase. This installers were updated to allow the adapter to be relocated during installation.
SB-13207 In previous Studio releases, when set to use a separate layout file for an EventFlow application, if you moved a component group as a whole, the components inside that group did not preserve their layout information when the group was next opened. This was fixed.
SB-13101 In previous releases, the SMTP Reader adapter required SMTP commands to be sent with uppercase letters (HELO, RCPT, and so on). This was corrected to accept lowercase and mixed case commands.
SB-12681 In previous releases, when using Query operators with Query Tables, an input string value longer than a string returned from a table would appear as the returned value overwriting the input value. This only occurred when input values other than the primary key were passed into the result tuple, and did not affect the actual value returned from the table. This condition was corrected.
SB-12925 In previous releases, when using the Reuters RMDS Subscribing Input adapter and reading an initial subscriptions file, two-part RICs that contained an equals sign were not correctly interpreted. This was corrected.
SB-12870 The sbd command was interpreting hyphens in certain path names in arguments as the beginning of a new option. This was corrected.
SB-12779 On Windows, with multiple instances of StreamBase Server running as a service on the same machine, event log messages from each server instance were hard to distinguish. This was fixed by adding your assigned service name to the Source field of each event log entry that comes from the server startup code.
SB-12775 The .NET Client library was leaking handles when trying to create a StreamBaseClient object to a downed server. The cause was identified and corrected.
SB-12400 In previous releases, when using Studio's Visual Debugger, the Pattern operator was failing to turn blue to show it was reached when stepping through an application. This was corrected.
SB-12117 Changes to the Data Rate field in the Feed Simulation Editor were not correctly saved in the feed simulation file. This was fixed.
SB-11103 In previous releases, an EventFlow application file was marked as needing to be saved as soon as it was opened. This was corrected so that EventFlows are so marked only when the user has made interactive changes.
Fixed in 6.2.3
Number Resolution
SB-12828 When running two or more instances of StreamBase Server as a Windows service on the same machine, there could be contention for access to some temporary files. On 64-bit Windows, this could result in a failure to load when restarting the second service. The cause was identified and corrected.
SB-12819 Some timestamps in hierarchical CSV files used as inputs for feed simulations were getting converted to nulls. This was corrected.
SB-12774 In previous releases, a Java bug could trigger a race condition between two instances of StreamBase Server, or between the server and certain external adapters. This release includes a workaround for the Java bug.
SB-12690 In previous releases, PATH settings generated with sb-config --setenv or --setsysenv contained mixed style path separators. This was corrected.
SB-11175 When using the StreamBase to StreamBase input adapter, if incoming and outgoing schemas did not match, the adapter complained with a DEBUG-level message in the Error Log view. To make these errors more visible, the message type was changed to INFO, which appears in the Error Log view if STREAMBASE_LOG_LEVEL is 0 (the default setting) or higher.
Fixed in 6.2.1
Number Resolution
SB-12721 A socket timeout problem was affecting applications set up for high availability. This was corrected.
SB-12661 In previous releases, there could be locking issues with disk-based Query Tables that had downstream updates. This was corrected.
SB-12618 An InvocationTargetException compilation error could occur in 6.2.0 on applications that ran normally under previous releases. The cause was identified and corrected.
SB-12605 In the Properties view for the Query operator, text labels in the Operation Settings tab were clarified for Read and Delete operations.
SB-12571 In previous releases, some applications with disk Query Tables that used no-match values would pass typechecking but failed to run. The cause was identified and fixed.
SB-12551 Starting with this release, when using sbd with its –b option, log messages from your application are now correctly logged to syslog (UNIX) or the Event Log (Windows).
SB-12533 The Unit Test editor could save a test in an invalid state, when switching back and forth between GUI and text views of the test file. This was corrected.
SB-12503 Starting with this release, the custom Java function wizard now generates code that includes the required getResultLength() method. This method is required when creating a custom aggregate function whose calculate() method returns a String or byte array.
SB-12498 In previous releases, StreamBase applications did not detect and process the logback configuration file, if one was provided. This was corrected.
SB-12384 The Extract as module feature of the EventFlow Editor was inadvertently disabled in release 6.2.0. This was corrected and the feature was restored.
SB-12309 The CSV Writer adapter was incorrectly mixing debug messages of types DEBUG and DEBUG2. This was corrected.
SB-12299 When using RefactorRename (from the Package Explorer's context menu) to rename a custom operator class, the related BeanInfo class was inadvertently excluded. This was corrected, and both operator and BeanInfo class files are now renamed together.
SB-12244 The CSV Reader adapter could show an index out of bound exception instead of a typecheck error under certain circumstances. The cause was found and corrected.
Fixed in 6.2.0
Number Resolution
SB-11465 When configuring an HTTP or IRC Reader adapter to listen on a specific network interface, the application sometimes failed typechecking with a java.lang.UnsatisfiedLinkError. This was fixed.
SB-11424 In previous releases, when using the sbmonitor command, the queue information view blocked help screens. This was fixed.

Limitations Resolved in 6.1.x

Fixed in 6.1.7
Number Resolution
SB-13373 A 64-bit byte-swapping issue was corrected that affected communication between a Windows client and StreamBase Server on Solaris.
SB-13287 In previous Studio releases, in the Properties view for a Query Table, if you specified a secondary index of type Unordered (hash), that selection was honored and saved correctly. However, the next time you entered the Properties view for the same Query Table, and opened the Edit Secondary Index dialog, the secondary index type reverted to Ordered (btree). This situation was corrected.
SB-12925 In previous releases, when using the Reuters RMDS Subscribing Input adapter and reading an initial subscriptions file, two-part RICs that contained an equals sign were not correctly interpreted. This was corrected.
SB-12779 On Windows, with multiple instances of StreamBase Server running as a service on the same machine, event log messages from each server instance were hard to distinguish. This was fixed by adding your assigned service name to the Source field of each event log entry that comes from the server startup code.
SB-12604 In previous releases, when using groups in the EventFlow Editor, it could be difficult to select one arc inside a group, and only that arc. This was corrected.
SB-12681 In previous releases, when using Query operators with Query Tables, an input string value longer than a string returned from a table would appear as the returned value overwriting the input value. This only occurred when input values other than the primary key were passed into the result tuple, and did not affect the actual value returned from the table. This condition was corrected.
Fixed in 6.1.6
Number Resolution
SB-12870 The sbd command was interpreting hyphens in certain path names in arguments as the beginning of a new option. This was corrected.
SB-12828 When running two or more instances of StreamBase Server as a Windows service on the same machine, there could be contention for access to some temporary files. On 64-bit Windows, this could result in a failure to load when restarting the second service. The cause was identified and corrected.
SB-12775 The .NET API was leaking handles when trying to create a StreamBaseClient object to a downed server. The cause was identified and corrected.
SB-12697 A packaging error in release 6.1.4 prevented the 64-bit StreamBase Server from starting when configured as a Windows service. This was corrected.
SB-12690 In previous releases, PATH settings generated with sb-config --setenv or --setsysenv contained mixed style path separators. This was corrected.
SB-12636 Under some circumstances, a StreamBase Unit Test could hang if a file of expected CSV data was empty. This was fixed.
SB-11175 When using the StreamBase to StreamBase input adapter, if incoming and outgoing schemas did not match, the adapter complained with a DEBUG-level message in the Error Log view. To make these errors more visible, the message type was changed to INFO, which appears in the Error Log view if STREAMBASE_LOG_LEVEL is 0 (the default setting) or higher.
Fixed in 6.1.5
Number Resolution
SB-12661 In previous releases, there could be locking issues with disk-based Query Tables that had downstream updates. This was corrected.
Fixed in 6.1.4
Number Resolution
SB-12605 In the Properties view for the Query operator, text labels in the Operation Settings tab were clarified for Read and Delete operations.
SB-12571 In previous releases, some applications with disk Query Tables that used no-match values would pass typechecking but failed to run. The cause was identified and fixed.
SB-12551 Starting with this release, when using sbd with its –b option, log messages from your application are now correctly logged to syslog (UNIX) or the Event Log (Windows).
SB-12503 Starting with this release, the custom Java function wizard now generates code that includes the required getResultLength() method. This method is required when creating a custom aggregate function whose calculate() method returns a String or byte array.
SB-12498 In previous releases, StreamBase applications did not detect and process the logback configuration file, if one was provided. This was corrected.
SB-12458 The EventFlow Editor could throw a ClassCastException error when attempting to delete a Materialized Window icon. The cause was identified and corrected.
SB-12384 The Extract as module feature of the EventFlow Editor was inadvertently disabled in recent releases. This was corrected and the feature was restored.
SB-12345 As of this release, a duplicate, non-loadable class file was removed from sbclient.jar to avoid confusion. The duplicate class prevented the JAR from being signed for deployment by sites whose policies require signed JARs.
SB-12309 The CSV Writer adapter was incorrectly mixing debug messages of types DEBUG and DEBUG2. This was corrected.
SB-12244 The CSV Reader adapter could show an index out of bound exception instead of a typecheck error under certain circumstances. The cause was found and corrected.
SB-11908 The java-prepend-classpath parameter in the StreamBase Server configuration file was introduced in release 5.1.1 as a workaround for then-new behavior. This parameter was found to be unnecessary and was removed in later releases, but typechecking failed to flag the parameter as incorrect. As of this release, using the java-prepend-classpath parameter is correctly flagged as a configuration file error.
Fixed in 6.1.3
Number Resolution
SB-12211 The Visual Debugger in StreamBase Studio would occasionally appear to stop debugging, especially if the EventFlow application being debugged was anywhere other than the root of the Studio project folder. Debugging was still underway, but the visual highlighting stopped updating. The cause was found and corrected.
SB-12199 In the StreamBase .NET Client library of previous releases, all StreamBaseClients were constructed with buffering enabled, but a buffer size of 1. As of release 6.1.3, .NET StreamBaseClients are constructed with buffering disabled. You can enable buffering using the EnableBuffering method.
SB-12159 In rare cases, certain StreamBase applications would fail typechecking in Studio, but would run normally when called from the sbd command line. The cause was identified and corrected.
SB-11495 In the Expressions QuickRef section of the Properties view in StreamBase Studio, several timestamp-related functions were displaying an incorrect function signature. This was corrected.
Fixed in 6.1.2
Number Resolution
SB-12118 Under certain circumstances involving modules with shared tables in loops, when resolving the loop typecheck by setting a schema on one of its arcs, Studio would not clear the typecheck unknown status on one of the modules. This was resolved.
SB-12095 If a component in the EventFlow canvas is selected, then unselected without making changes in the Properties view for that component, Studio could sometimes display an incorrect message on that component's output streams indicating that no schema is known. This was corrected.
SB-12077 In releases 6.1.0 and 6.1.1, applications that shared tables at a grandparent or higher level of table sharing, sometimes failed to start. This was fixed.
SB-11986 In the StreamBase Java Client library, the methods Schema.Field.hashCode() and Schema.Field.equals() produced incorrect results for Field objects whose type is DataType.TUPLE. This was corrected.
SB-11972 In previous 6.1.x releases, in some circumstances StreamBase would generate a spurious warning message that indicated a mismatch between a UUID hash value and another value generated by hashing. This was corrected, eliminating the warnings.
SB-11898 In previous releases, when performing updates to a memory Query Table, if an error was thrown while evaluating an expression, the original row being updated was deleted from the table. This was corrected, and errors thrown during Query Table updates now leave the original row unchanged.
Fixed in 6.1.1
Number Resolution
SB-11957 In the StreamBase Client API for Java, Tuple.getFieldAsString() was not returning the correct results when the specified field was a nested field. This was fixed.
SB-11946 In the Sequence operator, the evaluation order of the update expression was corrected. The update expression is now evaluated prior to assigning the output field for the output tuple.
SB-11923 In release 6.1.0, when running the RMDS Threshold Alarm (Live Data) demo, an error message could occur after clicking the Click to Perform link in the fifth page of the cheat sheet. This was fixed.
SB-11905 In the Run Dialog, when configuring a StreamBase run or debug configuration, if you changed one of the radio button selections in the Advanced tab, the Apply button was not enabled, which prevented you from saving those settings. This was fixed.
SB-11903 In schema editing tables, when tabbing out from the type column after selecting a variable-size type such as string that was previously a fixed size type such as int, the cursor was placed in the description cell, when it should have been placed in the size cell. This was fixed, and the cursor is now placed in the correct cell for all data types.
SB-11527 In release 6.1.0, an entry appeared in the StreamBase Studio Error Log view when first opening or first indexing the help system. The cause was identified and fixed.
SB-11465 When configuring an HTTP or IRC Reader adapter to listen on a specific network interface, the application sometimes failed typechecking with a java.lang.UnsatisfiedLinkError. This was fixed.
SB-11237, SB-4625

In previous releases, in some circumstances StreamBase Studio would generate a typecheck error with a message to remove a row that you could not remove because the row was not displayed in the Properties view. This could occur when you edited a data construct associated with an operator and then attempted to save the changes.

Starting in release 6.1.1, the Properties view is more proactive in determining whether changes in associated components in the EventFlow application require re-typechecking the current component. This behavior change fixes the problem described above, but may cause your EventFlow applications to be flagged more often as unsaved.

Fixed in 6.1.0
Number Resolution
SB-11857 The flushBuffer() method in the StreamBaseClient API for Java, C++, and .NET was throwing an exception if called before enqueuing was enabled. This was fixed, and flushBuffer() now returns a helpful error message if called on an unenqueued stream.
SB-11426 In release 6.0.x, in StreamBase Manager, the Latest Size column in the Queues view always showed zero, even when running multiple-container applications with enqueues between containers. This was corrected, and the Queues view now reports the same information as sbmonitor for the same running applications.
SB-10876 In release 6.0.x, hierarchical data and the tuple data type were not supported universally throughout StreamBase Studio. As of release 6.1, hierarchical data is fully supported in feed simulations and when using the Unit Test feature.
SB-10484 You can now add properties of type timestamp when using Studio's wizards to generate Java code for custom Java operators and adapters. Fields corresponding to such properties are now correctly displayed and typechecked in the Properties view for an instance of the custom operator or adapter. In release 6.0 and earlier, you could specify properties of type timestamp directly in Java code without using the Studio wizards, but the corresponding fields did not appear in the Properties view in Studio.
SB-10468 In releases 5.0.x and 5.1.x, some SQL queries succeeded when first connecting to the database server but failed when reconnecting after an error. This problem occurred when using the JDBC operator and a JDBC data source. This problem was fixed.
SB-6974 StreamBase Studio 6.0 added the Group feature to the EventFlow Editor, which allows you to draw a visual group box around a selected set of components in the canvas. In release 6.0.x, you could select an existing group with Ctrl+Click, but could not cancel the selection with another Ctrl+Click. This problem was fixed.

Limitations Resolved in 6.0.x

Fixed in 6.0.7
Number Resolution
SB-13373 A 64-bit byte-swapping issue was corrected that affected communication between a Windows client and StreamBase Server on Solaris.
SB-12925 In previous releases, when using the Reuters RMDS Subscribing Input adapter and reading an initial subscriptions file, two-part RICs that contained an equals sign were not correctly interpreted. This was corrected.
SB-12870 The sbd command was interpreting hyphens in certain path names in arguments as the beginning of a new option. This was corrected.
SB-12828 When running two or more instances of StreamBase Server as a Windows service on the same machine, there could be contention for access to some temporary files. On 64-bit Windows, this could result in a failure to load when restarting the second service. The cause was identified and corrected.
SB-12779 On Windows, with multiple instances of StreamBase Server running as a service on the same machine, event log messages from each server instance were hard to distinguish. This was fixed by adding your assigned service name to the Source field of each event log entry that comes from the server startup code.
SB-12775 The .NET API was leaking handles when trying to create a StreamBaseClient object to a downed server. The cause was identified and corrected.
SB-12774 In previous releases, a Java bug could trigger a race condition between two instances of StreamBase Server, or between the server and certain external adapters. This release includes a workaround for the Java bug.
SB-12697 A packaging error in previous releases prevented the 64-bit StreamBase Server from starting when configured as a Windows service. This was corrected.
SB-12690 PATH settings made with sb-config --setenv or --setsysenv contained mixed style path separators. This was corrected.
SB-12551 Starting with this release, when using sbd with its –b option, log messages from your application are now correctly logged to syslog (UNIX) or the Event Log (Windows).
SB-11576 In previous Studio releases, if you opened a project, opened an application in the project, deleted the project, and then clicked the application in the EventFlow Editor, StreamBase Studio generated duplicate File Deleted dialog boxes. This was corrected.
SB-11175 When using the StreamBase to StreamBase input adapter, if incoming and outgoing schemas did not match, the adapter complained with a DEBUG-level message in the Error Log view. To make these errors more visible, the message type was changed to INFO, which appears in the Error Log view if STREAMBASE_LOG_LEVEL is 0 (the default setting) or higher.
SB-11103 In previous releases, an EventFlow application file was marked as needing to be saved as soon as it was opened. This was corrected so that EventFlows are so marked only when the user has made interactive changes.
Fixed in 6.0.6
Number Resolution
SB-12498 In previous releases, StreamBase applications did not detect and process the logback configuration file, if one was provided. This was corrected.
SB-12345 As of this release, a duplicate, non-loadable class file was removed from sbclient.jar to avoid confusion. The duplicate class prevented the JAR from being signed for deployment by sites whose policies require signed JARs.
SB-12309 The CSV Writer adapter was incorrectly mixing debug messages of types DEBUG and DEBUG2. This was corrected.
SB-12244 The CSV Reader adapter could show an index out of bound exception instead of a typecheck error under certain circumstances. The cause was found and corrected.
SB-12199 In the StreamBase .NET Client library of previous releases, all StreamBaseClients were constructed with buffering enabled, but a buffer size of 1. As of this release, .NET StreamBaseClients are constructed with buffering disabled. You can enable buffering using the EnableBuffering method.
SB-11908 The java-prepend-classpath parameter in the StreamBase Server configuration file was introduced in release 5.1.1 as a workaround for then-new behavior. This parameter was found to be unnecessary and was removed in later releases, but typechecking failed to flag the parameter as incorrect. As of this release, using the java-prepend-classpath parameter is correctly flagged as a configuration file error.
Fixed in 6.0.5
Number Resolution
SB-12095 If a component in the EventFlow canvas was selected, then unselected without making changes in the Properties view for that component, Studio could sometimes display an incorrect message on that component's output streams indicating that no schema is known. This was corrected.
SB-11972 In some circumstances, StreamBase generated a spurious warning message that indicated a mismatch between a UUID hash value and another value generated by hashing. This was fixed.
SB-11454 Typechecking failed for some applications that used dynamic variables. This was fixed.
Fixed in 6.0.4
Number Resolution
SB-11986 In the StreamBase Java Client library, the methods Schema.Field.hashCode() and Schema.Field.equals() produced incorrect results for Field objects whose type is DataType.TUPLE. This was corrected.
SB-11957 In the StreamBase Client API for Java, Tuple.getFieldAsString() was not returning the correct results when the specified field was a nested field. This was fixed.
SB-11905 In the Run Dialog, when configuring a StreamBase run or debug configuration, if you changed one of the radio button selections in the Advanced tab, the Apply button was not enabled, which prevented you from saving those settings. This was fixed.
SB-11898 In previous releases, when performing updates to a memory Query Table, if an error was thrown while evaluating an expression, the original row being updated was deleted from the table. This was corrected, and errors thrown during Query Table updates now leave the original row unchanged.
SB-11857 The flushBuffer() method in the StreamBaseClient API for Java, C++, and .NET was throwing an exception if called before enqueuing was enabled. This was fixed, and flushBuffer() now returns a helpful error message if called on an unenqueued stream.
SB-11847 StreamBase tests saved in folders inside a project left the recording data files at the root of the containing project instead of saving them in the same directory as the .sbtest file. This was fixed.
SB-11762, SB-11559 In releases 6.0.1 through 6.0.3, StreamBase Studio did not include the third-party Eclipse plug-ins that support the CVS version control system. Starting with release 6.0.4, the CVS plug-ins were restored to Studio.
SB-11465 When configuring an HTTP or IRC Reader adapter to listen on a specific network interface, the application sometimes failed typechecking with a java.lang.UnsatisfiedLinkError. This was fixed.
SB-11411 It was not possible to reopen an application that had a group within a group if the top-level group had been collapsed when you saved the application. This was fixed.
SB-11382 If you ran a Feed Simulation that had two or more streams, the simulation ended before sending all the tuples in all the streams. This was fixed.
Fixed in 6.0.3
Number Resolution
SB-11712 In StreamBase Reuters Edition 6.0.0 through 6.0.2, the wizards for creating custom Java classes were not accessible in StreamBase Studio. This was fixed.
SB-11615 The Wombat adapter was preventing users from connecting to a feed that used a separate transport for downloading the data dictionary. The cause was identified and corrected.
SB-11608 Sometimes StreamBase Studio did not restore arcs that were connected to the input ports of an Adobe Flex Output Adapter when the adapter was selected and then deselected. This problem was fixed.
SB-11607 When an application was running in SB Test/Debug perspective in StreamBase Studio, the Manual Input view incorrectly listed streams that were in modules referenced by the running application. Attempting to send data to those streams generated an error. This problem was fixed.
SB-11578 If a 64-bit Windows StreamBase kit was installed on a system without the appropriate Microsoft Visual C++ 2005 Redistributable Package installed, StreamBase Server would not start. The 64-bit Windows StreamBase kit now includes all the appropriate redistributable components that are required.
Fixed in 6.0.2
Number Resolution
SB-11532 If an input adapter was configured with two or more worker threads, and had a wide output schema, under certain conditions a race condition could develop, resulting in an IndexOutOfBoundsException error. The cause was identified and fixed.
SB-11496 In the 6.0.0 and 6.0.1 releases, when exiting StreamBase Studio with two or more editing sessions open with unsaved changes, you could be prompted to reload an editing session from disk. This was corrected.
SB-11484 The StreamBase Support Console is a feature of StreamBase Studio sometimes used under the direction of StreamBase Technical Support. In releases 6.0.0 and 6.0.1, this console was missing the drop-down menu item that allows selection of logging level from within Studio. As of 6.0.2, this feature is restored.
SB-11448

In the 6.0.0 and 6.0.1 releases, StreamBase Studio did not examine the application module parameters when resolving parameters in Java operators or adapters. The application module parameters are defined in the Parameters tab of the EventFlow Editor. This problem was fixed.

SB-11144 The Customize Fields dialog box is invoked from the Feed Simulation editor in the SB Test/Debug perspective. For very large schemas, this dialog could expand too tall vertically, leaving no room at the bottom of the dialog to enter customized values. This was corrected.
SB-11404 In previous releases, when the CSV file reader adapter encountered a badly formed line in a CSV file, it silently discarded that record and the rest of the file. The adapter now displays a warning message under the same circumstances.
SB-11392 StreamBase Server could fail to start due to incorrectly parsed JVM arguments if the jvm-args parameter in the java-vm section of the configuration file contained any JVM path setting that contained spaces. It did not matter whether the setting was explicit or specified by means of an environment variable. This was fixed.
SB-11270 In release 6.0.0, the 64-bit Windows overlay installation kit was installed by default for the currently logged in user, whereas the 32-bit base StreamBase for Windows kit is installed for all users. If both kits were installed by one user, another username on the same Windows machine would not see the 64-bit overlay kit's additions to the Start menu. This was corrected, and the 64-bit Windows overlay kit now installs for all users like the base kit.
SB-11240, SB-11155 In release 6.0.0, the E-mail Sender output adapter could fail with an UnsupportedDataTypeException error. The cause was found and fixed.
SB-11152 When setting up an Aggregate operator with a group option, some typechecking error messages show only in the General tab, not the Group Options tab where the error occurred. This was corrected.
SB-10587 When you connect a Query operator to a JDBC table data source, you can enable concurrency options in the Concurrency tab of the Properties view. In previous releases, settings in the Run in parallel threads section of this tab were not preserved. This was corrected.
Fixed in 6.0.1
Number Resolution
SB-11437, SB-11282, SB-11283

In the 6.0.0 release, if your dynamic variables do not appear to be updating correctly, it could be because StreamBase introduced a change in the way dynamic variable update expressions are specified. In version 6 and later, update expressions can reference the old value of the dynamic variable, in addition to fields on the stream. Due to new support for the tuple data type, the entire tuple on the stream can also be referenced by using the stream's name.

As a result of this new functionality, a field reference in an update expression can be ambiguous if any two of the variable name, field name on the stream, or stream name itself are the same, and that name is used in the update expression. In 6.0.0, StreamBase did not generate an error about this ambiguity, and in fact changed the default behavior. The most common result of this change in behavior is that dynamic variables would appear to not be updating.

To address this problem, release 6.0.1 and later supports two new behaviors. In the first place, if there is such a naming conflict, Studio generates a typecheck error to notify you to change the names that cause the conflict.

Secondly, you can add a prefix to the names that are in conflict to disambiguate between the fields you are trying to access:

  • Add the name of the stream followed by a period as a prefix to the field name to access the field on the stream.

  • Add old. as a prefix to the name of the dynamic variable to access the old value of the dynamic variable.

  • No prefix is needed to access the tuple on the stream, just use the stream name by itself.

The best practice to keep your programs readable is to never use the same name for a variable and the stream that updates it.

For example, suppose you defined a dynamic variable named Threshold to update from a field named Threshold, with an updating expression Threshold, and the output stream is StreamName. To resolve the error and match old behavior, change the updating expression to StreamName.Threshold. To take advantage of new behavior, and access the old value of the variable, use an update expression such as old.Threshold + StreamName.Threshold, which increments the threshold whenever a new event arrives on StreamName.

SB-11372 In release 6.0.0, if had a StreamBase application file open in StreamBase Studio, and you modified and saved the same file outside of Studio, Studio failed to issue a warning that the file was modified outside of Studio, and overwrote the external changes when it next saved the file. In release 6.0.1, this issue was corrected. Studio now determines that external file changes have occurred, and responds appropriately.
SB-11355 In release 6.0.0, fields of type tuple did not work correctly on Solaris platforms. This was corrected.
SB-11351 In release 6.0 there was a problem when you used the visual debugger to look at an arc immediately after an operator computed a value. In this situation it was possible for the debugger to display re-computed values. Subsequent arcs showed correct values, and only the display was affected by the problem. That is, the re-computation did not cause any loss of data, or any changes in the behavior of the application. This problem was corrected.
SB-11347 The Feed Simulation dialog box for specifying enumerated values has a Remove button that was not enabled in Version 6.0.0. As of release 6.0.1, this button is enabled.
SB-11339 The <jar> and <dir> elements in the StreamBase Server configuration file are used to add classes required by custom operator and embedded adapter classes. In previous releases, there were situations where the added classes were not made visible to the custom classes, resulting in customer classes that would fail to load or operate correctly. As of this release, these visibility problems were eliminated.
SB-11337, SB-11311

Users of the JDBC and EMS/JMS adapters, please note that there is a change in the way that you extend the classpath when running the sb-jdbc, sb-ems-enqueue, sb-ems-dequeue, sb-ems-publish, and sb-ems-subscribe commands.

In previous releases, on Linux and Solaris, you could use a command line option (–c classpath) to extend the classpath. This option is no longer available.

In previous releases, on Windows, you were required to edit the ini file for the script. This is no longer required.

On Windows, Linux, and Solaris platforms, these programs now prepend the value of the CLASSPATH environment variable to their internal classpath entries. Editing CLASSPATH is the recommended way for users to extend the adapter's classpath.

SB-11333 In release 6.0.0, if a container connection was added while a container was suspended, the connection did not resume when the container was resumed. This was corrected.
SB-11295 In release 6.0.0, if your Studio project had a module that used a query table, and the index table for the query table was modified, Studio did not perform the required typecheck. To work around this problem, you had to run a manual typecheck. This was fixed in release 6.0.1, and the manual typecheck is no longer required.
SB-11286 In release 6.0.0, there was a problem if you attempted to launch the StreamBase Studio visual debugger on an application that was precompiled as an archive file with .sbar extension. In this situation, the debugger fails to launch. In release 6.0.1, this behavior changed as follows: instead of failing to launch the debugger, Studio issues a warning, and launches the debugger against the precompiled EventFlow or StreamSQL application instead.
SB-11275 The following Java property was added to the sbtest command: streambase.sbtest.double-compare-epsilon The default value is 0.00001. You can use this property to handle rounding issues when comparing values that are doubles.
SB-10884

This release adds a way to control the size of the internal queue used between a Java StreamBaseClient's main thread and the dequeuing thread. Previously, you could control the number of batches of tuples in the queue using the Java property streambase.max-queue-size, which has a default size of 500 batches. However, if a client gets behind in dequeuing, the server starts sending larger batches, which requires more memory usage by the client.

To remedy this situation, there is a new Java property in the StreamBaseClient API:

streambase.client.max-tuples-in-queue

The default value is 10000 tuples. This property limits the absolute number of tuples in the queue, promoting better client behavior. This new Java property also affects the StreamBase to StreamBase input adapter.

There is also a new Java property for the server:

streambase.sbd.max-tuples-in-dequeue-packet

This property limits the number of packets the server includes in any one dequeue packet. The default value is 10000, which matches the default of the new client property described above. Administrators can set both server and client with matching values to make sure client dequeues are not overwhelmed.

SB-10443 The shutdown(String containerName) method of the StreamBaseAdminClient class was previously documented to shut down the containing server if the specified container is the last container. This method now performs the same operation as removeContainer().
SB-6789

In releases 5.0 through 6.0.0, on the Windows platform, StreamBase Studio did not take into account the possibility that you had moved your My Documents folder when creating your workspace as a subdirectory of My Documents. This was fixed.

Note: after you install release 6.0.x, Studio can continue to use any workspace it has already created. There is no need to move the folder containing your workspace.

SB-10564 In StreamBase Studio, you could not delete values from the enumerated list for a field in a schema in a feed simulation process definition. Also, if there were more than 35 fields in the schema, Studio failed to display the dialog for creating the enumerated list for a field. This was fixed.
Fixed in 6.0
Number Resolution
SB-11010 In previous releases, an aggregate operator configured with a group-by expression with the same output name as one of its input fields would cause Studio to display an IllegalArgumentException error dialog. This has been fixed, and the operator now reports an appropriate typecheck error instead.
SB-10899 In release 5.1, the HA sample opened in Studio with typecheck errors until you manually set up a reference to an external JAR. This was corrected in 6.0, and the sample opens in Studio ready for study.
SB-10877 In previous releases, in the Operation Settings tab of the Query operator's Properties view, if you specified an action to take if the update or insert failed, an int to string conversion was sometimes silently allowed. This conversion is no longer allowed.
SB-10828 In release 5.1, StreamBase to StreamBase connections would fail silently if the input and output streams had incompatible schemas. The same conditions in 6.0 now produce an error message.
SB-10811 In previous releases, dynamic variables could not be used in aggregate expression calculations. This was fixed.
SB-10778 Previous releases did not notify you during typechecking when a table scan is being used. Starting with 6.0, a warning is now displayed in the Console view.
SB-10629 In previous releases, the Clickstream demo application shipped with StreamBase in EventFlow form would fail to convert to StreamSQL. This was fixed.
SB-10569 The custom function wizard in StreamBase Studio now uses more appropriate names for aliases.
SB-10568 In previous releases, Studio could set an incorrect classpath if the path to the user's Studio workspace was too long. This was corrected.
SB-10519 When using the EMS/JMS adapters, it is now possible to specify a timestamp format for use with ToJMSMessageConverter.
SB-10462 In previous releases, an expression with two plus signs (such as item++item2) was interpreted as a simple add operation instead of being flagged as an error. Such expressions now correctly cause a typecheck error.
SB-10417 The min and max expression language functions now permit strings and mixed numeric data types as arguments.
SB-9156 Customers setting max-client-pages to 0 were insufficiently warned of the consequences. Now a WARNING message displays at server startup explaining that this setting can lead to server crashes from memory exhaustion.
SB-9031 In previous releases, when using the EMS/JMS embedded reader adapter and the EMS/JMS external enqueuing adapter, incoming strings too large for the corresponding StreamBase field were silently set to null. It is now possible to configure these adapters to truncate incoming messages to fit.
SB-9106 The sb-ems-enqueue command (part of the EMS/JMS adapter package) now emits log messages with connection information for every connection and disconnection from a JMS server.
SB-9006 The EMS/JMS adapter now supports the TIBCO EMS RELIABLE_DELIVERY mode. .
SB-8822 In previous releases, simple errors such as a divide-by-zero error could shut down the running sbd server. This was fixed as part of the high availability improvements in 6.0.
SB-7517 Various issues with the Extract as Module feature were fixed.
SB-7266, #62441

In general, properties for Java operators specified in the server's sbd.sbconf file are evaluated at compile time rather than at runtime. In release 5.1, this was causing confusion with precompiled applications (described in Precompiled Application Archives), because operator properties specified in the runtime sbd.sbconf were silently ignored when a precompiled application file was generated.

This was fixed. Starting with release 6.0, properties for Java operators specified in sbd.sbconf are correctly passed to StreamBase Server when it loads a precompiled application file.

SB-6977 In previous releases, if you deleted a component from the Outline view in the EventFlow editor, you were not prompted to confirm, even with preferences set to prompt on delete. This was corrected.
SB-6145 In previous releases, the filter operator would automatically check the false port option if you had more than one predicate, and the last predicate was true. The filter operator no longer does this, and preserves your predicate entries as entered.
SB-5722, #25825, SB-10608, SB-10940 In previous releases, input adapters that read data from files, such as the CSV Input Adapter, when run under StreamBase Studio, could start so quickly that their output was not caught by Studio, if they completed reading the file before Studio connected to the running server. This was fixed.
#73724 In StreamBase Reuters Edition 5.1.x, portions of the RFA/Java Configuration Wizard were disabled for RTIC servers until a workaround was put in place. In release 6.0, the workaround is automatically in place, so the wizard works normally for RTIC servers. The Test Connection button is disabled for RTIC connections, but the wizard now generates a correct configuration file for your RTC connection.

Limitations Resolved in 5.1.x

Fixed in 5.1.13
Number Resolution
SB-15995 In previous releases, the expression language functions stdev() and stdevp(), when run over an integer window, could overflow and produce NaN values. This was corrected.
Fixed in 5.1.12
Number Resolution
SB-13373 A 64-bit byte-swapping issue was corrected that affected communication between a Windows client and StreamBase Server on Solaris.
Fixed in 5.1.11
Number Resolution
SB-12803 In previous releases, in rare circumstances, connections made to and from the Union operator were not preserved when saving an EventFlow application. This was corrected.
SB-11175 When using the StreamBase to StreamBase input adapter, if incoming and outgoing schemas did not match, the adapter complained with a DEBUG-level message in the Error Log view. To make these errors more visible, the message type was changed to INFO, which appears in the Error Log view if STREAMBASE_LOG_LEVEL is 0 (the default setting) or higher.
Fixed in 5.1.10
Number Resolution
SB-11908 The java-prepend-classpath parameter in the StreamBase Server configuration file was introduced in release 5.1.1 as a workaround for then-new behavior. This parameter was found to be unnecessary and was removed in later releases, but typechecking failed to flag the parameter as incorrect. As of this release, using the java-prepend-classpath parameter is correctly flagged as a configuration file error.
SB-11898 In previous releases, when performing updates to a memory Query Table, if an error was thrown while evaluating an expression, the original row being updated was deleted from the table. This was corrected, and errors thrown during Query Table updates now leave the original row unchanged.
Fixed in 5.1.9
Number Resolution
SB-11615 The Wombat adapter was preventing users from connecting to a feed that used a separate transport for downloading the data dictionary. The cause was identified and corrected.
Fixed in 5.1.8
Number Resolution
SB-11584

A problem with dequeuing tuples was caused by the following limitation in the Java Virtual Machine (JVM):

6724218: Incorrect code is generated for AbstractLinkedList::removeNode

This release of StreamBase includes a workaround for this Java problem.

SB-11532 If an input adapter was configured with two or more worker threads, and had a wide output schema such that overflow fields were used, a race condition could develop, resulting in an IndexOutOfBoundsException error. The cause was identified and fixed.
SB-11448

In releases prior to 5.1.8, StreamBase Studio did not examine the application module parameters when resolving parameters in Java adapters or Java operators. The application module parameters are defined in the Parameters tab of the EventFlow Editor. This problem was fixed.

SB-11392 StreamBase Server failed to start due to incorrectly parsed JVM arguments if the jvm-args parameter in the java-vm section of the configuration file contained any JVM path setting that contained spaces. It did not matter whether the setting was explicit or specified by means of an environment variable. This was fixed.
SB-11369 If you generated a precompiled (.sbar) file, then changed any parameter settings in the data-sources section in the configuration (.sbconf) file for the application, and then ran the precompiled file, it was likely that the behavior of the application was not as expected. This was fixed.
SB-10884

This release adds a way to control the size of the internal queue used between a Java StreamBaseClient's main thread and the dequeuing thread. Previously, you could control the number of batches of tuples in the queue using the Java property streambase.max-queue-size, which has a default size of 500 batches. However, if a client gets behind in dequeuing, the server starts sending larger batches, which requires more memory usage by the client.

To remedy this situation, there is a new Java property in the StreamBaseClient API:

streambase.client.max-tuples-in-queue

The default value is 10000 tuples. This property limits the absolute number of tuples in the queue, promoting better client behavior. This same Java property also affects the StreamBase to StreamBase input adapter.

There is also a new Java property for the server:

streambase.sbd.max-tuples-in-dequeue-packet

This property limits the number of packets the server includes in any one dequeue packet. The default value is 10000, which matches the default of the new client property described above. Administrators can set both server and client with matching values to make sure client dequeues are not overwhelmed.

SB-10564 In StreamBase Studio, you could not delete values from the enumerated list for a field in a schema in a feed simulation process definition. Also, if there were more than 35 fields in the schema, Studio failed to display the dialog for creating the enumerated list for a field. This was fixed.
#73006 Very large feed simulations with more than about 160 fields could crash StreamBase Studio when you clicked the Customize Fields button. This has been fixed.
Fixed in 5.1.7
Number Resolution
SB-11339 The <jar> and <dir> elements in the StreamBase Server configuration file are used to add classes required by custom operator and embedded adapter classes. Prior to 5.1.7, there were situations where the added classes were not made visible to the custom classes, resulting in custom classes that would fail to load or operate correctly. As of release 5.1.7, these visibility problems were eliminated.
SB-10519 When using the EMS/JMS adapters, it is now possible to specify a timestamp format for use with ToJMSMessageConverter.
SB-10443 The shutdown(String containerName) method of the StreamBaseAdminClient class was previously documented to shut down the containing server if the specified container is the last container. This method now performs the same operation as removeContainer().
SB-9106 The sb-ems-enqueue command (part of the EMS/JMS adapter package) now emits log messages with connection information for every connection and disconnection from a JMS server.
SB-9031 In previous releases, when using the EMS/JMS embedded reader adapter and the EMS/JMS external enqueuing adapter, incoming strings too large for the corresponding StreamBase field were silently set to null. It is now possible to configure these adapters to truncate incoming messages to fit.
SB-9006 The EMS/JMS adapter now supports the TIBCO EMS RELIABLE_DELIVERY mode.
Fixed in 5.1.6
Number Resolution
SB-10695 UTF-8 characters stored as strings were being doubly interpreted when using the JDBC Adapter. This was corrected.
SB-10694 Feed simulations with file data source and a specified data rate were not correctly interleaving in multiple stream simulations. This was corrected.
SB-10638 A large StreamBase application with many client enqueue connections would cause the Statistics manager thread to show increasing CPU usage over time, and sometimes result in a connection error stating Too many open files. The root cause was identified and fixed.
SB-7569 The Reuters RFA Publishing Adapter was experiencing crashes when it received a tuple with a Null item field. This was fixed.
Fixed in 5.1.5
Number Resolution
SB-10669 Using the control portion option in the properties for the CSV Reader Input adapter was creating an elusive port in the Studio canvas that was hard to select. The cause was identified and fixed.
SB-10649 Performance of time-based materialized windows was improved with a change in the way they were indexed.
SB-10579 Stream throughput was not optimal for a stream with a very wide schema. An internal change in the handling of wide tuples was implemented, resulting in significant performance improvement.
SB-10536 The Reuters Schema Designer now has improved error reporting when a single invalid RIC is entered.
SB-10496 Materialized windows created in StreamSQL were not appearing in the Outline View in StreamBase Studio. This was fixed.
SB-10447 A problem loading a custom Java function from a directory whose name contains spaces was corrected.
SB-10357 A problem running a feed simulation with sbfeedsim using a very large data file was causing an NPE error. The cause was identified and fixed.
SB-10339 The New Java Operator wizard, given a default value entry of one double quote, would generate invalid code with non-standard formatting. The cause was identified and fixed.
Fixed in 5.1.4
Number Resolution
SB-10508 In previous releases of StreamBase 5.1.x, the StreamBase Java Client library would mis-report a null value in a Timestamp field as being a nonsensical value, rather than null. This issue was fixed.
SB-10397 Under certain circumstances, the Pattern Operator time window was failing to close within its specified time. The cause was identified and fixed.
SB-10388 Disk-based query tables, where the primary key was not the first column in the table schema, would deadlock during certain read queries.
SB-10386 The StreamBase ActivFeed Adapter was recompiled to use version 1.8.3.1 of the Activ APIs, the latest available version.
SB-10340 Java code generated by the StreamBase Java Operator wizard could have non-standard line spacing, depending on your Eclipse settings and operating system. The cause was identified and fixed.
SB-7561 In previous releases, if you used the reconnect interval parameter with either the StreamBase to StreamBase Input or Output adapters in a remote container connection URI, an invalid parameter exception was thrown. This was fixed.
Fixed in 5.1.3
Number Resolution
#73359 Small usability issues with the Query Prefix functionality were resolved.
#73244 StreamBase Studio could display a Cannot Save error dialog when changing indexes on a Query table. This was fixed.
#72075 For certain adapters, adding an Error Output Port could inadvertently also add an extra non-error output port. The cause was identified and fixed.
#70675 StreamBase Server, when started from the command line in debugging mode sometimes failed to release TCP sockets when many containers were added and removed. The cause was found and fixed.
#70533 You can use NavigateOpen StreamBase Resource (or the toolbar button equivalent) to display a list of all StreamBase-related files in all projects in the current workspace. Formerly, the list of files displayed included all sbapp, ssql, and sbfs files. As of release 5.1.3, the list includes sbconf files as well.
#56829 StreamBase Studio now issues a warning if you attempt to paste text into a Properties View field if the pasted text contains any multibyte characters that are not supported in the EventFlow file format.
Fixed in 5.1.2
Number Resolution
#72363 In the previous release, reads on Query Tables did not set the security tag correctly. This was fixed.                                
Fixed in 5.1.1
Number Resolution
#64234 StreamBase Studio sometimes failed to detect field mismatches in query operators correctly. Such queries could fail at runtime, or the EventFlow could not be converted to StreamSQL. These errors are now typechecked correctly.
#60328 Changing a stream used by a dynamic variable sometimes failed to trigger a typecheck.
#57066 The custom-java-function example formerly demonstrated a custom function, which was called random(). The random() function is now a built-in function provided by StreamBase. Therefore, the custom-java-function sample has been updated to feature a different custom function called hypotenuse().
#52670 Explicit schema typechecking was field-order sensitive. Now, schemas do not have to have the same field order to match.
#37350 Studio sometimes failed to automatically typecheck in a module that was referenced by other applications currently open in other EventFlow Editors.
#32492 The API documentation for getOperatorProperty was misleading. It gave the impression that this property could be used for non-Java operators, when in fact the command is restricted for use with Java operators and embedded adapters only.
#14807 Very large applications that ran in standard mode sometimes failed to start in debug mode, with errors such as code too large. This was fixed.

Limitations Resolved in 5.0.x

Fixed in 5.0.8
Number Resolution
SB-13373 A 64-bit byte-swapping issue was corrected that affected communication between a Windows client and StreamBase Server on Solaris.
Fixed in 5.0.7
Number Resolution
SB-11615 The Wombat adapter was preventing users from connecting to a feed that used a separate transport for downloading the data dictionary. The cause was identified and corrected.
Fixed in 5.0.6
Number Resolution
SB-10884

This release added a way to control the size of the internal queue used between a Java StreamBaseClient's main thread and the dequeuing thread. Previously, you could control the number of batches of tuples in the queue using the Java property streambase.max-queue-size, which has a default size of 500 batches. However, if a client gets behind in dequeuing, the server starts sending larger batches, which requires more memory usage by the client. To remedy this situation, there is a new Java property in the StreamBaseClient API: streambase.client.max-tuples-in-queue. The default value is 10000 tuples. This property limits the absolute number of tuples in the queue, which promotes better client behavior. This same Java property also affects the StreamBase to StreamBase input adapter.

There is also a new Java property for the server, streambase.sbd.max-tuples-in-dequeue-packet. This property limits the number of packets the server includes in any one dequeue packet. The default value is 10000, which matches the default of the new client property described above. Administrators can set both server and client with matching values to make sure client dequeues are not overwhelmed.

Fixed in 5.0.5
Number Resolution
SB-10638 A large StreamBase application with many client enqueue connections would cause the Statistics manager thread to show increasing CPU usage over time, and sometimes result in a connection error stating "Too many open files." The root cause was identified and fixed.
SB-10579 Stream throughput was not optimal for a stream with a very wide schema. An internal change in the handling of wide tuples was implemented, resulting in significant performance improvement.
SB-10357 A problem running a feed simulation with sbfeedsim using a very large data file was causing an NPE error. The cause was identified and fixed.
Fixed in 5.0.4
Number Resolution
SB-10388 Disk-based query tables where the primary key was not the first columns in the table schema would deadlock during certain read queries. Retrieve queries against disk-based query tables sometimes deadlocked StreamBase applications.
SB-9209 In earlier versions, when StreamBase Studio was implemented as an Eclipse Rich Client Platform application, the only way to synchronize projects when changes occurred in the underlying workspace file system was to restart Studio or change workspaces. Starting with Version 5.0, Studio is an Eclipse plug-in, and you can click FileRefresh (F5) at any time to resynchronize your project.
SB-7505 A problem handling tuples in custom Java operators sometimes caused applications with disk-based query tables to encounter ArrayIndexOutOfBoundsException errors.
SB-7426 In the EventFlow Editor, the schemas associated with connections between components must be automatically updated when you change the application. For example, the arc between two connected components may initially have no declared schema; however, if you connect an input stream earlier in the flow, the arc should acquire an explicit schema. StreamBase Studio sometimes did not correctly manage schemas in connections during EventFlow editing, which could result in a corrupted application.
SB-7399 Previously, the EventFlow Editor would not open an application that had a non-valid group (for example, a group whose elements have been deleted). Now, if you open an EventFlow with empty groups, a warning dialog gives you the option to remove the groups and save the changes.
SB-7351 Previously, if a referenced module and its referencing module were both open in the EventFlow Editor, even trivial changes to the referenced module (such as moving a component on the canvas) caused the referencing module to be marked as changed. This required you to save the referencing module before closing or launching it. The editor also failed to mark a referencing module as changed when a change was made to a module it referenced.

The problems have been fixed: Now, a referencing module is marked as changed only when there is a significant change to the referenced module (for example, to schemas, inputs or outputs, or tables). And, referencing modules are marked as changed when their referenced modules change.

SB-6143 In the EventFlow Editor, when you drew an arc to a component that had multiple output ports, it was difficult to see which port you were connecting to.
Fixed in 5.0.3
Number Resolution
#63888 Despite release 5.0.2's fix to #59757 (described below), there were still cases where the icons for custom operators and adapters were failing to populate the Project Adapters drawer of the Palette view. These were cases where the developer extends the StreamBase API through two or more subclasses. For example: where subCustomInputAdapter extends CustomInputAdapter, which extends the StreamBase InputAdapter class. As of release 5.0.3, StreamBase Studio searches recursively for all subclasses of its operator and adapter APIs, whether or not abstract, and verifies that these classes are public and not package private.
#62754 In previous releases, in the StreamBase C++ API, the sb::StreamBaseClient member function dequeue(timeout_ms) failed to honor timeouts that were longer than the StreamBase Server heartbeat interval (which is 10 seconds by default). This was fixed.
#62581 In previous releases, when drawing an arc from a materialized window to a query operator, the arc source was pinned at the center of the icon, and not at the port as normal. This error was cosmetic only, and was fixed.
#59823 In previous releases, the Reuters Subscribing Input Adapter processed received time fields incorrectly. The published time fields have no time zone indicator and should therefore be treated as UTC values. But, the adapter was treating them as local time values, which inadvertently added a time zone offset to time values when sending the resulting tuples downstream. This was fixed..
Fixed in 5.0.2
Number Resolution
#61536 Incomplete or malformed timestamp strings passed to the StreamBase strptime() function could cause an ArrayIndexOutOfBoundsException error. This was fixed so that such strings return useful error messages and do not halt the containing process.
#60152 In StreamBase 5.0.0 and 5.0.1, when using a module reference whose input ports have been assigned manually to not include all input streams from the referenced application, it was possible for Studio to override your choices and auto-assign all ports to streams if you modify the referenced application. This was fixed; Studio now maintains your port assignments even if new streams are added or removed from the referenced application.
#59757 In 5.0.0 and 5.0.1, custom Java operators implemented by extending the StreamBase Operator class as an abstract superclass were failing to populate the Project Adapters drawer of the Palette view. This was fixed.
#59174 An attempted shutdown of StreamBase Studio could hang if portions of a demo were left running in the Demo Perspective. The cause was identified and corrected.
#58442 The library element of the XML grammar of the StreamBase Server configuration file (the .sbconf file) was corrected. This element is used to specify the paths to private Java library files that will be prepended to the JVM's java.library.path. In previous releases, the setting of the library element was inadvertently ignored; as of StreamBase 5.0.2, this element is interpreted correctly.
#57015 In 5.0.0 and 5.0.1, the StreamBase sample custom-java-aggregate inadvertently contained an empty JAR file. This was corrected.
#55877, #55880, #59536 Documentation for the following functions was clarified and corrected in both the Reference Guide and the expression assistance for the Properties view: count(), exp_moving_avg(), pow().
#54732, #58006 In 5.0.0 and 5.0.1, in using shared query tables, typechecking could remain flagged as invalid for the inner module if you deleted a table in the outer module. StreamBase now performs automatic updates under certain conditions, which prevents this error.
#54302 In previous releases, non-ASCII characters in strings passed with the C++ Client library function addContainer() could become corrupt. The cause was identified and fixed.
Fixed in 5.0.1
Number Resolution
#57007 The StreamBase installation did not correctly detect the presence of an existing .NET 3.5 installation. The problem was fixed.
#56623 A memory leak in the Excel adapter was fixed.
#56050 In EventFlow Properties views for JDBC data constructs, the SQL edit fields were small and did not resize when you resized the view. Now, these fields, and description fields for all components, are bigger by default and correctly resize when the Properties view resizes.
#55400 In the previous release, the default sbd.sbconf file did not resolve the ${STREAMBASE_HOME} environment variable correctly in the param name="java-home" element. This problem was fixed.
#54583 In release 5.0.0, a link was broken in the StreamBase Studio Welcome screen to the New and Noteworthy page of the documentation. The problem was fixed.
#53994 sbrecord failed when running in debug mode and when modules were used in the application. The problem was fixed.
#53242 When a materialized window was copied, the access level parameter value was not copied. This was fixed.
#53229, #52675, #52674, #52646, #9442 In previous releases, when you deleted some components in an EventFlow and subsequently clicked Undo, StreamBase restored the components, but failed to restore some connections (arcs) between them. The connections are now correctly restored.
Fixed in 5.0
Number Resolution
#50133 In previous releases on Windows, sbfeedsim could fail to run when StreamBase was installed in a location with no spaces in the path. Now, sbfeedsim works with any installation path.
#45388 In previous releases, deleting an EventFlow application component with the Outline View didn't always work. The cause was identified and fixed.
#37149 shutdown() called with a container-qualified URI shut down the container, not the server. The problem was fixed.
#34949 In previous releases, Studio could rarely produce a ghost duplicate of a component icon that did not cause typecheck errors. The cause was identified and fixed.
#33527 New applications sometimes created in wrong project. In previous releases, StreamBase Studio sometimes created a new application in the last project worked on, instead of the selected project. Now, if you right-click a project in the Package Explorer and use the context menu to create a new EventFlow or StreamSQL application, it is created in that project.
#14747 In previous versions, deadlocks could occur with downstream updates of a JDBC select. The problem was fixed.
#14507 When building applications with loops, the stream with a pre-declared schema (the blue stream) had to be an input to the Union operator for correct performance. If the blue stream was at a different point in the loop, the application typechecked and ran, but messages were sometimes re-ordered. For sufficiently long-running loops, resource exhaustion could occur. This was fixed.
#14485 StreamBase Studio sometimes failed to notice that the sbd server had shut down. This was fixed.
#9691 In previous releases, the Feed Simulation view on Linux did not display the tooltip for the error icon. The problem does not occur in the current version.
#8954 In pre-3.0 versions, spurious error messages related to the Regions view were sometimes displayed. The problem no longer exists: the Regions view was replaced by concurrency options.
#8833 During a StreamBase installation, it was possible to lose unsaved work in other open applications. The problem was fixed.
#6910 In previous releases, recordings and feed simulations were strongly tied to application and stream names. For example if you renamed an application you could no longer run its associated feed simulation. The problem was fixed.
#5607 In previous releases, simply opening a Query operator's properties view caused StreamBase Studio to modify some properties. The problem was fixed.
#5088 In previous versions, StreamBase Studio generated some typecheck messages that did not describe the problems clearly. The messages have been improved.
#4434 In previous versions, the Venturi Compression Client 2.3 crashed StreamBase clients on Windows. The problem was fixed.
#1948, #9749 In previous releases, the HTML version of the StreamBase Help system required JavaScript to be enabled. Documentation for 5.0 and later does not.
#1935 In previous versions, StreamBase Server sometimes left temporary directories in /tmp with names like sbdata-25224. Such temporary directories are now deleted.

Limitations Resolved in 3.x

Version Number Resolution
Fixed in 3.7.14 SB-10884

This release adds an additional way to control the size of the internal queue used between a Java StreamBaseClient's main thread and the dequeuing thread. Previously, you could control the number of batches of tuples in the queue using the Java property streambase.max-queue-size, which has a default size of 500 batches. However, if a client gets behind in dequeuing, the server starts sending larger batches, which requires more memory usage by the client. To remedy this situation, there is a new Java property in the StreamBaseClient API: streambase.client.max-tuples-in-queue. The default value is 10000 tuples. This property limits the absolute number of tuples in the queue, which promotes better client behavior. This same Java property also affects the StreamBase to StreamBase input adapter.

There is also a new Java property for the server, streambase.sbd.max-tuples-in-dequeue-packet. This property limits the number of packets the server includes in any one dequeue packet. The default value is 10000, which matches the default of the new client property described above. Administrators can set both server and client with matching values to make sure client dequeues are not overwhelmed.

Fixed in 3.7.13 SB-10638 A large StreamBase application with many client enqueue connections would cause the Statistics manager thread to show increasing CPU usage over time, and sometimes result in a connection error stating "Too many open files." The root cause was identified and fixed.
Fixed in 3.7.12 SB-7573 The client.isClosed() method in the StreamBase Client API was returning unexpected results. The method was fixed to work as expected, which is to return true when the client connection is closed.
Fixed in 3.7.12 SB-6651 A problem in the Wombat MAMA adapter was causing StreamBase Server to sometimes crash on shutdown. The cause was identified and fixed.
Fixed in 3.7.11 #64565 and #65877 A problem in the StreamBase Wombat adapter sometimes caused a ConcurrentModificationException error, requiring the sbd to be restarted. This exception no longer occurs.
Fixed in 3.7.10 #61536 Incomplete or malformed timestamp strings passed to the StreamBase strptime() function could cause an ArrayIndexOutOfBoundsException error. This was fixed so that such strings return useful error messages and do not halt the containing process.
Fixed in 3.7.10 #59823 In previous releases, the Reuters Subscribing Input Adapter processed received time fields incorrectly. The published time fields have no time zone indicator and should therefore be treated as UTC values. But, the adapter was treating them as local time values, which inadvertently added a time zone offset to time values when sending the resulting tuples downstream. This was fixed.
Fixed in 3.7.10 #58442 The library element of the XML grammar of the StreamBase Server configuration file (the .sbconf file) was corrected. This element is used to specify the paths to private Java library files that will be prepended to the JVM's java.library.path. In previous releases, the setting of the library element was inadvertently ignored; as of StreamBase 3.7.10, this element is interpreted correctly.
Fixed in 3.7.9 #57799 StreamBase stored only the date portion of timestamps when writing to MySQL over JDBC. The problem was fixed.
Fixed in 3.7.9 #56623 A memory leak in the Excel adapter was fixed.
Fixed in 3.7.9 #55594 jsbmonitor reported incorrect statistics for memory usage. The problem was fixed.
Fixed in 3.7.9 #36207 The CSV embedded input adapter did not generate a typecheck error when no fields were defined in the output schema. An error is now generated unless the output schema contains at least one field.
Fixed in 3.7.9 #48486 sbfeedsim failed to run on Solaris because of a JVM incompatibility. The problem was fixed.
Fixed in 3.7.7 #35246 In previous releases, performing a filtered subscribe on a non-existent stream could result in a StreamBase runtime compilation error. This was identified and fixed.
Fixed in 3.7.7 #40038 When using the StreamBase .NET API in previous releases, there was a hard-coded requirement that the sbclient_dotnet.ini file be present in $STREAMBASE_HOME\bin. This requirement was removed.
Fixed in 3.7.7 #40588 In the upgrade from StreamBase 3.5 to 3.7, in the StreamBase EMS Adapter, the FromJMSMessageConverter interface and DefaultFromJMSMapMessageConverter class were inadvertently moved from their documented location to a different package. To resolve this issue, version 3.7.7 (and later) places this interface and class in two locations: in com.streambase.sb.adapter.jms.enqueue (for compatibility with 3.5.x) and in com.streambase.sb.adapter.common.jms.enqueue (for 3.7.x and later versions). New applications should use the new location.
Fixed in 3.7.6 #39535

In prior releases, under certain unusual circumstances, an update operator could corrupt the primary index of a table, leading to the appearance of duplicate key values, and potential data loss. This error was identified and fixed.

The rare circumstances that triggered the condition were: an update operator was modifying rows in a query table with a primary key of type string, which was downstream from, but in the same parallel region as, a read operator connected to the same table, which returned three or more rows.

Fixed in 3.7.6 #35628

Errors in a third party Java library were causing a Null Pointer Exception for users of the StreamBase Reuters Subscribing Adapter accessing certain classes of market data. This release of StreamBase incorporates a fixed version of that library, which resolves the errors.

Fixed in 3.7.5 #28114 The first-row-as-header feed simulation feature was used correctly for mapping the field to a column, but the first row data was still sent onto the stream as data. This was corrected.
Fixed in 3.7.5 #30846 In previous releases on Windows, the StreamBase Studio Window menu listed the monitor view as available in the SB Test/Debug perspective. However, it is not really an option because the monitor view was removed and replaced by the Launch Monitor command. In the current release, the monitor view is no longer listed as an option.
Fixed in 3.7.5 #31094 Under certain circumstances, Java operators could continue to emit tuples after the enclosing adapter was shut down, resulting in a RuntimeException thrown. This was fixed.
Fixed in 3.7.5 #34329 In previous releases, StreamBase Studio could throw an Array Index Out of Bounds Error when you dropped a custom adapter onto the canvas, if the custom adapter contained errors. StreamBase Studio was fixed to changed to display an error message that will be more helpful to you in diagnosing the underlying adapter configuration problem.
Fixed in 3.7.5 #35321 In previous releases, compilation errors could occur when feeding large tuples to a lock operator. This was fixed.
Fixed in 3.7.3 #33443 You should be able to use intermediate streams in non-debug mode by configuring the sbd.sbconf file and adding the -Dstreambase.codegen.intermediate-stream-dequeue = true switch to the jvm-args parameter. For example:

<param name="jvm-args" value="-Xms64m -Xmx256m -Dstreambase.codegen.intermediate-stream-dequeue = true"/>

In the previous release, setting the switch shown did not work properly, and you could only see intermediate streams in debug mode. The problem was fixed.

Fixed in 3.7.3 #33407 StreamBase did not handle nullable fields correctly when connecting containers.
Fixed in 3.7.3 #31420 In previous releases, operators were not resumed correctly after a high-availability failover. StreamBase now sets the proper state before a checkpoint is created to make sure that operators are resumed correctly on failover.
Fixed in 3.7.3 #31352 In previous releases, changes to the Lookup expression field in the Query Settings tab of the Query operator did not correctly trigger re-typechecking. The problem was fixed.
Fixed in 3.7.3 #31345 In previous releases, the Excel adapter did not allow you to enter fully-qualified stream names into spreadsheet cells. This was an issue when the StreamBase application was running in the non-default container. Now you can enter fully-qualified stream names. For example:

=RTD("StreamBase.RTD", , "STREAM:myContainer.All_Transactions", ...)

Note that is usually better NOT to specify container names in Excel cells. That is,

=RTD("StreamBase.RTD", , "STREAM:All_Transactions" , ...)

is generally more maintainable than:

=RTD("StreamBase.RTD",,"STREAM:myContainer.All_Transactions", ...)

Fixed in 3.7.3 #31088 In previous releases the SCF adapter did not fully support modules: it failed to subscribe and unsubscribe dynamically when the application was not in the default module. The problem was corrected.
Fixed in 3.7.3 #30589 Under certain circumstances, dragging an item from the palette to an Eventflow editor would drop the wrong item, or not allow any item to be dropped. This was fixed.
Fixed in 3.7.3 #29575 When processing .sbfs feed simulation files, StreamBase attempted to validate the simulation file's xml namespace url by connecting to www.streambase.com. This validation is not necessary, and was removed.
Fixed in 3.7.3 #17886 In previous releases, dequeue clients were not always notified when the StreamBase Server (sbd) process was unavailable. The problem was fixed in this release.
Fixed in 3.7.2 #31243, #30547, #31000 In prior releases, an error could occur in StreamBase Studio when any action resulted in resizing a component's Properties view, if it contained a table of information. Often the exception was: java.lang.ArrayIndexOutOfBoundsException: 4. This problem was fixed.
Fixed in 3.7.1 #28152 In StreamBase 3.7.0, if you extracted components into a module reference, the created module reference's input and output ports were not connected into the original application diagram. This required you to reconnect the module's ports manually. The problem was fixed for 3.7.1.
Fixed in 3.7.1 #28128 If your application contains a looping stream (or arc) between components, you must explicitly specify the schema of the looping stream, as described in the Arcs topic in the Authoring Guide. Otherwise, the schema of the output stream cannot be resolved.

In previous releases, copying the operators in the loop would cause the schema of the looping stream to be shared by the operators. As a result, a change to either looping stream would take effect in both. In this release, such a copy now creates a separate schema for the looping stream. The schemas are initially identical, but you can edit each independently of the other.

Fixed in 3.7.1 #27936 In StreamBase 3.7.0, time-based Materialized Windows did not release and evict tuples when the specified time elapsed. Instead, they waited for data to arrive on the materialized window input stream before releasing. This has now been fixed: tuples that are read from a time-based materialized window never include any tuples that are not valid for the time-window at the time of the read operation.
Fixed in 3.7.1 #29216 After an upgrade to StreamBase 3.7 from a prior release, StreamBase Studio failed to launch unless you deleted the StreamBase configuration folder. StreamBase now installs correctly over a previous installation.
Fixed in 3.7.1 #26298 In previous releases, when you did an Import, StreamBase Studio sometimes did not find all the application resource files. The problem is fixed in this release.
Fixed in 3.7.1 #18944 Before this release, it was possible for a Java Operator or adapter to add optional input ports but not optional output ports. This release adds support for optional output ports.
Added in 3.7.0 #9787 and #9793 The Excel adapter now supports a META tag that provides access to StreamBase metadata, including count of configured uriref elements, names of each uriref element, server status, stream count, stream names, field count per stream, and field names, types, and sizes. This is all documented in the StreamBase Adapter for Microsoft Excel documentation. There's a new sample spreadsheet, meta.xls, that illustrates the use of the new META tag.
Fixed in 3.7.0 #10485 When a StreamBase server fails, the Excel adapter no longer causes Excel to display a dialog containing the message, The real-time data server 'streambase.rtd' is not responding. Would you like Microsoft Office Excel to attempt to restart the server? Yes/No.

Instead, the adapter monitors the failed StreamBase server, and when it becomes available, reconnects in the background. The current state of each StreamBase server is available through the new META:SERVER_STATUS tag. The new meta.xls sample spreadsheet shows how this works.

Fixed in 3.7.0 #20008 In previous releases, a badly-formed sb-microsoft-excel.sbconf file caused Excel to fail. The problem was fixed.
Fixed in 3.7.0 #20009 In previous releases, the Excel adapter reported an error and failed to continue if any of the StreamBase servers listed in the configuration file were not running. Now, it continues to run, monitoring and (re)connecting to StreamBase servers as necessary. This is helpful during testing or production when multiple servers are in use.
Added in 3.7.0 #20010 The Excel Adapter interprets an empty URIREF value in the configuration file as the default URI. For example, if the configuration file contains:
<param name="uri" value="sb://foo:10000"/>

and a spreadsheet cell contains:

=RTD("StreamBase.RTD",,"URIREF:", ...)

then this cell will reference the StreamBase server running at URI sb://foo:10000.

Fixed in 3.7.0 #14765 In prior releases, sbmonitor could not connect to the running sbd server process in a particular scenario. If an outer module controlled output streams, the sbmonitor output could pause for a very long time if a tuple caused a downstream operator to send out many tuples. This problem was fixed.
Fixed in 3.7.0 #17738 In prior releases, in some cases StreamBase Studio failed to close a ZIP file after a failed import operation. This problem was fixed.
Fixed in 3.7.0 #15950 In prior releases, the Feed Simulation Editor's drop-down menu to select a column in a trace data file was limited to 10 items, making it impossible to re-allocate any additional columns. This problem was fixed.
Resolved in 3.7.x #10588, #14765 Formerly, if a StreamBase application got stuck in an infinite loop, or otherwise became unresponsive, the StreamBase Server might stop producing monitoring information. Because there was no monitoring information produced, sbmonitor could not be used to debug the problem. This was fixed.
Resolved in 3.7.x #10793, #9932 Operators that differed only in case did not typecheck correctly. This was resolved.
Resolved in 3.7.x #12633 StreamSQL ORDER BY DESC statement is now supported.
Enhanced in 3.5.7 #24495 The StreamBase Reuters Subscribing Input Adapter was enhanced. This embedded adapter is available via a separate installation kit. Prior to 3.5.7, the adapter could only map the service name and item name into market data tuples. Now the adapter can also map the 4-part subject into all generated market data tuples. 4-part subjects are often needed with fixed-income securities. If you are interested in using the StreamBase Reuters Subscribing Input Adapter, please contact us about this separate kit. It includes the embedded adapter's JAR plus several libraries and sample files.
Resolved in 3.5.7 #25514 In prior releases, the StreamBase Reuters Subscribing Input Adapter interpreted the send-unchanged-fields-as-null flag with the wrong polarity. If the flag was set to true, a field not present in an update tick incorrectly received the old field value. This problem was fixed.
Resolved in 3.5.7 #24390 In prior releases of the StreamBase Java Client library, if a StreamBaseClient was instantiated with an invalid URI for the server, StreamBase would throw an exception (as expected: com.streambase.sb.StreamBaseException: java.io.IOException: java.nio.channels.UnresolvedAddressException) but did not properly close the connection socket. This problem was fixed.
Resolved in 3.5.7 #25501 In prior releases, if you used the keyword null in an expression without explicitly casting it to the appropriate data type, such as int(null), StreamBase Studio did not issue a helpful typecheck message about this user error. This problem was fixed. Now the IDE will issue a typecheck error: "Expression is of type null and must be cast to be used as a field."

Note that if you want to use an expression that intentionally sets the result to null, you must use one of the data-type-specific null literals, as shown in the following list:

  • int(null)

  • double(null)

  • bool(null)

  • string(null)

  • timestamp(null)

For more information, see Using Nulls in StreamBase Applications in the Authoring Guide.

Resolved in 3.5.7 #25186 In prior releases, under certain circumstances in a Java StreamBaseClient, an exception was being thrown with a NULL message. Exception processing code was not expecting null messages. The exception processing code was fixed to deal with null messages.
Resolved in 3.5.6 #22793 In prior releases, Java custom Aggregate functions could not have String return values. This problem was fixed. To use the fix, a Java custom Aggregate function implements a method with the signature static public int getResultLength() to say the length of the result. (This problem still exists for C++ custom Aggregate functions.)
Resolved in 3.5.4 #18265 For btree disk-based Query Tables that had multiple field keys, some query expressions inappropriately scanned a large portion of the table. While the correct results were returned, with very large tables this was time consuming and could result in a "Not enough space" error message. This problem was fixed.
Resolved in 3.5.3 #13878 In prior releases, StreamBase Studio could quit unexpectedly on rare occasions, and the IDE window closed. This problem was fixed.
Resolved in 3.5.3 #15469 In prior releases, the Limit number of output rows option in a Query operator could be enabled once connected to a Query Table, but did not work properly, and the setting was not retained when you reopened the Query operator's Properties view. This problem was fixed.
Resolved in 3.5.2 #15766 In the previous release, StreamBase had an issue while connecting to Oracle 9i databases via JDBC. This problem was fixed.
Resolved in 3.5.2 #15207 Very large StreamBase applications can take a lot of memory to compile. To alleviate this problem, StreamBase provides a new compiler flag that lets you adjust the maximum amount of memory used by the compiler (default is at least 256MB).
streambase.codegen.javac-Xmx

Use this flag the same way as the java -Xmx command-line option:

Specify the maximum size, in bytes, of the memory allocation pool. This value must a multiple of 1024. Append the letter k or K to indicate kilobytes, or m or M to indicate megabytes. Examples:

-Xmx83886080
-Xmx81920k
-Xmx80m
Resolved in 3.5.2 #14741 In previous releases, if you cancelled an application that was just starting in StreamBase Studio, the sbd process sometimes continued to run in the background, and you had to stop sbd outside of the IDE. This problem was fixed.
Resolved in 3.5.2 #14439 If an application caused an evaluation exception to be thrown from a disk query table expression, a null pointer exception could also occur. This problem was fixed.
Resolved in 3.5.1 #14528 Several issues with using JDBC datasources in StreamBase have been fixed.
Resolved in 3.5.0 #11012 In previous versions, StreamBase installs on Windows overwrote the license file of a previous StreamBase installation. In some situations, this could be inconvenient. The StreamBase installation now checks for an existing license file, and moves it to C:\Documents and Settings\username\streambase-license-existing.xml.
Resolved in 3.5.0 #13874 In StreamBase 3.1.2 and earlier, a merge operator could have unexpected results if both of these conditions were true:
  • An input field was considered a constant (for example, a string coming from a simple output expression like Some String).

  • An input field of the same name existed on the other input stream to the merge and this field was not considered a constant.

If the input field in question were of string type, the StreamBase server could experience a Null Pointer Exception. If the input field were another data type, then the output value could be 0 instead of the expected null data type.

Resolved in 3.5.0 #13890 Gather with timeout sometimes emitted invalid values for fields that should have had null values.
Resolved in 3.5.0 #13948 Large schemas could cause compilation failure with the message, CompilationException: compilation errors.
Resolved in 3.5.0 #13056 Gather with timeout generated zero instead of null for an int field.
Resolved in 3.5.x #4773 In previous releases, the StreamBase Adapter for Microsoft Excel would display a value of zero for cells that had no actual data in the stream. This was changed to display "N/A".
Resolved in 3.5.x #6985 In previous releases, if an application contained an Output Stream whose schema was explicitly set, and this application was used by another application at two or more levels deep (as a grandchild and deeper), StreamBase Studio might not typecheck the top-level application and might display a typecheck error. This was fixed.
Resolved in 3.5.x #12616 Previously, the StreamBase C++ API did not support custom aggregate functions that had String return values. Now a plug-in Aggregate function can implement a method with the signature static public int getResultLength() to specify the length of the result. For example:
package com.streambase.sb.expr.test; 
  import com.streambase.sb.operator.AggregateWindow;
  /** 
  * Class that implements a custom aggregate function that 
  concatenates strings together. 
  */ 
  public class StringConcatAggregate extends AggregateWindow {
  StringBuffer buf = new StringBuffer();
  public static int getResultLength() {
    return 100;
  } 
  public void init() {
    buf.setLength(0); 
  } 
  public void accumulate(String s) {
    buf.append(s);
  } 
  public String calculate() {
    return buf.toString(); 
  }
  } 
Resolved in 3.1.15 #36580 A memory leak, discovered in version 3.1.14, was fixed.
Resolved in 3.1.13 #32592 In previous releases, if a StreamBaseClient was set up to do buffering and the background enqueue thread encountered an exception, StreamBase did not properly close the connection.
Resolved in 3.1.11 #27507 In previous releases, an OutOfMemory error could occur in High Availability (HA) environments on the secondary machine, during a failover attempt. This HA issue was fixed.
Resolved in 3.1.7 #19326 A memory leak, discovered in version 3.1.6, was fixed.
Resolved in 3.1.7 #17433 In previous versions, setting STREAMBASE_LOG_LEVEL to 2 could cause the StreamBase Server to fail with a a segmentation fault.
Resolved in 3.1.5 #15107 In previous versions, the StreamBase EMS/JMS adapter allowed multiple threads to dequeue messages. Under some conditions the same message was sent more than once, while another message was omitted. The EMS/JMS adapter now does not dequeue messages on multiple threads, so this problem does not occur.
Resolved in 3.1.5 #14875 In previous versions, an application would not typecheck if it contained multiple operators that were marked to run in their own threads, and having exactly the same schema. The problem was fixed in this release.
Resolved in 3.1.5 #14650 In Version 3.1.4, some extremely large applications could encounter a "code too large" error during typecheck, due to having a large number of streams, each with a large number of fields. This problem was improved, so that the number of fields in a stream no longer matters.
Resolved in 3.1.5 #10687 In previous versions, the strptime function supported only numeric specifiers for month name fields. The strptime function now supports the UNIX %b , %h, and %B letter codes for months, as in the following expression examples:
{"strptime('2006-Feb-10 11:01:03', '%Y-%b-%d %H:%M:%S')", SOME_TIMESTAMP}
{"strptime('2006-fEB-10 11:01:03', '%Y-%B-%d %H:%M:%S')", SOME_TIMESTAMP}

Note that month letter codes are limited to three characters: long month names like February are not supported.

Resolved in 3.1.4 #14536 In Version 3.1.3, errors were displayed when StreamBase Studio shut down if a disk-based Query Table had an open cursor. The error caused no data loss. Now StreamBase ensures that all tables are closed prior to shutdown.
Resolved in 3.1.4 #11473 In StreamBase 3.1.3 and earlier, the Reuters RFA adapter rejected attempts to publish status messages in response to new subscription requests. For example, if a client subscribed to an item, and the item was inactive or could not be served by this publisher, the adapter rejected the publish request instead of publishing the closed status for the item. The problem was corrected.
Resolved in 3.1.4 #11472 In StreamBase 3.1.3 and earlier, the Reuters RFA adapter failed to include the RTL field in the Marketfeed header. Although this field is optional, the US tag is required. This problem was corrected. In addition, the value sent in the FIELD_LIST_NO Marketfeed header is now configurable in the RFA configuration file, and defaults to an empty string.
Resolved in 3.1.4 #11469 In StreamBase 3.1.3 and earlier, the Reuters SFC adapter did not include a mechanism to convey the active state of an item to the StreamBase application. As a result, an application could not easily detect if a subscription failed. To correct the problem, a new optional field was added to the fat and meta tuple handlers to convey an item's active state. The new field follows the same model as the optional stale field. Note that when an item becomes inactive, the adapter performs an implicit unsubscribe on the item
Resolved in 3.1.3 #13811 String constants, such as stream names or strings in expressions, are stored as static final variables. The Java class file format cannot have more than 64Kbytes of static data in any class file. Extremely large applications prior to StreamBase release 3.1.3 could exceed this limitation. This would cause studio to be unable to run the application due to compilation errors. Running from sbd would cause a code too large compilation error.
3.1.3 #13160 In StreamBase 3.1.2 and earlier, client applications that used the StreamBase .NET Client library would incur an unhandled exception of type Codemesh.JuggerNET.JuggerNETFrameworkException when run from Visual Studio if Studio was configured to break into the debugger on unhandled Common Language Runtime Exceptions.
3.1.3 #13052 In StreamBase 3.1.2 and earlier, a gather operator can result in a Null Pointer Exception on the StreamBase server if all of the following conditions are true:
  • The gather has timeouts enabled

  • An input field that is of "string" type and is considered a constant (i.e. coming from a simple output expression like Some String)

  • An input field of the same name exists on another input stream to the gather and this field is not considered a constant

3.1.1 #11763 In StreamBase 3.1.0 and earlier, StreamBase Studio calls a Java operator's init() method when the operator is dragged to the canvas. This call was removed. init() is now called only when the StreamBase application is started.
3.1.0 #10272 Some operators (including Join and Query) sometimes gave Null Pointer Exceptions at typecheck time when storing string fields of length zero. String fields of length zero can be created by taking the type of the expression string(null), for example.
3.0.2 #10272 Some operators (including Join and Query) sometimes gave Null Pointer Exceptions at typecheck time when storing string fields of length zero. String fields of length zero can be created by taking the type of the expression string(null), for example.
3.0.2 #10598 In StreamBase 3.0.1, a multi-row read Query operator using a disk-based query table, followed by a Delete or Update operator using that same disk-based query table, would cause a deadlock and stop processing of tuples. This issue is resolved in 3.0.2. Memory-based query tables were never affected.
3.0.2 #10599 In previous releases, StreamBase did not check the length of string fields for disk-based query table operations. As a result, runtime failures occurred. The problem was fixed. Memory-based query tables were never affected.
3.0.2 #10555 In Version 3.0, StreamBase failed to add directories in the LD_LIBRARY_PATH environment variable (on Linux/Solaris) or the PATH environment variable (on Windows) to the Java VM's native library search path. This could cause the JVM to fail to native libraries included in Custom Java operators or functions. The problem was fixed.
3.0.1 #10024 In previous releases, disk-based query tables were fully functional but did not exhibit Atomicity, Consistency, Isolation, or Durability (ACID) properties. The problem was resolved in this release.
3.0.1 #10055 Previously, secondary keys could not be used in disk-based query tables whose properties were configured with the Truncate on startup option set to No. This problem was resolved.
3.0.1 #9580 Previously, in rare circumstances in HA mode, the C++ Client library would crash when the application was terminating. This happened only during application termination, so all data was sent or received correctly. The problem was fixed.
N/A starting in 3.0.0 #779, #992, #1588, #4506 Previously published release notes about the ODBC operator and ODBC Tables data construct are no longer applicable. The ODBC support was removed from the product. Instead we recommend that you use the StreamBase Adapter for JDBC to access external, JDBC-compliant resources. The StreamBase Adapter for JDBC is documented in an HTML file installed with the separate kit. By default the jdbc.html file is installed in:
  • Windows:

    C:\Program Files\StreamBase Systems\StreamBase\doc\adapter

  • Linux:

    /opt/streambase/doc/adapter

3.0.0 #3890 In an Aggregate operator with time-based dimensions, timeouts will now trigger based on wall clock time rather than the (now removed) tuple header timestamp. This means that tuples will be emitted after the appropriate time has passed, triggered by the arrival of a new tuple. Additionally, there is no longer a concern with out-of-order header timestamps in applications unioning multiple input streams.
3.0.0 #7107 In High Availability environments, aggregate operations sometimes erroneously evaluated timestamps to be out of order, causing tuples to be dropped. The problem was fixed.
3.0.0 #3991 In previous releases, large query table reads could cause StreamBase Server to abort. If a read operation on a large query table (either memory- or disk-based) returned a large number of records at once, the StreamBase Server could run out of memory and abort. The problem was fixed.
3.0.0 #4073 Previously, the StreamBase sbfeedsim utility did not support enumerations for timestamp fields. The problem was fixed.
3.0.0 #5456 A Java operator must implement the Parameterizable interface, either directly or through a delegate. Previously, a confusing error message was displayed if a Java operator did not implement the Parameterizable interface. The problem was fixed.
3.0.0 #6573 Previously, deleting a secondary index in Studio deleted Query operator expressions. The problem was fixed.
3.0.0 #6851 Previously, if an sbd ran on a machine with a 2.6.x Linux kernel, any sbmonitor run against that sbd displayed the same CPU utilization for all threads. The problem was fixed.
3.0.0 #7001 Previously on Windows using Java 1.5.0, running StreamBase applications containing Java operators that were assigned to regions, could cause sbd to abort with a Non-std::exception error message. The problem was fixed.
3.0.0 #7104 When you create Java clients with the StreamBase API, you can use the sbclient.jar instead of the sbclient-all.jar. Previously, both were provided with the StreamBase kit for. Now only the sbclient.jar is included.
3.0.0 #7197 Previously, if you used custom Java operators, and the jars that you imported into your project contained incompatible class definitions, then the StreamBase Server sometimes exited without displaying any useful diagnostic information. Now a NoSuchMethodException message is displayed.