Over a million developers have joined DZone.

GigaSpaces XAP 7.1 Beta

DZone's Guide to

GigaSpaces XAP 7.1 Beta

Free Resource

The GigaSpaces 7.1.0 Beta(M9) is available for download through the download section  of GigaSpaces Early Access Program page.

Previous GigaSpaces 7.1.0 Milestones (M3, M4 etc.) are available for download on the same page. GigaSpaces 7.1.0 Beta is the last a public Milestone of 7.1.0 GigaSpaces' product line.

For the Release Notes of the 7.1.0 Early Access Program please click here.What's New page provides an overview of the new and noteworthy features in GigaSpaces 7.1.0 milestones.

On demand distributed dump and log gathering

This feature gives you the ability to generate a complete snapshot of the system's state on demand. This includes JVM thread and heap dumps, network utilization report, logs, space and processing unit dumps. Dump gathering can be done via the admin API or the UI (see image below - click t enlarge), and is supported for all the components of the GigaSpaces cluster (GSM, GSC, GSA, Space, processing unit, etc.).
This can become very handy when running large clusters and trying to monitor and troubleshoot multiple machines.

Logs view in the UI

This feature also significantly improves the ability to monitor and track a running system.
It allows you to see an up to date view of the log file of all the running components (GSC, GSM, GSA, LUS). This view is constantly updated (similar to the Unix tail -f command). In addition, you can filter log entries fetched from each of the services based on a regular expression (e.g. only message that contain the word INFO or WARN), search the log text that is displayed in the UI, and copy its contents to the clipboard. See image below (click to enlarge).
Note also that this functionality is also available via our administration and monitoring API.

Query on Nested Objects

This release includes an initial version of our planned query enhancements, which enables users to set query criteria on nested objects. For example, say you have a class named Person, which contains an embedded instance of a class named Address class.
Until this release, the only way to query on that instance was by using its natural equality and ordering capabilities (i.e. based on its equals() and compareTo() method, if implemented). So you could only compare at the level of the entire Address class. In this release, you can query on the fields of the Address class and fields of its nested classes in the following manner:

SQLQuery query = new SQLQuery(Person.class, "address.street.number = 1");

As you can see from the above example, you can navigate multiple level on the object graph (in this case 2 levels).
Note that this functionality does not yet support indexing and collections (which it will in future milestone releases).

Transaction Concurrency Improvements

In an effort to make our data grid even faster than it is today, we have done some very important optimizations around our transaction processing mechanism. We have significantly reduced the contention in this area of our code base, which resulted in significant performance improvements of transactional operations (up to 400% in some cases).



Opinions expressed by DZone contributors are their own.

{{ parent.title || parent.header.title}}

{{ parent.tldr }}

{{ parent.urlSource.name }}