Release notes

8.14.3-36.2

Bug fixes

  • Fixed a NullPointerException when an error occurred and the cause message was null.

  • Fixed a bug caused by using an unsupported operation of exist in the aggregation context with projected fields.

  • Fixed a concurrent modification exception in a multi-search request.

  • Fixed a bug caused by skipping the pruning step when an error occurred during the request planning phase.

Improvements

  • Improved concurrency management on multi-search requests.

8.14.3-36.1

Improvements

  • Upgraded to Elasticsearch 8.14.3.

Bug fixes

  • Fixed a resource leak that occurred during job initialization.

  • Fixed a race condition in the data staging service.

Improvements

  • Added a new setting, federate.internal.actions.timeout, to configure a timeout for internal actions, with a default value of 30s.

8.14.1-36.0

Features

  • Introduced a new node attribute federate.enable which allows you to exclude nodes from search and computation when it is set to false.

  • Enhanced Elasticsearch aggregations to work with Federate joins in static and adaptive planner requests.

  • Added multi-search request capabilities for Adaptive Query Planner (AQP).

Improvements

  • Upgraded to Elasticsearch 8.14.1.

  • Improved function_score to accept join in the filters scope.

  • Added a push down optimization to queries inside aggregations for HASH_JOIN.

  • Added the following values to the feature flag parameter (siren-federate-features) to manipulate the push down optimization in aggregations:

    • AGG_PUSH_QUERY to push down query clauses defined in the root search request.

    • AGG_PUSH_NONE to not push down any query.

    • AGG_PUSH_ANCESTORS to push down filter clauses found in the ancestors aggregation buckets.

  • Improved the documentation on thread pools and its types.

  • Improved the documentation on settings.

  • Increased the default value of federate.planner.multi_conditional.index_lookup.limit to 50,000.

  • Improved the pruning in AQP to avoid duplicated lookup requests.

Bug fixes

  • Fixed join query failures caused by unsupported matches API used by highlighters.

  • Fixed an error message when using a plain string instead of an array for the on clause.

  • Fixed an issue with the caching of AQP requests caused by the wrong searchLock selection.

  • Fixed the explain API to not prune tasks anymore.

  • Fixed a bug that prevented the detection of EmptyJoin inside aggregations.

  • Fixed a bug that prevented federate_object from referencing fields projected from a child scope.

  • Fixed a bug in the REST _siren/cache/planner endpoint to handle also the field_caps cache used during the planner phase.

Deprecations

  • Marked REST endpoint _siren/cache as deprecated, use _siren/cache/planner instead.

  • Marked connector APIs as deprecated; connector APIs includes:

    • Ingestion and Job API

    • Datasource API

    • Virtual index API

  • Deprecated the setting federate.planner.index_join.max_lookups. The new setting to use is federate.planner.multi_conditional.index_lookup.limit.