Release - Federate 8.12.1-34.0

We’re happy to announce today the release of Siren Federate version 34.0 for Elasticsearch version 8.12.1. This release includes the following:


  • Introduced an allow_missing_bound parameter in the lt, lte, gt, and gte operators to accept a missing or null value in a field used in the join.


  • Upgraded to Elasticsearch 8.12.1
  • Added the truncation trace in search requests executed with the adaptive query planner.
  • Improved the performance of the within operator 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 exception from 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 indices join query clause.
  • Fixed an issue with the creation of function_score queries when the boost_mode parameter 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.


  • Normalized Federate settings. The following planner settings have been marked as deprecated, a new setting is proposed;
    • siren.planner.pool.job.size has been deprecated, use federate.planner.pool.job.size instead.
    • siren.planner.pool.job.queue_size has been deprecated, use federate.planner.pool.job.queue_size instead.
    • siren.planner.pool.tasks_per_job.size has been deprecated, use federate.planner.pool.tasks_per_job.size instead.
    • siren.planner.index_join.max_lookups has been deprecated, use federate.planner.index_join.max_lookups instead.
    • siren.planner.volcano.cache.enable has been deprecated, use federate.planner.optimizer.cache.enable instead.
    • siren.planner.field.metadata.cache.maximum_size has been deprecated, use federate.planner.field.metadata.cache.maximum_size instead.
    • siren.planner.volcano.cache.maximum_size has been deprecated, use federate.planner.optimizer.cache.maximum_size instead.
    • siren.planner.volcano.cache.refresh_interval has been deprecated, use federate.planner.optimizer.cache.refresh_interval instead.

Download it here .