We’re happy to announce the release of Siren Federate version 37.0 & 37.1 for Elasticsearch 7.17 & Elasticsearch 8.15. This release includes the following features, improvements and bug fixes:
37.1
Improvements
- Upgraded to Elasticsearch 8.15.5 & 7.17.26
Bug Fixes
- Reintroduced the
json-ws
processor, which was previously removed as part of the connector’s deprecation on v37.
37.0
WARNING: Don’t use this version if you need json-ws
processor. Use version 37.1 or later.
Improvements
- Upgraded to Elasticsearch 8.15.3 & 7.17.25
- Switched to memory-unsafe instead of memory-netty for the management of off-heap memory.
- Improved the internal behavior of joins in aggregations for AQP requests.
- Improved the error message for incompatible data types in a join.
- Added a new setting,
federate.internal.actions.timeout
, to configure a timeout for internal actions, with a default value of 30 seconds. - Improved concurrency management on multi-search requests.
- Added descriptions for every Federate task.
- Added planner execution times for AQP requests.
New features
- Added support to multi-conditional index join in AQP requests.
- Added support for
federate_object
in AQP requests. - Implemented a stage-based cost optimization strategy in AQP.
- Added a push-down strategy for joins in aggregations for AQP requests.
- Added support for point-in-time with inner join in AQP requests.
- Added support for a join on the
_index
virtual field on the left side. - Added a new setting
federate.planner.type
to choose betweenadaptive
orstatic
for the default planner to use in search requests.
Bug Fixes
- Fixed an
Unknown QueryBuilder error
when a GeoPoint query was used inside a join request. - Fixed an issue with requests using
highlighter
on cached requests. - Fixed a resource leak that occurred during job initialization.
- Fixed a race condition in the data staging service.
- Fixed a NullPointerException when an error occurred and the cause message was null.
- Fixed a bug caused by using an unsupported operation of
exists
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.
Breaking changes
- Removed the
json-ws
processor. - Removed the deprecated connector API.
- Reverted a breaking change in deprecated endpoint
/_siren/cache
and/_siren/<nodeId>/cache
introduced in 36.1. - Removed the following deprecated settings:
siren.planner.pool.job.size
- usefederate.planner.pool.job.size
instead.siren.planner.pool.job.queue_size
- usefederate.planner.pool.job.queue_size
instead.siren.planner.pool.tasks_per_job.size
- usefederate.planner.pool.tasks_per_job.size
instead.siren.planner.index_join.max_lookups
- usefederate.planner.multi_conditional.index_lookup.limit
instead.siren.planner.volcano.cache.enable
- usefederate.planner.optimizer.cache.enable
instead.siren.planner.field.metadata.cache.maximum_size
- usefederate.planner.field.metadata.cache.maximum_size
instead.siren.planner.volcano.cache.maximum_size
- usefederate.planner.optimizer.cache.maximum_size
instead.siren.planner.volcano.cache.refresh_interval
- usefederate.planner.optimizer.cache.refresh_interval
instead.siren.planner.volcano.stats.use_query
- removed without replacement.
Download it here .