Resolved Issues

The following tables list resolved issues for each Live Datamart release.

Fixed in Live Datamart 2.1.2

TIBCO Live Datamart 2.1.2 is a maintenance release with updates and enhancements as described in its New and Noteworthy document, and also corrections for issues as described in the following table. Live Datamart 2.1.2 inherits all fixes on the 2.0.x release branch through 2.0.5, and all the fixes on the 1.6.x release branch through 1.6.6.

Number Resolution
CQS‑3525 In previous releases, queries to TIBCO ActiveSpaces® back ends would not close all threads after the query was closed. This was fixed.
CQS‑3515 In release 1.6, when using custom ID generation, using the setting CQSDelete=true for Publish path delete had an issue deleting tables. This was fixed.
CQS‑3502 In previous releases, the lv-client addalertaction --sendtuple alert action could successfully send a tuple to a StreamBase URI, but the tuple had only null fields. The updated version takes fieldName:value pair arguments, so that you can define fields and use values from the input tuple or table.
CQS‑3455 In release 2.0.1, an issue could cause a deadlock within the WebSockets framework used by the LiveView JavaScript Client API that prevented browsers from receiving query results. This was fixed.
CQS‑3325 In release 2.0.4, an issue on the client side prevented URL actions to execute in an embedded Datawatch workbook called by LivewView Desktop. This was corrected by upgrading the Datawatch library.
CQS‑3135 In release 2.0.3, there were cases where any LiveView client failed to shut down because there were still threads active. This was corrected.

Fixed in Live Datamart 2.1.1

TIBCO Live Datamart 2.1.1 is a maintenance release with updates and enhancements as described in its New and Noteworthy document, and also corrections for issues as described in the following table. Live Datamart 2.1.1 inherits all fixes on the 2.0.x release branch through 2.0.5, and all the fixes on the 1.6.x release branch through 1.6.6.

Number Resolution
CQS‑3464 The andall() function with one argument is an aggregate function, but with two arguments is a simple function. In some LiveView contexts, andall() with more than one argument was being evaluated as an aggregate function. This was fixed.
CQS‑3454 The lastval() function is always an aggregate function, but in some LiveView context, was being evaluated as a simple function. This was corrected.
CQS‑3445 In previous releases, an enciphered account credential would not match a non-enciphered token credential. This deficiency would manifest when an enciphered version of a user's password was placed in the liveview.auth.properties file, but the user attempted to access LiveView with a non-enciphered password. This was corrected such that, when matching account credentials, either the token credential, or the account credential, or both, can be independently enciphered.
CQS‑3434 In previous releases, author-time aggregation tables that used aliases in the projection for group keys were failing to delete aggregate rows when the group size went to zero. This was fixed.
CQS‑3321 Rows in the LVSessionPublisher table could sometimes skip having updates published at the regular two second update interval. The TotalPublished count was correctly maintained and the next time the row was updated, the values would be correct. This was fixed such that every row that has changes to it is updated every two seconds.

Fixed in Live Datamart 2.1.0

TIBCO Live Datamart 2.1.0 is a major release with updates and enhancements, and corrections for the issues in the following table. Live Datamart 2.1.0 inherits all fixes on the 2.0.x release branch through 2.0.4.

Number Resolution
CQS‑3327 In previous releases, when a malformed query was sent to a LiveView Server — such as specifying a nonexistent or misspelled column name — sometimes the server would close the client connection before it had time to return an exception. This was fixed.
CQS‑2928 In previous releases, it was possible to write a Java LiveView client that used a LiveResult listener with a server running a continuous-only query. This is an unsupported combination with undefined results, so now an exception is raised during the registration of a continuous-only query used with a LiveResult listener.
CQS‑2431 In previous releases, when using the Java Client API, LiveResult.getChangedFields() could incorrectly report that the primary key value changed. The cause was identified and corrected.

Fixed in Live Datamart 2.0.5

TIBCO Live Datamart 2.0.5 is a service pack release with updates and enhancements. Live Datamart 2.0.5 inherits all fixes on the 1.6.x release branch through 1.6.5. The following issues were corrected in this release.

