LogicBlox 4.4.11

Executive Summary

Users are now able to create and configure their own sheets in Modeler. These user-defined sheets are listed
under 'My Views' in the navigation panel. Watch the video here.

For validation constraints, it has become a lot easier to configure which special characters are allowed.

Tools and Services

lb-web-client has been changed to abort the async protocol after
a configurable number of consecutive recoverable failures during polling.

TDX services now support "ignore" as entity creation policy, in
addition to "accumulate" and "none".

Measure Service

Measure service is now split between several jar files to make it
easier to use it as a library in other projects.

Some minor memory usage improvements.

Fixed issue where spread-by-query expressions were not fully desugared
before compilation.

Metric locks have finally been removed from the protocol.

The default_values and binary_decimal_column flags have finally been
removed from the protocol.

Introduced a better error message when the measure service has trouble
choosing a path between two intersections.

Arguments to abstraction expression in the protocol can now take an
optional signature.

Dialogue metrics are now deprecated and will be removed in 4.4.14.

All metrics now can be defined to activate inactive blocks on querying.

All metrics can now be declared as depending on parameters.

What's New

Modeler

Users are now able to create and configure their own sheets in Modeler.
Watch the video here.

In this version, the user will be able to create a view that contains one sheet.
The sheets can be created by clicking on the + icon next to
the 'My Views' title. This brings up a modal form in which the user can
specify a name for the new sheet. Once created, it is added to the list
of sheets in the 'My Views' panel.

The user will be able to delete his/her own sheets by clicking on the delete icon
that shows up when mousing over the sheet's name in the navigation panel.

The 'My Views' node in the navigation panel can be completely hidden by setting
allowUserDefinedSheets flag to false in the Modeler configuration
object like this:

For validation constraints, it has become easier to configure which special characters are allowed.
All characters are now allowed by default and the developer can now simply specify what is not allowed
(including which special characters) rather than having to set them all to true when he/she only wants
to limit the allowed set of special characters.

Tools and Services

When the target server for a given transaction goes down, lb-web-client
will keep polling that service until the overall transaction timeout
is achieved. This timeout may be configured to be very long, i.e.
an entire day. lb-web-client now supports the configuration of the
consecutive recoverable failures during polling before the operation
is aborted.

TDX services now support "ignore" as entity creation policy, in
addition to "accumulate" and "none". TDX services with this policy
will not create new entities, and simply ignore the input line,
instead of failing it.

Measure Service

Measure service is now split between several jar files to make it
easier to use it as a library in other projects.

Metric locks have finally been removed from the protocol.

The default_values and binary_decimal_column flags have finally been
removed from the protocol.

Introduced a better error message when the measure service has trouble
choosing a path between two intersections.

Arguments to abstraction expression in the protocol can now take an
optional signature.

Dialogue metrics are now deprecated and will be removed in 4.4.14.

All metrics now can be defined to activate inactive blocks on querying.

All metrics can now be declared as depending on parameters.

Corrected Issues

The issues listed below have been corrected
since the 4.4.10 release:

Modeler

The level member creation form will no longer lock up when the user
(1) enters a value in an Integer field, then (2) clears that value,
and (3) hits the 'Create' button.

Modeler now greys out the option to export data in form mode. Export is
not supported in form mode.

Conditional Formatting for entity type metric using externally declared
level as type now works as expected.

The 'All Panels' option in the 'Layout' toolbar menu is now only checked
when all panels (rows, columns, and slices) are visible.

Measure Service

Some minor memory usage improvements.

Fixed issue where spread-by-query expressions were not fully desugared
before compilation.

NOTE: this script will set all the necessary
environment variables. You might want to add this command to your
.bashrc.

Upgrade Information

Modeler

The following new services have been added to set and get view's metadata.

# Get metadata for all views of a user
GET /viewmetadata?user=user1
# Get metadata for a single view
GET /viewmetadata?id=abc

The following service has been added to backup and restore metadata for all the views.

/viewmetadata_tdx

NOTE: When an application allows users to define their own sheets, this new service
must be added to the project upgrade script along with
the current backup and restore of the view states. Failing to do so will result in the
loss of user defined views in the upgraded project.

The library containing the modeler migration tool is included in the
distribution under lib/npm/modeler-migrations-<version>.tgz
and contains a command line tool for doing various transformations/migrations
of modeler configurations.

To use the npm module, you first need to install it by running
npm install path/to/modeler-migrations-<version>.tgz.
You will then be able to use the command line tool.
The module contains a README.md file that lists all available
transformations as well as detailed instructions for use.

To automatically upgrade a Modeler-js based application from one version to another,
run the upgrade script to upgrade between versions: