Equator Server version 3.1 has been released:

This feature allows to specify a virtual field in table schema as a operation (e.g. sum), applied to regular table fields. The virtual field can be then used in "collectMinMax" schema section and in the query conditions.

Those engines utilize modern approaches to data warehousing without using indexes and make it possible to find an optimal balance between query performance and storage density. Such technologies as partitioning, binary data representation,intelligent compression and bloom filters are also used.

Greenwich Server version 3.6.2 has been released:

GreenwichServer ODBC driver now can return results in wchar strings. The Unicode support is helpful for those using perl-DBD-ODBC with GreenwichServer ODBC driver since Red Hat supplies the version 1.50-3 built with Unicode by default.

Greenwich Server version 3.6.0 has been released:

Loading performance has been increased by optimizing LoadBuffer internal logic.
LoadBuffer consists of a reader that reads data from files into internal buffers and a writer that writes data from internal
buffers into an index.
Readers and writers operate in separate threads. Prior to the current version, the number of internal buffers was
fixed and size was changeable via configuration file.
In the current version number of the internal buffers is dynamic and increases automatically to achieve optimal performance.

The memory consumption is now fully predictable. With IndexCacheMode set to None queries consume almost no memory.
With IndexCacheMode set to Full the IndexCacheSize parameter now precisely restricts the memory usage.
So taking in account the memory used for load buffers and repository cache (no more than several gigabytes) one can
accurately predict overall memory used by the server.

For each column in a (compacted) partition, an index stores a range of minimum and maximum values that column contains.
When searching a partition with a predicate on a particular column, the Core can quickly check if the predicate falls
within the range of values held in that partition.
If the predicate is outside that range, then no matching records will be found, and the partition will be skipped entirely
for the search.

This enhancement increases query performance when few records are returned and most query time is wasted on indices scanning.

Two license types have been added:
License limited by the overall data records number.
License limited by the overall data size.
If one of the limitation has been exceeded an error will be returned while querying against the GreenwichServer (file indexing will not be stopped).

The following commands have been added to the AdminClient:
server [show] limits – to show limits and current value.
server update limits – to update the current value.
server set limits max – to increase limits by 20% and ask support about the license extension or delete old stripes.

If the license is exhausted, there are 3 possibilities:
Buy license with greater amount.
Delete old stripes.
Temporarily increase limits by 20%.

In the older versions query sent against GreenwichServer from Oracle using odbc was logged in the .log only after the next query.
Now every query run against GreenwichServer from Oracle using odbc will be logged right after the results are returned.

The inforamtion about optimiser choice has been added to the query log.

1 : OPTIMISER CHOOSING BETWEEN 2 INDEXES:

1 : DATA_IDX1

1 : DATA_IDX7

The inforamtion about partition elimination using new min/max has been also added to the query log.

Fetching from index is finished, total partitions: , skipped by min/max:

In the previous versions of GreenwichServer, if a partition gets deleted by the DefaultMaxStripeAge job
while there is a query being executed against that partition, the query would fail and the user would receive an error.
The new version will allow the query to finish and a message will be logged into GreenwichServer.log.

Greenwich Server version 3.5.7 has been released:

The GreenwichServer instance with approximately 10 partititions closed every day per index will reduce RSS memory usage 5-7% of every query type towards the previous version of GreenwichServer without degradation in query performance.

Coppereye Equator Server has been in development since early 2013 and is expected to be publicly released in the late 2014.

Greenwich Server version 3.5.6 has been released:

Every query is executed against a single index, which is selected by calculating a cost for every index in a table (costing).
This parameter restricts the number of partitions to be costed for every index.
Such restriction leads to the RSS memory reduction and query performance acceleration
in a large GreenwichServer instance, but in rare cases can lead to wrong index selection.

The GreenwichServer instance with approximately 10 partititions closed every day per index will reduce RSS memory usage
4 times towards the previous version of GreenwichServer without degradation in query performance.

CostPartitionsNumber 0 means that all partitions will be costed for every index in a table.
Behavior identical to the previous versions.

In the previous versions of GreenwichServer, if a partition gets deleted by the DefaultMaxStripeAge job
while there is a query being executed against that partition, the query would fail and the user would receive an error.
The new version will allow the query to finish and a message will be logged into GreenwichServer.log.

There were some conditions in which old clients did not call disconnect() while task is already done.
That led to client port becoming unavailable and "M00088-Could not talk to client: Connection error" error in the log file.
This problem has been solved by rewriting that part of the code.

Greenwich Server version 3.5.4 has been released:

In the older version if the index field is null, this field will be indexed in every case.
In the newer version this behavior was changed to the opposite, now if the index field is null, this field will not be indexed.
To achieve behavior of the older version, user should set default configuration parameter in the cartridge configuration file like the following:
default "", where field_N is the field number desired to be indexed in every case.
If your system has some null index fields, be sure to set default parameter.