Number Resolution
CQS‑3441 In previous releases, persistent recovery of LiveView data tables that use custom ID generation correctly recover all data, but were incorrectly handling CQSInternalID initialization. This caused inserts and updates after recovery to fail to map properly to the correct pre-recovery rows. This was fixed.
CQS‑3432 The MultiConnectionConfig class in the LiveView Client API would previously stop trying to connect if it found no servers available. This was corrected to continue trying to connect. This fix allows you to enter a single URL in the list of servers; if the connection to that server goes away, it will continuously try to reconnect until the server is back up, at that point reconnecting all queries.
CQS‑3426 In certain very rare conditions, the LiveViewStatistics table logic that determines the amount of memory a table is using could deadlock in a way that prevented the LiveViewStatistics table from updating at all. This was fixed.
CQS‑3408 In previous releases, aggregate queries that had a group that is removed, then re-added back in later, could in some circumstances have the group keys set to null. Tables with snapshot-parallelism greater then 1 could have this null value set back to the correct value. All other values in the row not involving the group key or keys were correct. The cause was identified and corrected.
CQS‑3401 In certain rare timing conditions the LiveView Publish, Query, or Delete adapters could throw a benign NullPointerException during server shutdown. This was fixed and the NPE no longer occurs.
CQS‑3394 Time windowed queries that have top level OR terms could receive incorrect results. The cause was identified and corrected as of release 2.0.5. Previous releases can avoid this defect by surrounding the predicate portion of time windowed queries that contain OR terms with outermost parentheses.
CQS‑3389 In previous releases, LiveView projects that met two conditions could fail to start from the command line with lv-server. The conditions were that the project (1) imported a schema from an .sbint or .sbapp file, and (2) used liveview.project.out to specify an output directory other than the project root.
CQS‑3381 In release 2.0.4 only, the <java-vm> element of the sbd.sbconf file for LiveView projects was inadvertently limited to a single <param> child element. This meant that you could only specify <param name="java-home"...> or <param name=jvm-args ...> but not both. This incorrect limitation was lifted in release 2.0.5 to allow both param types in the same <java-vm> element.
CQS‑3303 Certain aggregate and order-by queries against a LiveView Server can cause server refill requests that are logged at the INFO level in the server log. In previous releases, this resulted in a great many refill request messages. Starting with this release, these refill requests are now rate limited to one per minute per query using the StreamBase logger's compressed log feature.

Fixed in Live Datamart 2.0.4

TIBCO Live Datamart 2.0.4 is a service pack release with updates and enhancements. Live Datamart 2.0.4 inherits all fixes on the 1.6.x release branch through 1.6.5. The following issues were corrected in this release.

Number Resolution
SB‑28030 Prior to release 2.0.4, deleting a row via the publish path was less efficient than publishing a row. This was optimized so that deleting a row now costs about as much as publishing one.
CQS‑3169 Table row deletes using the data path were failing to honor the case insensitive directive for the primary key field, and thus were always case sensitive. This was fixed.
CQS‑3165 A null pointer exception could occur when new rows were inserted following a delete into a StreamBase Query Table exposed to the LiveView server. The cause was identified and corrected.
CQS‑3141 In the Alert Send Tuple action, when the connection to the configured StreamBase Server was broken, it would never try to reconnect. LiveView clients now try to reconnect each time another Send Tuple action is fired to that StreamBase Server.
CQS‑3138 Values set in the LiveView URI client-info query parameter could not use URI encoded characters. This was fixed.
CQS‑3119 In previous releases, for tables configured with periodic publish, if a row was added then removed within the publish period, clients would see a delete event for a row that was never added. This was corrected for releases 1.6.5 and 2.0.4.
CQS‑3115 In previous releases, join target tables that were configured with the snapshot-parallelism attribute set greater than 1 would prevent LiveView Server from completing startup. This was fixed for releases 1.6.5 and 2.0.4.
CQS‑3114 LiveView Desktop would restart all queries every five minutes, which would cause the server to resend snapshots of the query results. This is no longer the case: the initial snapshot is received only when the query is started, and after that, query updates keep LiveView Desktop up-to-date.
CQS‑3102, CQS‑3099 Under certain circumstances, in LiveView Desktop, a time series chart such as a line graph might have displayed erroneous values, due to an interpolation setting that was not user configurable. This automatic interpolation was removed, and a time series lines now display only actual values. This fix also corrected an issue with time series line graphs plotting incorrectly.
CQS‑3092 In previous releases, LiveView Desktop could fail to draw open-high-low-close graphs. The cause was identified and corrected.

Fixed in Live Datamart 2.0.3

