LogicBlox 4.0.5

Release Date: December 2nd 2013

What's New

Services Framework

LogicBlox 4.0.5 introduces support for HTTP methods GET and PUT for protobuf based web services. Additionally, web services can be defined to support only certain subsets of methods. When defining a service for a specific method, you can define both the URL and the HTTP method.

Example 4. 

Below you can find an example of the new syntax:
service_by_prefix_and_method["/pst-time", "GET"] = x,
    default_protobuf_service(x) {
      inactive_block_name[] = "sample:pst_time",
      protobuf_response_protocol[] = "time",
      protobuf_response_message[] = "Response"

You will notice a new constructor for the service service_by_prefix_and_method which allows you to specify an HTTP method for a particular service, in this example we are using the GET method.

Accessing a service with an HTTP method that is not configured will return an HTTP 405 (Method Not Allowed) error.

Backward compatibility is maintained for alll use cases, except for services involving CORS rules and custom Java handlers. For details please refer to the LogicBlox 4.0 Migration Guide.

Developer Tools
  • The clean-workspaces target in the LB configuration tool can now be used to remove previously installed workspaces.
  • The new command lb web-server home-dir can be used to print the assumed home directory for the LB web-server.

Corrected Issues

The issues listed below have been corrected since the 4.0.4 release.

  • Resolved an issue that caused LogiQL scripts to run, even after an error.
  • Resolved an issue where an error in the lb command in interactive mode terminated lb interactive.
  • Resolved an issue where certain admin commands failed when a log level was configured.
  • Resolved an issue with importing data into pulse predicates.
  • Resolved an issue with the monitoring of predicates using the lb web-server monitor command that resulted in an exception when monitoring a predicate of type datetime
  • It is now possible to add or remove predicates to the list of monitored predicates instead of resetting the whole list

    Example 5. 

    You can list all monitors by running the following command:
    $ lb web-server monitor
    To add monitors on predicates p1, p2 and p3, run:
    $ lb web-server monitor p1 p2 p3
    To remove monitors on p1 and p2, run:
    $ lb web-server monitor --remove p1 p2
    Finally, you can run the command below to remove all monitors:
    $ lb web-server monitor --remove
  • Resolved an issue where the batch configuration option tcp_max_connections_per_address in BatchConfig, that is used as default value for individual statements, was not propagated correctly.

Installation and Upgrade information

Installing LogicBlox 4.0.5 is as simple as following the steps outlined below:

  1. Download the installation package
  2. Extract the tarball in <YourPreferredInstallDirectory>
  3. Run the following command:
    source <YourPreferredInstallDirectory>/logicblox-4.0.5/etc/profile.d/logicblox.sh
    NOTE: this script will set all the necessary environment variables. You might want to add this command to your .bashrc.

Release Information

Table 4. 

Server requirements
Operating System: 64 bit Linux
Java Runtime Environment 1.7, update 11 or higher
Python 2.6.4 or higher