Before you install StreamBase:
-
Read this Release Notes document, paying special attention to the Issues and Cautions section.
-
Confirm that your target system matches the hardware and software requirements discussed on Supported Configurations.
-
Read the Installation Guide.
-
For a summary of what's new in this release, see New and Noteworthy.
-
If you have used a StreamBase 3.7 release, see the important information in Migrating StreamBase Releases.
-
If you are new to StreamBase, read Getting Started after installation.
See the documentation home page to begin exploring the StreamBase documentation.
If you are reading this document in printed form, note that the online version of the StreamBase documentation is available in several ways:
-
On the installation CD, open
doc/index.htmlin a browser. -
From the installed file system, open the documentation home page in a browser. The default locations are:
UNIX /opt/streambase/doc/index.html Windows C:\Program Files\StreamBase Systems\StreamBase
.n.m\doc\index.html -
In StreamBase Studio, select → from the top menu.
-
On Windows, open → → → →
-
On UNIX at a terminal window's command prompt, run
sbhelp &.
Take note of the following issues in the current StreamBase release.
For any 6.x release, if you have installed any preview release of StreamBase Studio on your computer, you must reset your perspectives in both StreamBase Studio and StreamBase Manager to pick up the changes in the final release.
In both StreamBase Studio and StreamBase Manager, invoke → . For StreamBase Studio, do this in both SB Authoring and SB Test/Debug perspectives.
Releases of StreamBase Studio starting with 5.0 use a new Eclipse workspace format that is incompatible with the workspace from previous releases. When Studio 5.0 or later is first started and it prompts for the location of its workspace, use the default location or specify a new, empty directory. Do NOT specify the location of a StreamBase Studio 3.x workspace. Studio 5.0 or later issues a warning dialog if it detects an older format workspace.
Contact Information contains information about available support options. You can send us e-mail or get information from your StreamBase Systems representative about our support portal.
| 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 API, the methods Schema.Field.hashCode() and Schema.Field.equqls() 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 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-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. |
For the list of issues resolved in previous releases, see:
This section describes known limitations in the current release of StreamBase. Each item includes a tracking number, description, and whenever possible, one or more workarounds.
| SB-12071 | Problem with two .NET client API methods if data type of Field is tuple. | |
| Description |
The following methods in the .NET client API produce incorrect results for
Field objects whose type is DataType.TUPLE: |
|
| Workaround |
None. |
|
| SB-11685 | No typecheck error for strings of different sizes when using strict setting on the Union operator. | |
| Description |
If you use the Strict setting for the union operator and strings are not of the same size in the input streams, StreamBase fails to generate a typecheck error. Instead the output uses the size of the larger string. |
|
| Workaround |
Avoid specifying strings of different lengths if you use the union operator and strict settings. |
|
| SB-11576 | Duplicate dialog boxes in EventFlow after deleting a project | |
| Description |
If you open a project, open an application in the project, delete the project, and then click the application in the EventFlow editor, StreamBase Studio generates duplicate File Deleted dialog boxes. |
|
| Workaround |
Click the same button in both boxes. |
|
| SB-11465 | Error message for specific IP address, HTTP and IRC adapters | |
| Description |
When configuring an HTTP or IRC Reader adapter to listen on a specific
network interface, the application may fail typechecking with a java.lang.UnsatisfiedLinkError.
|
|
| Workaround | Leave the Network Interface IP address field blank to listen on all adapters. | |
| SB-11454 | Typechecking may fail for some applications that use dynamic variables. | |
| Description |
Some applications that use dynamic variables may generate the following typecheck error: The dynamic variable
|
|
| Workaround |
Change the dynamic variable to reference an output stream rather than an input stream. You can create an equivalent output stream by connecting the input stream to a Map operator (passing all fields unchanged), then to a new output stream. Use the newly created output stream to update your dynamic variable. |
|
| SB-11424 | sbmonitor: queue information view blocks help screens | |
| Description | When sbmonitor is running, press L to toggle to the queue information view. While in that view, the ? and H keys should show the help screens, but do not. | |
| Workaround | Press the L key to toggle back to the thread information view, where the ? and H keys work as expected. | |
| SB-11392 |
StreamBase Server fails to start with any jvm-args paths containing spaces.
|
|
| Description |
StreamBase Server fails to start due to incorrectly parsed JVM
arguments if the jvm-args parameter in
the java-vm section of the configuration
file contains any JVM path setting that contains spaces. It does not matter
whether the setting is explicit or specified by means of an environment
variable.
|
|
| Workarounds | 1. Change the installed locations of the paths in question to a location without spaces in the pathname. 2. On Windows, you can use the 8.3 version of any space-containing path component to form a full path without spaces. Use the DIR /X command to determine the 8.3 versions of path components. | |
| SB-11387 | Visual debugger slows application execution | |
| Description | Running an application while it is being debugged by the StreamBase visual debugger incurs a performance cost in terms of the peak message rate that the application can handle. For this reason, do not enable the debugger for production. Also, be aware of the possible changes in speed when enqueuing large amounts of data to an application being debugged. | |
| Workaround | None. | |
| SB-11279 | JDBC Operator, no blob inserts with DB2 and batching | |
| Description | Due to DB2 driver issues, the JDBC Operator cannot insert blob fields when batching is on. This issue is specific to DB2 and does not affect other supported databases. | |
| Workaround | None. | |
| SB-11152 | Error message shows on wrong Properties view tab for the Aggregate operator. | |
| Description | 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. | |
| Workaround | None. | |
| SB-11130 | Focus in the Debug view is sometimes lost while stepping through debugging. | |
| Description | Focus in the Debug view can be intermittently lost while stepping through an application at high speed, such as when frequently pressing the F6 button. | |
| Workaround | If the focus becomes lost in the Debug view during execution stepping, you can reselect any operator in the execution stack of the Debug View and continue stepping. | |
| SB-11087 | Show in Help links no longer jump to the documentation for the exact function. | |
| Description | In previous releases, when you clicked the Show in Help link in the Properties view's Functions pane, a Studio Help window opened to the section describing the current function in the Expression Language page. In release 6.0, the same click takes you to the top of the Expression Language page. | |
| Workaround | Use the link in the blue box at the top of the page to jump to the Alphabetical List of StreamBase Functions, then link directly to the function of interest. | |
| SB-10983 | Reuters RFA Publishing Adapter not shipped for Linux | |
| Description | Because of a change in C++ libraries, the Reuters RFA Publishing external adapter is not shipped for Linux in StreamBase 6.0.x. | |
| Workaround | Use the new Reuters RMDS Publishing embedded adapter. | |
| SB-10971 | CSV Reader sample application must be reloaded. | |
| Description | The CSV Reader sample application from previous releases no longer passes typechecking in release 6.x. | |
| Workaround | Reload the CSV Reader sample shipped with release 6.x. | |
| SB-10876 | Hierarchical data and the tuple data type are not supported universally throughout StreamBase. | |
| Description | Hierarchical data, nested schemas, and the tuple data type are not yet supported when using feed simulations, recordings of StreamBase applications, or with the new Unit Test feature in StreamBase Studio. | |
| Workaround | None. | |
| SB-10792 | The query operator converts a JDBC data type differently when using explicit schemas than when using database data types. | |
| Description |
When explicit schemas are used, the query operator does not use database
metadata to determine the mapping between JDBC data types and
StreamBase data types. The JDBC data type Types.TIME is normally converted to an interval timestamp
since it has a time, but no date component. But when explicit schemas are
used, there is no database type information, so Types.TIME is converted to an absolute timestamp.
|
|
| Workaround | None. | |
| SB-10697 | .NET cache files remain after uninstalling. | |
| Description |
After uninstalling StreamBase on Windows, the .NET libraries are
left behind in C:\Windows\assembly. There are
no ill effects of these files, other than taking up disk space.
|
|
| Workaround |
To reclaim the disk space, remove the files manually. Navigate to
C:\Windows\assembly in Windows Explorer and
remove the assembly named sbclient. Removing
the assembly removes all files associated with the assembly.
|
|
| SB-10486 (1) | On-disk format for query tables changes in 6.x. | |
| Description | The on-disk format for disk-based query tables changed in 6.0 as a result of adding support for hierarchical data and upgrading the underlying disk database library. | |
| Workaround | If you have query tables in existing applications, you must convert them to the new format by dumping to a CSV file in your current StreamBase release and reloading into the new StreamBase release. | |
| SB-10486 (2) | Hierarchical data restrictions | |
| Description | Patterns by value do not support using nested data for their on value portion. Similarly, nested data cannot be used as the index or primary key of a query table. | |
| Workaround | Design schemas so that the intended sort field or key is a top-level numeric or timestamp field, as described in StreamBase Pattern Matching Language. | |
| SB-10468 | Some SQL queries can fail after reconnecting to the database server. | |
| Description | When using the JDBC operator and a JDBC data source, be aware that some SQL queries and operations that succeed after first connecting to the database server can fail after reconnecting following an error. In StreamBase releases before 5.0, StreamBase Server shut down when an error occurred. Starting with 5.0, the server does not shut down on error by default, but the connection between the JDBC operator and the database server is closed when a SQL error is thrown. The issue is that both the database server and StreamBase Server can continue to throw errors while the connection is closed, for as long as the connection is closed. Reconnection attempts encounter these as new error conditions, which can cause new queries to fail. | |
| Workaround |
Restore the connection by setting the <param name="jdbc-reconnect-regexp" value=".*" /> |
|
| SB-10363 | No StreamBase data type corresponding to Sybase timestamp. | |
| Description |
When used with Sybase data sources, StreamSQL fails to convert timestamps,
resulting in typecheck errors. This is because the Sybase timestamp is based on the
Sybase varbinary
data type.
|
|
| Workaround |
In StreamSQL code that will be used for Sybase data sources, use the
Sybase datetime data type instead of timestamp.
|
|
| SB-10298 | Hierarchical schemas defined in StreamSQL cannot be re-used in StreamBase Studio. | |
| Description | StreamBase does not provide a way to share a hierarchical schema between StreamSQL and EventFlow application types. | |
| Workaround | Use the Named Schemas and Saved Schemas features of Studio | |
| #73006, SB-7550 | Limit on Feed Simulation Editor fields. | |
| Description | Very large feed simulations with more than about 160 fields can crash StreamBase Studio when you click the Customize Fields button. | |
| Workaround | Limit the size of feed simulations or break large simulations into two pieces. | |
| #69299, SB-7446 |
Starting a StreamBase application fails with a Not enough space error.
|
|
| Description | On small systems, StreamBase may run out of virtual memory during the pre-compilation phase. This is reported as a CompilationException: I/O exception: Not enough space error message from StreamBase Server. | |
| Workaround | Increase the size of your system's paging file. | |
| #65757, SB-7363 | Failure-to-load message from the Wombat adapter is found in the Error Log view on Studio startup. | |
| Description | This error message is a known consequence of loading the Wombat adapter without also configuring the Wombat MAMA middleware to be visible to StreamBase. | |
| Workaround | Follow the instructions in Wombat MAMA Input Adapter in the Adapters Guide to eliminate this error message. | |
| #58027, SB-7170 | Module reference sometimes fails to typecheck. | |
| Description |
StreamBase Studio may report a typecheck error on a module
reference, with a message similar to:
Duplicate stream When this message appears, StreamBase Studio refuses to typecheck the module reference and may prevent you from continuing to develop operators downstream, even if the application has no other errors and is runnable by either StreamBase Server or StreamBase Studio. |
|
| Workaround | StreamBase is investigating this limitation. For now, you might be able to work around the problem by restructuring the flow of your application, moving the location of the module reference in the graph. | |
| #56829, SB-7148 | Invalid byte error when opening EventFlow application. | |
| Description |
Studio sometimes fails to open an EventFlow application with this error:
org.xml.sax.SAXParseException: Invalid byte 1 of 1-byte UTF-8 sequence |
|
| Workaround |
Perform the following steps to recover:
|
|
| #55871, SB-7125 | Group labels can appear truncated. | |
| Description | Group labels longer than 12 characters are truncated and elided if the group is open, and truncated if longer than 5 characters if the group is closed. | |
| Workaround | Pad the end of the group label with space characters to prevent truncation. | |
| #52959, SB-7075 | Changing perspectives can rearrange the Studio toolbar. | |
| Description | The position of toolbar sections can change when you go from perspective to perspective, especially when going from the Authoring to the Demo perspective and back. | |
| Workaround | Eclipse toolbars do not have fixed locations, so this is expected behavior. | |
| #49739, SB-6984 | Actions unavailable when all folders are selected | |
| Description | After you collapse a Group in the EventFlow editor, selects all the items in the group. However, actions performed on the group do not succeed. For example, does not delete the items inside a group. | |
| Workaround | Uncollapse the group before performing the action | |
| #48285, SB-6862 | Not all databases have native blob support. | |
| Description | For example, Microsoft SQL Server and Sybase do not have blob support. For these databases, you can write blobs into varbinary and possibly other types. But when blobs are read from a select statement, they are returned as strings, not blobs. | |
| Workaround | Add a map operator and convert the string to a blob. | |
| #36261, SB-6838 | Studio 3.x workspaces not compatible with Studio 5.x | |
| Description | StreamBase Studio 5.0 introduced a new workspace format that is incompatible with the workspaces from previous releases. Studio 5.0 detects an attempt to use a previous version's workspace and prevents you from proceeding. | |
| Workaround | Start Studio 5.0 with a new, empty workspace. Then use File Import StreamBase Projects from StreamBase Studio 3.x. See Migrating Studio 3.x Projects. | |
| #35859, SB-6356 | Large apps cannot be debugged in StreamBase Studio | |
| Description | When running an application in debug mode in StreamBase Studio that contains many operators (in the range of hundreds, including all modules), it is possible to cause Studio to display and log an error message about running out of handles. The error message may vary, but the symptom is that Studio is unable to display all the intermediate streams in the Application Output View or the Manual Input View. | |
| Workaround |
Limit the number of output streams the application will expose when running
in debug mode, by setting the sbd's JVM property to include the following:
For example, setting the JVM arguments to include:
allows any intermediate stream that contains the pattern of a |
|
| #35743, SB-6346 | Custom function C++ code typechecking is delayed until the application is generated | |
| Description | Most portions of a StreamBase application are typechecked in real time as you add features to an EventFlow or StreamSQL application. However, starting with release 5.0, typechecking for a custom function written in C++ is delayed until the application is generated and run. | |
| Workaround | None. Be aware that typechecking errors may not be reported as usual when using custom C++ functions. | |
| #35429, SB-6327 | sbd cannot run applications that generate class files with too long a name. | |
| Description | If you use modules, StreamBase can generate internal class names that are too long for the native filesystem (for example, 257 characters on Windows), causing problems running the StreamBase Server (sbd). | |
| Workaround | To avoid this problem, use small module reference names and minimize module nesting as much as possible. | |
| #33330, SB-6241 | When an application is running in StreamBase Studio on Windows, the Manual Input view and other views can lose details. | |
| Description | This is a known Eclipse bug. The problem occurs when you use the tab key. Borders around fields, other decorations, and some controls can disappear. | |
| Workaround | Minimize and then maximize the window, or resize the affected view. | |
| #27349, SB-5894 | Evaluation exceptions in Data Parallelism key and Subscribe predicate should not be handled by upstream operator | |
| Description |
If an evaluation exception occurs for a Data Parallelism key, or in a
filtered subscribe predicate, the exception is thrown and caught by the
upstream operator, and reported as an error in the upstream operator.
One incorrect side effect is that if one predicate in filtered subscribe fails, then predicates that come after it in the list are not executed and tuples are not delivered. Similarly, if other operators are downstream and only one is set for data parallelism, the other operators may not see tuples. Which operators see tuples is effectively non-deterministic. |
|
| Workaround |
Either ensure that you do not have errors in the expressions, or use
catchexception() as a wrapper.
|
|
| #27060, SB-5882 | Tuple dimensions do not reset counter when another dimension closes a window early | |
| Description | A tuple-based dimension that closes due to other dimensions (for example, after another dimension times out) does not reset its counter. When this happens, the next window will close based on the total number of tuples received, resulting in a partially full dimension. | |
| Workaround | None. | |
| #26888, SB-5848 | Issue with Parameterized Modules and Custom Java Operators or Embedded Adapters | |
| Description | In EventFlows, you cannot enter references to parameterized modules in custom Java operators or embedded adapters. This is due to a GUI limitation, currently under investigation, that prevents you from entering the required values. | |
| Workaround |
Embed your custom Java operator or custom embedded adapter in a
StreamSQL-defined module (see the APPLY MODULE
statement in the StreamSQL
Guide), and use an EventFlow module reference, through which you
optionally share parameter values.
|
|
| #26477, SB-5779 | SBAPP-to-SSQL Conversion Assistant Resets Module Parameters to Default Values | |
| Description | If you run the SBAPP-to-SSQL Conversion Assistant on an EventFlow application that makes use of module parameter references, the resulting StreamSQL application does not have any module parameter references. They are replaced by their default values. | |
| Workaround | After the conversion, edit the StreamSQL file to add the non-default module parameter values. | |
| #26255, SB-5749 | Feed Simulation Editor's Data Rate Edit and Save Issue on Linux | |
| Description | In StreamBase Studio, the Feed Simulation Editor lets you set the rate (number of tuples per second) at which data will be generated for a stream. On Linux only, if you use the keyboard to enter an integer in the Data Rate textbox, the new value might not be saved. | |
| Workaround | After clicking into the text box and entering the value, press Enter or change the cursor's focus (for example, press Tab). Then press the Save icon or enter Ctrl+S. Note that if you press Ctrl+S while your cursor is within the Data Rate text box, the new value is not saved. You must press Ctrl+S again. | |
| #25228, SB-5628 | Include Package with Custom Java Functions | |
| Description | If you use a custom Java function (simple or aggregate) with no package, javac returns a compile error. | |
| Workaround | Put the function in a package. | |
| #25009, SB-5602, #25004, SB-5599 | Embedded Adapters and StreamSQL | |
| Description |
In StreamSQL applications, you cannot specify that an embedded adapter should
start in a paused state, and you cannot manage
the state of a running adapter in a StreamSQL application (although you can
with EventFlow applications).
|
|
| Workaround | Use an EventFlow application with embedded adapters. | |
| #15898, SB-5078 | C++ Custom Aggregate functions cannot return a string | |
| Description |
Custom aggregate functions that are implemented in C++ cannot return a
string.
|
|
| Workaround | Create the custom aggregate in Java. | |
| #14807, SB-4951 | Problem running large applications in debug mode | |
| Description |
Very large applications that run in standard mode may not start in debug
mode, with errors such as code too large.
|
|
| Workaround | Organize the application into smaller modules. | |
| #14763, SB-4937 | Problem when tuple in top-level module consumes large amounts of CPU time | |
| Description | If the processing of a single tuple in the top-level module consumes a large amount of CPU time, contained parallel modules that are connected directly to output streams will see their output blocked until the tuple/operator releases the CPU and the tuples can be passed to the network. | |
| Workaround | Put the time-consuming computation into its own parallel module. This workaround may not solve the issue in all cases, because inter-module queues can grow very large, but may help in many cases. | |
| #14745, SB-4931 | SBAPP-to-SSQL Conversion Assistant Does Not Support Parallel Operators | |
| Description | If your EventFlow application file has individual operators that are marked for parallel operation, the SBAPP-to-SSQL Conversion Assistant cannot generate equivalent functionality in the generated StreamSQL application because there is no direct analogy for parallel operators in StreamSQL. | |
| Workaround |
After the conversion, if appropriate for your application (no dependencies on
data in other operations), you can use an APPLY
PARALLEL MODULE statement or APPLY PARALLEL
JDBC statement in the StreamSQL file. For details on the APPLY statement, see the StreamSQL Guide.
|
|
| #14238, SB-4868 | Memory problem with external JDBC data source queries | |
| Description | StreamBase Server can fail with an OutOfMemoryError exception while running an application with a JDBC query that generates a large result set using MySQL. | |
| Workaround |
Note: Make sure you are running
MySQL Version 5 or greater. StreamBase access to JDBC data sources does not
support earlier versions of MySQL.
If you experience the problem described, consider limiting the number of
rows that MySQL can read at one time. You can do this by enabling the new
|
|
| #14207, SB-4854 | Typecheck problem with DB2 JDBC datasources | |
| Description |
SQL INSERT statements submitted to a JDBC data source in a Query operator or
in an APPLY JDBC statement may pass typechecking even when they contain
errors. This problem was detected only with an IBM DB2 data source.
For example, the following statement passes typechecking even if the named table or fields do not exist in the JDBC data source:
APPLY JDBC DB2 "INSERT INTO mytable (id, name) VALUES({id},
{name})" FROM InStream INTO OutStream;
|
|
| Workaround | Run the StreamBase application. If an error occurs against an INSERT statement, verify that the table name is correct. You can validate the INSERT statement by running it against a test database. | |
| SB-4625 | Spurious typecheck error when saving changes to a data construct associated with an operator | |
| Description | In some circumstances StreamBase Studio generates a typecheck error with a message to remove a row that you cannot remove because the row is not displayed in the Properties view. This can occur when you have edited a data construct associated with an operator and then attempt to save the changes. | |
| Workaround | You can work around the typecheck error by forcing StreamBase Studio to reread your changes. For instance, cut and paste an existing row, or change one character and change it back. | |
| #13017, SB-4559 | Join timeout is not asynchronous | |
| Description | Join timeout in the Join operator is not asynchronous. That is, the Join operator does not remove a tuple from its buffer until the timeout has passed and another tuple arrives on the same input stream. Tuples received on one input stream do not affect the buffer of the other input stream. | |
| Workaround | None. | |
| #10674, SB-4225 | Some disk drive configurations can corrupt disk-based query tables. | |
| Description | Some caching disk drives do not guarantee the sequencing of disk writes, nor do they guarantee that all the writes to the drive have actually happened. This behavior improves disk performance, but at the risk of data corruption in the event of a power outage or equipment failure. StreamBase is vulnerable to this kind of data corruption if your StreamBase application uses disk-based query tables. | |
| Workaround | Disk drives with this behavior usually have a driver-level setting to turn this capability on or off. For example, the driver may present you with a checkbox labeled Enable write caching on the disk. Unchecking this box would prevent the problem from occurring. | |
| #10291, SB-4160 | JVM crash during StreamBase Application compilation | |
| Description | When StreamBase Server first loads an application, it compiles it to Java code using the Sun Java compiler. Some StreamBase applications can cause the Sun Java compiler to crash during this phase. If this happens, StreamBase Server displays a stack trace that mentions OopFlow::build_oop_map. StreamBase is pursuing this issue with Sun, but in the meantime if you encounter this issue, contact StreamBase Systems for assistance in modifying your application to avoid the error. | |
| Workaround | Make slight changes to your application until the error no longer occurs. We are unfortunately unable to provide guidance about what specific changes to make. | |
| #9620, SB-3955 | Finding sbd process failure details | |
| Description |
When StreamBase Studio runs an application, it launches the server process
(sbd) in the background. If sbd fails for any reason, Studio tries to report the reason
to you. However, the actual message that StreamBase Studio displays may not
contain enough information,depending on the failure.
|
|
| Workaround |
To get more information about the reason for the sbd process failure, open the Eclipse error log as described
in Error Log View in the StreamBase Studio Reference.
|
|
| #8174, SB-3585 | Inconsistent support for undo in StreamBase Studio | |
| Description | Many editing operations in Studio cannot be undone. This includes operations such as renaming operators, editing query tables, copying schemas, adding operators from the palette, editing feed simulations, and so on. | |
| Workaround | The Revert command in the File menu can be used to undo all changes since the last time a file was saved. | |
| #7361, SB-3308, #2585, SB-1601 | From Windows, custom-simple-function and custom-aggregate-function samples do not work with Solaris server or 64-bit Linux server | |
| Description |
On Windows, the installed custom-simple-function and custom-aggregate-function samples contain library files
(log.so and stdev.so, respectively) that are built for Linux. These custom
functions will work properly only when StreamBase Studio is
connected to a 32-bit Linux server, not a Solaris server, or a 64-bit Linux
server.
|
|
| Workaround |
To use the custom-simple-function and
custom-aggregate-function samples with a
Solaris server:
|
|
| #7346, SB-3301 | Heartbeat and Metronome do not respect pause in the debugger | |
| Description | The pause command in the debugger will not prevent Heartbeat and Metronome operators from outputting tuples due to the passage of time. This could cause unexpected results when debugging applications that make use of these operators. | |
| Workaround | None. For more information about these operators see the Heartbeat Operator and Metronome Operator documentation. | |
| #7191, SB-3260 | Using non-member Schema.Field to access a Tuple Does Not Throw Useful Exception | |
| Description |
The StreamBase client API does not throw a useful exception if you
inadvertently reference the wrong Schema while using Schema.Field to access a Tuple. Under
C++, no exception is thrown and memory corruption may occur. Under Java, an
ArrayIndexOutOfBoundException is thrown.
This applies both to using fields from other schemas, or to using the Field objects that were used to create the Schema. Fields that are used to create a schema are not fully initialized, and so you must get the actual Field from the new Schema object in order to access the fields of a Tuple. |
|
| Workaround | None via the API; you must examine your client code and verify that the correct Schema is referenced. | |
| #6860, SB-8698 | Aggregate dimensions do not support advance on infinite dimensions | |
| Description |
In an Aggregate operator's Properties View, the Dimensions tab includes a
setting for Window Size. One of the size options is Do
not close window based on this dimension. If selected, this dimension
cannot cause the closing of a new window for the Aggregate. If a new window
is never opened, this creates an infinite sized window that never closes (for
the life of the StreamBase Server). Application designers may set up this
feature, for example, to ensure that an Aggregate processes an entire day's
volume of streaming data. However, a limitation is that Aggregates with
infinite dimensions do not support an Advance value that you set in the
Opening Policy.
|
|
| Workaround | None. | |
| #6539, SB-3121 | Mozilla issue with StreamBase Studio Welcome page and Help | |
| Description | On Linux, the StreamBase Studio Welcome page and Help require that Mozilla or Firefox is installed and can be located. If you removed Mozilla, or installed it in a non-standard location, or moved it, the Welcome page or Help may not appear. | |
| Workaround |
Before using StreamBase Studio, set the environment variable MOZILLA_FIVE_HOME to the path of your Mozilla installation.
For example, on Linux, set it to:
MOZILLA_FIVE_HOME=/usr/lib/mozilla-1.7.3 export MOZILLA_FIVE_HOME |
|
| #5400, SB-8640 | Java Operator with zero inputs does nothing | |
| Description |
While it is not an error to create a Java Operator with zero input ports, the
processTuple method will never be called, thus
the Java Operator can never emit any tuples.
|
|
| Workaround | None. | |
| #5389, SB-2931 |
Relocatable RPMs install incorrect symlinks in /usr
|
|
| Description |
The Linux RPM packages are relocatable. This means that the default
installation location of /opt/streambase can be
changed to a different location. However, if this is done, symbolic links are
still installed in /usr/bin and /usr/lib that point to /opt/streambase.
|
|
| Workaround | Either edit the symbolic link by hand, or use the tar file instead of the RPMs to install StreamBase on Linux. | |
| #5327, SB-2891 | Error messages while creating Java operators lack detail | |
| Description | Any exceptions during the creation of a Java operator from within StreamBase Studio will result in a "Can't make new object: (operator name)" message, with no additional information. | |
| Workaround | Run the application in sbd directly for additional diagnostic information. Verify the correct JAR files are specified in your project's Custom Libraries. Verify the classes are in the JAR files. Verify that the manifests of the JAR files are correct. For more information, see Creating Java Clients. The error log may have additional diagnostics. | |
| #4824, SB-2617 | For Java operators and modules, typechecking may occur regardless of connections | |
| Description |
Java operators and modules are typechecked independently of their connections
to other components. For modules, this may result in errors that do not
clearly describe the problem. For example, if you have an application
containing a module with its inputs connected, then delete an input stream
that the module references, and then return to the referencing application,
the arc (connection) will be dropped. However the following typecheck message
will appear: "Error in referenced application:
<input> lacks required attribute 'stream'".
|
|
| Workaround | None. | |
| #4451, SB-2507 | Java API IOException when client program is suspended | |
| Description |
A program using the StreamBase Java API may receive an unexpected IOException
if it is suspended (using either Ctrl-Z,
or kill -SIGSTOP). The IOException will be thrown
when the program is resumed, or placed in the background. The exception may
be thrown even if there is no network traffic at the time. This issue does
not apply to Windows systems.
|
|
| Workaround | Do not suspend StreamBase clients written in Java. | |
| #4289, SB-2482 | Data sent to multiple streams may get out of order | |
| Description | StreamBase Server does not preserve the relative ordering of input tuples received on different input streams. This affects tools such as sbfeedsim, which replays recorded data. It also affects the client API, if tuples are enqueued to different streams. | |
| Workaround | In some cases you may be able to use a Merge operator to reorder your input data. However, note that the Merge operator can block in some situations and therefore may not be appropriate. In general, it is best to avoid sending data to different input streams in the first place, if the relative order of tuples on those streams must be preserved. | |
| #3236, SB-1969 | StreamBase Studio on Windows triggers Windows firewall when running Server | |
| Description | Users of the StreamBase Studio on Windows may find that the Windows Firewall, or a third-party firewall product, prompts for permission to continue when first starting StreamBase Server. The message may refer to javaw or to the StreamBase Server by name. This is expected behavior of Windows firewalls. You must grant the requested permission in order to continue using StreamBase Server on this machine. | |
| Workaround | After granting permission once, you should not be prompted about this again. | |
| #2811, SB-1769 |
LockDirectoryException error encountered when
starting StreamBase Server
|
|
| Description |
There may be a number of cases when you would encounter the
LockDirectoryException error. If the message indicates File exists," either another instance of StreamBase Server
(sbd) is currently running or
the prior instance of StreamBase Server was improperly shut down.
|
|
| Workaround |
If another StreamBase Server (sbd) is running, change the .sbconf file to point the datadir element (within the <server> ... </server> element) to a different
directory. If there is no other StreamBase Server running, you must manually
delete the directory named in the File exists
message.
|
|
| #2414, SB-8297 | Files edited outside StreamBase Studio are not refreshed in Studio automatically. | |
| Description | For .sbapp and .sbfs files that were created using StreamBase Studio and are still open in StreamBase Studio, modifications made using an external editor are not refreshed in the current StreamBase Studio Editor session. | |
| Workaround | If edits are made outside of StreamBase Studio and you now want to use the latest file, right-click the project that contains the changes you made and select Refresh. | |