TIBCO Live Datamart 2.0.3 is a service pack release with updates and enhancements. Live Datamart 2.0.3 inherits all fixes on the 1.6.x release branch through 1.6.4. The following issues were corrected in this release.

Number Resolution
CQS‑3082 With LiveView Desktop connected to a LiveView Server with running queries, if the server is then shut down, the query views would display (Not Connected) in their top status bars — which was correct while the server was, in fact, down. However, when the server was restarted and the Desktop reconnected (using FileReconnect to Server), the query views would still display the (Not Connected) message, even though the contents of those views had begun updating again. This was fixed such that the (Not Connected) message only displays when the Desktop is genuinely not connected to the server.
CQS‑3074 Predicates that contained index key fields set to null would sometimes return an error. The cause was identified and corrected in releases 1.6.5 and 2.0.3. A workaround for earlier releases is to set the system property liveview.query.unique.plans to 1.
CQS‑3072 For dynamic aggregation queries only, and only the continuous portion thereof, and only for predicates that are planned where there is more than one value used for index equity, client data updates could be missed. The way to tell whether a predicate has more than one index equity is by looking in the server log for instances of Predicate rewritten: <re-written predicate> plans: X, unique plans: Y. If Y is greater than 1, then this issue can occur.

This situation was corrected in LiveView 1.6.5 and 2.0.3. For LiveView 1.6.4 and below, and for 2.0.0 through 2.0.2, you can work around this issue by setting the system property liveview.query.unique.plans to 1. LiveView 1.5.x did not have the problem.

CQS‑3053 The <adapter-configurations> element, newly added to the XML syntax of server configuration files in release 7.5.0, was not correctly copied to the generated lv-bin/sbd.sbconf when starting LiveView Server. This prevented the use in LiveView projects of adapters that use this feature, such as the ActiveSpaces operators. The cause was identified and corrected in StreamBase 7.5.3.
CQS‑2536 The Not Connected message in LiveView Desktop's bottom right status bar was trying to squeeze into a non-resizable field that just fit the word Connected. This was fixed.

Fixed in Live Datamart 2.0.2

TIBCO Live Datamart 2.0.2 is a service pack release with updates and enhancements. Live Datamart 2.0.2 inherits all fixes on the 1.6.x release branch through 1.6.4. The following issues were corrected in this release.

Number Resolution
CQS‑2961 The lastval() aggregate function could sometimes return incorrect values. Tables that had a higher snapshot-parallelism setting and predicates that underflowed for any reason would exacerbate the problem. This was fixed.

Fixed in Live Datamart 2.0.1

TIBCO Live Datamart 2.0.1 is a service pack release with updates and enhancements. Live Datamart 2.0.1 inherits all fixes on the 1.6.x release branch through 1.6.3. The following issues were corrected in this release.

Number Resolution
CQS‑2919 In LiveView Desktop, when connected to a LiveView Server, in the WindowPreferences dialog, the Restore Defaults button could fail to restore the dialog. This was fixed.
CQS‑2918 In LiveView Desktop, with a tabular query view whose query is not running (because it is paused or has hit a row limit), if you right-clicked in that view and chose either Columns or Notifications, an internal exception would prevent the expected dialog from appearing. This was corrected.
CQS‑2844 Deleting rows via the DataIn path was unexpectedly slow. The delete performance was greatly improved.
CQS‑2837

A transform application referencing an aggregation table failed to see delete events when a row left aggregation scope, preventing the transform from acting on these events or sending a delete action into the recipient table.

As of release 2.0.1, transform applications now see these events as an input tuple with CQSReferredCount==0 and the row that was deleted reported in the newly added Old field of type tuple. Since a new field was added, transform applications written before 2.0.1 will no longer typecheck. You must at minimum regenerate the transform interface, and possibly also convert your transform application to accommodate the new input field.

To migrate an existing transform application:

  1. Regenerate the transform interface, using either the new StreamBaseGenerate LiveView Interfaces menu option or a command like the following: lv-server generate --type transform --tables baseTable,transformedTable projectDir

  2. Update the transform application's Input Stream schema to use the newly generated transform schema.

If you expect delete events and wish to act on them, continue with the following migration steps:

  1. Add to the transform a Filter operator with two output ports, the first emitting tuples matching the test CQSReferredCount==0 and the second emitting all remaining tuples. This isolates tuples representing a row deletion in the source table.

  2. To emit a deletion event, send out of the transform Output Stream the key fields needed in the recipient table, and the field CQSDelete set to true.

