Release notes
8.12.2-34.1
Improvements
- 
Upgraded to Elasticsearch 8.12.2 
- 
Improved the circuit-breaker mechanism for multi-conditional index joins. The circuit-breaker now triggers a failure when the limit of index lookup operations is exceeded at run-time, rather than relying on estimations done at the query planning phase. 
- 
Enhanced the failure message of the circuit-breaker mechanism for multi-conditional index joins, incorporating details on the reached limit and the count of remaining lookup operations. 
- 
Introduced an option to deactivate the circuit-breaker mechanism for multi-conditional index joins. This can be achieved by setting -1 in the federate.planner.index_join.max_lookupsconfiguration setting.
8.12.1-34.0
Features
- 
Introduced an allow_missing_boundparameter in thelt,lte,gt, andgteoperators to accept a missing or null value in a field used in the join.
Improvements
- 
Upgraded to Elasticsearch 8.12.1 
- 
Added the truncation trace in search requests executed with the adaptive query planner. 
- 
Improved the performance of the withinoperator by doing a merge overlap optimization.
- 
Implemented a pre-filtering technique in spatial joins to reduce unnecessary index lookup operations. 
- 
Enhanced the data type compatibility check for fields used in a join. 
- 
Introduced a new resource management layer in the adaptive query planner. 
- 
Improved the performance of the index fingerprint computation. 
- 
Removed the community license. An empty license is returned if no license is registered. 
- 
Added the planner time, execution time, and waiting time in the JSON response. 
- 
Improved the examples using aggregation in the user documentation. 
- 
Upgraded to Guava 32.1.3. 
- 
Upgraded to Java 21. 
Bug fixes
- 
Fixed a class cast exceptionfrom occurring when projecting fields in a multi-conditional index join.
- 
Fixed an issue that created a stage node for a cached join in the adaptive query planner. 
- 
Fixed a parsing error message when using an object instead of an array for the indicesjoin query clause.
- 
Fixed an issue with the creation of function_scorequeries when theboost_modeparameter isn’t passed explicitly.
- 
Fixed an incomplete response when doing an aggregation and no index could match the request due to a date range filter. 
- 
Fixed an issue on cache key definition when runtime fields were defined at query time. 
- 
Fixed an issue on a cached join when its parent was shared by two other parents. 
- 
Fixed an issue when computing the index scan cost, where the field existed but without terms in a segment. 
- 
Fixed a concurrency issue in multi-conditional index joins. 
- 
Fixed a concurrency issue in Point-In-Time query shard cache. 
- 
Fixed a concurrency issue in AQP reports. 
Deprecation
- 
Normalized Federate settings. The following planner settings have been marked as deprecated, a new setting is proposed; - 
siren.planner.pool.job.sizehas been deprecated, usefederate.planner.pool.job.sizeinstead.
- 
siren.planner.pool.job.queue_sizehas been deprecated, usefederate.planner.pool.job.queue_sizeinstead.
- 
siren.planner.pool.tasks_per_job.sizehas been deprecated, usefederate.planner.pool.tasks_per_job.sizeinstead.
- 
siren.planner.index_join.max_lookupshas been deprecated, usefederate.planner.index_join.max_lookupsinstead.
- 
siren.planner.volcano.cache.enablehas been deprecated, usefederate.planner.optimizer.cache.enableinstead.
- 
siren.planner.field.metadata.cache.maximum_sizehas been deprecated, usefederate.planner.field.metadata.cache.maximum_sizeinstead.
- 
siren.planner.volcano.cache.maximum_sizehas been deprecated, usefederate.planner.optimizer.cache.maximum_sizeinstead.
- 
siren.planner.volcano.cache.refresh_intervalhas been deprecated, usefederate.planner.optimizer.cache.refresh_intervalinstead.
 
-