Resolved Issues

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

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.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.