CQS‑2756 In release 2.0.0, the Jetty web server launched as part of LiveView Server was locking HTML files under its control by default when running, which affected development of new and updated HTML files, especially on Windows. As of release 2.0.1, the server no longer locks its files by default.
CQS‑2475 If a LiveView data table had a snapshot parallelism setting of 1, and a query with a limit of X was issued where there were exactly X rows that matched the query, all X rows would be delivered to the client, but then a snapshot exceeded exception was thrown. This was fixed.

Fixed in Live Datamart 2.0.0

TIBCO Live Datamart 2.0.0 is a major release with updates and enhancements, and corrections for the issues in the following table. Live Datamart 2.0.0 inherits all fixes on the 1.6.x release branch through 1.6.3.

Number Resolution
CQS‑2430 The text of the EOF reading data from binary stream DEBUG message was changed to indicate that EOF and I/O exceptions incurred just after a server connection is closed are normal and can be safely ignored.

Fixed in Live Datamart 1.6.6

  • TIBCO Live Datamart 1.6.6 is a service pack release, correcting the following issues.

Number Resolution
CQS‑3469 In previous releases, periodic publisher tables with persistence enabled would drop all continuous inserts or updates after recovery until approximately the number of publishes started before recovery are completed after recovery. The inserts or updates were correctly made to the tables, so a snapshot would see them. However, those inserts or updates were blocked from continuous output and/or from downstream tables. This problem was corrected.
CQS‑3467 The custom ID generation sample has an option to demonstrate table persistence with recovery. The recovery sample uses _serverKey, but if you did not use _serverKey by setting it to string(), then the recovery logic would only record inserts for recovery for the most recent publish and would not recover subsequent row updates until the next insert occurred. This was fixed.
CQS‑3465 Previously, for LiveView tables that had persistence enabled and had more than one PublisherID, the highest or lowest PersistedSN reported for the table might not have been accurate. The reported PersistedSN might have been lower than expected, or null. This would result in the publisher having to republish more data than necessary. The cause was identified and corrected.
CQS‑3441 In previous releases, persistent recovery of LiveView data tables that use custom ID generation correctly recover all data, but were incorrectly handling CQSInternalID initialization. This caused inserts and updates after recovery to fail to map properly to the correct pre-recovery rows. This was fixed.
CQS‑3138 Values set in the LiveView URI client-info query parameter could not use URI encoded characters. This was fixed.

Fixed in Live Datamart 1.6.5

  • TIBCO Live Datamart 1.6.5 is a service pack release, correcting the following issues. Live Datamart 1.6.5 inherits all fixes on the 1.5.x release branch through 1.5.7.

Number Resolution
CQS‑3118 In previous releases, for tables configured with periodic publish, if a row was added then removed within the publish period, clients would see a delete event for a row that was never added. This was corrected for releases 1.6.5 and 2.0.4.
CQS‑3115 In previous releases, join target tables that had the snapshot-parallelism attribute set greater than 1 would prevent LiveView server from completing startup. This was fixed for releases 1.6.5 and 2.0.4.
CQS‑3074 Predicates that contained index key fields set to null would sometimes return an error. The cause was identified and corrected in releases 1.6.5 and 2.0.3. A workaround for earlier releases is to set the system property liveview.query.unique.plans to 1.
CQS‑3072 For dynamic aggregation queries only, and only the continuous portion thereof, and only for predicates that are planned where there is more than one value used for index equity, client data updates could be missed. The way to tell whether a predicate has more than one index equity is by looking in the server log for instances of Predicate rewritten: <re-written predicate> plans: X, unique plans: Y. If Y is greater than 1, then this issue can occur.

This situation was corrected in LiveView 1.6.5 and 2.0.3. For LiveView 1.6.4 and below, and for 2.0.0 through 2.0.2, you can work around this issue by setting the system property liveview.query.unique.plans to 1. LiveView 1.5.x did not have the problem.

Fixed in Live Datamart 1.6.4

TIBCO Live Datamart 1.6.4 is a service pack release with updates and enhancements. The following issues were corrected in this release. Live Datamart 1.6.4 inherits all fixes on the 1.5.x release branch through 1.5.7.

