navigation_title: "Elasticsearch" mapped_pages:
Review the changes, fixes, and more in each version of Elasticsearch.
To check for security updates, go to Security announcements for the Elastic stack.
% Release notes include only features, enhancements, and fixes. Add breaking changes, deprecations, and known issues to the applicable release notes sections.
% ## version.next [felasticsearch-next-release-notes] % Release date: Month day, year
% ### Features and enhancements [elasticsearch-next-features-enhancements] % *
% ### Fixes [elasticsearch-next-fixes] % *
Release date: March 25, 2025
Allocation : * Only publish desired balance gauges on master #115383
Authorization
: * Add a monitor_stats
privilege and allow that privilege for remote cluster privileges #114964
create_index
to kibana_system
role for index/DS .logs-endpoint.action.responses-*
#115241CRUD : * Suppress merge-on-recovery for older indices #113462
Data streams : * Adding a deprecation info API warning for data streams with old indices #116447
Distributed : * Metrics for incremental bulk splits #116765
ES|QL
: * Add ES|QL bit_length
function #115792
FieldAttribute
#112881skip_unavailable
setting for handling disconnected remote clusters #115266 (issue: #114531)BYTE_LENGTH
scalar function #116591Health
: * Increase replica_unassigned_buffer_time
default from 3s to 5s #112834
Indices APIs
: * Ensure class resource stream is closed in ResourceUtils
#116437
Inference : * Add version prefix to Inference Service API path #117095
Infra/Circuit Breakers : * Add link to Circuit Breaker "Data too large" exception message #113561
Infra/Core : * Support for unsigned 64 bit numbers in Cpu stats #114681 (issue: #112274)
Infra/Metrics
: * Add ensureGreen
test method for use with adminClient
#113425
Infra/Scripting
: * Add a mustache.max_output_size_bytes
setting to limit the length of results from mustache scripts #114002
Ingest Node : * Add postal_code support to the City and Enterprise databases #114193
Logs : * Add logsdb telemetry #115994
Machine Learning : * Add DeBERTa-V2/V3 tokenizer #111852
AzureAiStudioService
#113713input_type
field to Vertex inference service #116431queue_capacity
to 10_000 and decrease max queue_capacity
to 100_000 #115041Network : * Allow http unsafe buffers by default #116115
Recovery : * Attempt to clean up index before remote transfer #115142 (issue: #104473)
Reindex : * Change Reindexing metrics unit from millis to seconds #115721
Relevance : * Add query rules retriever #114855
Search : * Add Search Phase APM metrics #113194
docvalue_fields
Support for dense_vector
Fields #114484 (issue: #108470)semantic_text
field type #113920BytesRef
for Strings in Queries #115655_tier
based coordinator rewrites for all indices (not just mounted indices) #115797Security
: * Add refresh .security
index call between security migrations #114879
Snapshot/Restore : * Improve message about insecure S3 settings #116915
S3BlobContainer#getRegister
on all exceptions #114813Vector Search : * Add support for bitwise inner-product in painless #116082
Aggregations
: * Handle with illegalArgumentExceptions
negative values in HDR percentile aggregations #116174 (issue: #115777)
Analysis
: * Adjust analyze limit exception to be a bad_request
#116325
CCS : * Fix long metric deserialize & add - auto-resize needs to be set manually #117105 (issue: #116914)
CRUD : * Preserve thread context when waiting for segment generation in RTG #114623
Data streams
: * Add missing header in put_data_lifecycle
rest-api-spec #116292
EQL
: * Don’t use a BytesStreamOutput
to copy keys in BytesRefBlockHash
#114819 (issue: #114599)
ES|QL : * Added stricter range type checks and runtime warnings for ENRICH #115091 (issues: #107357, #116799)
_source
#116980 (issue: #116659)EnrichLookupService
on mixed clusters with <8.14 versions #116583 (issues: #116529, #116544)FragmentExec
#114665 (issue: #105095)SearchStats
instead of field.isAggregatable in data node planning #115744 (issue: #115737)union_type
fields #114934Infra/CLI : * Fix NPE on plugin sync #115640 (issue: #114818)
Infra/Metrics
: * Make randomInstantBetween
always return value in range [minInstant, maxInstant]
#114177
Infra/REST API
: * Fixed a NullPointerException
in _capabilities
API when the path
parameter is null. #113413 (issue: #113413)
Infra/Settings : * Don’t allow secure settings in YML config (109115) #115779 (issue: #109115)
Ingest Node : * Add warning headers for ingest pipelines containing special characters #114837 (issue: #104411)
GeoIpDownloader
#114924Logs : * Always check if index mode is logsdb #116922
Machine Learning : * Fix bug in ML autoscaling when some node info is unavailable #116650
hugging_face_elser
service from the GET _inference/_services API
#116664 (issue: #116644)Mapping
: * Change synthetic source logic for constant_keyword
#117182 (issue: #117083)
Network
: * Use underlying ByteBuf
refCount
for ReleasableBytesReference
#116211
Ranking
: * Propagating nested inner_hits
to the parent compound retriever #116408 (issue: #116397)
Relevance : * Fix handling of bulk requests with semantic text fields and delete ops #116942
Search : * Catch and handle disconnect exceptions in search #115836
DfsQueryPhase
and introduce search disconnect stress test #116060 (issue: #115056)Snapshot/Restore : * Retry throttled snapshot deletions #113237
Vector Search : * Update Semantic Query To Handle Zero Size Responses #116277 (issue: #116083)
Watcher : * Watch Next Run Interval Resets On Shard Move or Node Restart #115102 (issue: #111433)
Ingest Node
: * Fix _type
deprecation on simulate pipeline API #116259
Machine Learning : * [Inference API] Deprecate elser service #113216
Mapping
: * Deprecate _source.mode
in mappings #116689