Release notes
9.2.4-39.0
Breaking changes
Changed the Siren Federate license handling. Licenses issued before November 3, 2025 are no longer supported and must be renewed. In addition, some features, such as the Graph API, require a valid license and cannot run without one.
Please reach out to the Siren customer support to inquire about a new license.
Features
-
Implemented an input swap optimization for index joins.
-
Added a
siren_dlsquery 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.-
The Graph API feature is in alpha stage, subject to change without notice.
-
Improvements
-
Upgraded to Elasticsearch 9.2.4.
-
Improved performance on
Index Joinstrategy by using binary search to iterate overBytesRef. -
Improved the
can_matchaction to avoid serializing aggregations. -
Improved the
fingerprintandcan_matchactions 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_cachequery 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 shapeinGeoshape queryandterms lookup parametersinTerms querywithin 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_objectruntime 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
tookresponse time value to reflect the planner’stook_in_millisvalue. -
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-wsprocessor. -
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/_msearchrequests.