Release notes

9.2.4-39.0

Features

  • Implemented an input swap optimization for index joins.

  • Added a siren_dls query to be used by Investigate to segregate data.

  • Added support for enabled modules in Siren licenses.

  • Added a new REST endpoint for GQL queries /siren/_graph.

    • Feature is in alpha stage, subject to change without notice.

Improvements

  • Upgraded to Elasticsearch 9.2.4.

  • Improved performance on Index Join strategy by using binary search to iterate over BytesRef.

  • Improved the can_match action to avoid serializing aggregations.

  • Improved the fingerprint and can_match actions to minimize the number of shards processed.

  • Added support for comma-separated indices in the join clause.

  • Removed the preference parameter for fingerprint computation.

  • Added ignore_query_cache query parameter to skip join query cache pruning strategy.

  • Improved the search-project task when the query is rewritten into a match_all.

  • Improved the initialization and cleanup job responsibilities.

  • Improved the concurrent execution of queries.

  • Removed unnecessary usage of the Guava EventBus.

  • Improved asynchronous execution in multi-search requests.

  • Added support for named join queries.

  • Changed to taskId for job identification instead of a random generated UUID.

  • Updated Calcite to version 1.40.0.

  • Improved project module dependencies.

  • Improved the license validation procedure.

  • Improved fingerprinting agnostic of DLS and FLS security system (i.e. XPack & SearchGuard).

  • Improved LogicalDataSignature hash computation to be deterministic and order agnostic.

  • Mutualize Query Shard Cache and Point-In-Time Shard Cache.

Bug fixes

  • Fixed an issue in schema registration where collected futures could be incomplete when using multi-search.

  • Fixed a bug where the data segregation header was not included in the Elasticsearch request cache key, causing incorrect results when requests with different data segregation values hit the request cache.

  • Fixed query failures when using pre-indexed shape in Geoshape query and terms lookup parameters in Terms query within Federate join queries.

  • Fixed a thread context issue causing unintended cancellation of tasks triggered by other job completions.

  • Fixed a concurrency issue where multiple tasks could attempt to sort the same array during signature creation.

  • Fixed the federate_object runtime field data type when projecting multiple values.

  • Fixed unhandled CompletableFuture failures when the fingerprint encountered shard failures.

  • Fixed an error in calculating the hash of large queries in AQP requests.

  • Fixed a concurrent modification issue when creating task nodes.

  • Fixed an issue with dangling tasks in case of task cancellation failure.

  • Fixed a race condition when notifying task completion.

  • Fixed a validation rule in the static planner when joining on _index.

  • Fixed the took response time value to reflect the planner’s took_in_millis value.

  • Fixed request failures when shard allocation was disabled.

  • Fixed a race condition in the data upload queue.

  • Fixed a concurrent modification error when logging task metrics.

  • Fixed a missing entitlement entry for the json-ws processor.

  • Fixed missing planner times in AQP response, ensuring all timing metrics are now consistently reported.

  • Fixed an issue on KNN query parsing when using Federate joins.

  • Fixed projection clauses in /siren/_msearch requests.