Number Resolution
CQS‑2930 LiveView Server startup time was substantially improved when starting a configuration that has already run at least once, and has no configuration changes.
CQS‑2871 In LiveView Desktop 1.6.3, trying to re-open a configured table action failed when the selected row contained a colon anywhere, including in timestamp fields. This occurred when the Open new view View Settings option was selected, which is the default setting. The cause was identified and corrected.
CQS-2847 If a table index was defined as case insensitive, and a query predicate was planned to use that index, and the index matching string value contained a close-parenthesis character, then the continuous portion of query would not return results when it should. This was fixed. Note that the snapshot portion of the query is always correct.

Fixed in LiveView 1.6.3

TIBCO LiveView® 1.6.3 is a service pack release with updates and enhancements. The following issues were corrected in this release. LiveView 1.6.3 inherits all fixes on the 1.5.x release branch through 1.5.7.

Number Resolution
CQS‑2576 In previous releases, the lv-client command accepted a URI as the argument to its -u option, but did not recognize options appended to the URI with standard question-mark syntax. Starting with release 1.6.3, lv-client accepts the full URI syntax including options. For example:
lv-client -u lv://lvserver:10090?client-info=StatusMonitor
CQS‑2557 The names of spaces in TIBCO ActiveSpaces can contain characters that are not valid StreamBase characters. In previous releases, such spaces could not be used with LiveView. Starting with this release, LiveView detects invalid characters in ActiveSpaces space names and converts each to an underscore. This allows such spaces to be used with LiveView, but with converted names.

Fixed in LiveView 1.6.2

TIBCO LiveView® 1.6.2 is a service pack release with new features and enhancements. The following issues were corrected in this release. LiveView 1.6.2 inherits all fixes on the 1.5.x release branch through 1.5.7.

Number Resolution
CQS‑2553 In previous releases, the LiveView Delete adapter would accept a predicate with a limit specifier, but the limit was ignored. This is now fixed such that a delete predicate with no limit specifier means there is no limit to the number of rows deleted, and a predicate with a limit n specifier will delete from zero to no more than n rows.
CQS‑2531 In some cases, LiveView 1.6.0 clients connecting to a LiveView 1.6.1 server did not receive remove events. The cause was identified and corrected such that all 1.6.x clients are expected to interoperate with any 1.6.x server.
CQS‑2522 In previous releases of LiveView Desktop, when you selected columns and rows in a grid view and copied them to another program such as Microsoft Excel, the copied column order would remain in the underlying LiveView table's column order. This was corrected so that grid copies now preserve the current, visible column order in LiveView Desktop.
CQS‑2480 In previous releases, if the StreamBase and LiveView server ports were incorrectly configured to be the same, the StreamBase server would fail to start with a confusing error message. The error message was clarified.
CQS‑2398 In previous releases, if you used the Select button in LiveView Desktop's Connect to LiveView dialog to select a downloadable workspace, the resulting Desktop perspectives could incorrectly overlap. The cause was identified and corrected.
CQS‑2275 LiveView Desktop sometimes showed a black background behind DataWatch (Panopticon) charts. This release includes updated DataWatch libraries that resolve those issues.

Fixed in LiveView 1.6.1

LiveView 1.6.1 is a service pack release with new features and enhancements.

Number Resolution
CQS‑2196 In some cases, the .NET API would not correctly read a URI that passed in parameters. This was fixed.
CQS‑2242 An aggregate table that used the expression Max(timestamp) would fail. This was fixed.
CQS‑2394 In certain rare conditions, LiveView tables with snapshot-parallelism greater than one might drop a snapshot add event. A run-time exception warning is written to the server log, but the client gets no notification. (Continuous queries do not have this issue.) This was fixed.
CQS‑2422 Queries of type snapshot and continuous with query predicates that have index equality terms on more then one index that were issued against tables with multiple secondary indices could miss continuous data updates. (The snapshot portion of the query is always correct.) This was fixed.

Fixed in LiveView 1.6.0

LiveView 1.6 is a minor release with new features and enhancements.

Number Resolution
CQS‑2320 In LiveView Desktop, some grid view query formatting, such as column reordering, hiding, or width adjustments, would be removed if the query was edited or refreshed. This was fixed.
CQS‑2273 In the Java API, if query listeners threw unhandled exceptions while processing events provided to them by LiveView's API, the server connection closed. This behaviour was changed. Now, the query listener receives the exception thrown via #getExceptionRaised, the query is closed, but the connection is unaffected.