Elasticsearch version 8.0.0
Elasticsearch version 8.0.0
The following list are changes in 8.0.0 as compared to 7.17.0, and combines release notes from the 8.0.0-alpha1, -alpha2, -beta1, -rc1 and -rc2 releases.
Also see Breaking changes in 8.0.
Known issues
If you installed Elasticsearch from an archive on an aarch64 platform like Linux ARM or macOS M1, the
elastic
user password and Kibana enrollment token are not generated automatically when starting your node for the first time.After the node starts, generate the
elastic
password with the bin/elasticsearch-reset-password tool:bin/elasticsearch-reset-password -u elastic
Then, create an enrollment token for Kibana with the bin/elasticsearch-create-enrollment-token tool:
bin/elasticsearch-create-enrollment-token -s kibana
Parsing a request when the last element in an array is filtered out (for instance using
_source_includes
) fails. This is due to a bug in Jackson parser. Fixed in Elasticsearch 8.6.1 (#91456)
Breaking changes
Aggregations
- Percentiles aggregation: disallow specifying same percentile values twice #52257 (issue: #51871)
- Remove adjacency matrix setting #46327 (issues: #46257, #46324)
- Remove
MovingAverage
pipeline aggregation #39328 - Remove deprecated
_time
and_term
sort orders #39450 - Remove deprecated date histo interval #75000
Allocation
- Require single data nodes to respect disk watermarks #73737 (issues: #55805, #73733)
- Remove
include_relocations
setting #47717 (issues: #46079, #47443)
Analysis
- Cleanup versioned deprecations in analysis #41560 (issue: #41164)
- Remove preconfigured
delimited_payload_filter
#43686 (issues: #41560, #43684)
Authentication
- Always add file and native realms unless explicitly disabled #69096 (issue: #50892)
- Do not set a NameID format in Policy by default #44090 (issue: #40353)
- Make order setting mandatory for Realm config #51195 (issue: #37614)
CCR
Cluster Coordination
- Remove join timeout #60873 (issue: #60872)
- Remove node filters for voting config exclusions #55673 (issues: #47990, #50836)
- Remove support for delaying state recovery pending master #53845 (issue: #51806)
Distributed
- Remove synced flush #50882 (issues: #50776, #50835)
- Remove the
cluster.remote.connect
setting #54175 (issue: #53924)
Engine
- Force merge should reject requests with
only_expunge_deletes
andmax_num_segments
set #44761 (issue: #43102) - Remove per-type indexing stats #47203 (issue: #41059)
- Remove translog retention settings #51697 (issue: #50775)
Features/CAT APIs
- Remove the deprecated
local
parameter for_cat/indices
#64868 (issue: #62198) - Remove the deprecated
local
parameter for_cat/shards
#64867 (issue: #62197)
Features/Features
Features/ILM+SLM
- Add lower bound on
poll_interval
#39593 (issue: #39163) - Make the ILM
freeze
action a no-op #77158 (issue: #70192) - Always enforce default tier preference #79751 (issue: #76147)
- Validate that snapshot repository exists for ILM policies at creation/update time #78468 (issues: #72957, #77657)
- Default
cluster.routing.allocation.enforce_default_tier_preference
totrue
#79275 (issues: #76147, #79210)
Features/Indices APIs
- Change
prefer_v2_templates
parameter to default to true #55489 (issues: #53101, #55411) - Remove deprecated
_upgrade
API #64732 (issue: #21337) - Remove local parameter for get field mapping request #55100 (issue: #55099)
- Remove
include_type_name
parameter from REST layer #48632 (issue: #41059) - Remove the
template
field in index templates #49460 (issue: #21009) - Remove endpoint for freezing indices #78918 (issues: #70192, #77273)
Features/Watcher
- Move watcher history to data stream #64252
Geo
- Disallow creating
geo_shape
mappings with deprecated parameters #70850 (issue: #32039) - Remove bounding box query
type
parameter #74536
Infra/Circuit Breakers
- Fixed synchronizing inflight breaker with internal variable #40878
Infra/Core
- Limit processors by available processors #44894 (issue: #44889)
- Remove
nodes/0
folder prefix from data path #42489 - Remove
bootstrap.system_call_filter
setting #72848 - Remove
fixed_auto_queue_size
threadpool type #52280 - Remove
node.max_local_storage_nodes
#42428 (issue: #42426) - Remove camel case named date/time formats #60044
- Remove legacy role settings #71163 (issues: #54998, #66409, #71143)
- Remove
processors
setting #45905 (issue: #45855) - Remove the
local
parameter of/_cat/nodes
#50594 (issues: #50088, #50499) - Remove the listener thread pool #53314 (issue: #53049)
- Remove the node local storage setting #54381 (issue: #54374)
- Remove the
pidfile
setting #45940 (issue: #45938) - Removes
week_year
date format #63384 (issue: #60707) - System indices treated as restricted indices #74212 (issue: #69298)
- Remove Joda dependency #79007
- Remove Joda support from date formatters #78990
- All system indices are hidden indices #79512
Infra/Logging
Infra/Plugins
Infra/REST API
- Remove content type required setting #61043
- Remove deprecated endpoints containing
_xpack
#48170 (issue: #35958) - Remove deprecated endpoints of hot threads API #55109 (issue: #52640)
- Allow parsing Content-Type and Accept headers with version #61427
Infra/Resiliency
Infra/Scripting
- Consolidate script parsing from object #59507 (issue: #59391)
- Move
script_cache
into _nodes/stats #59265 (issues: #50152, #59262) - Remove general cache settings #59262 (issue: #50152)
Infra/Settings
- Change default value of
action.destructive_requires_name
totrue
#66908 (issue: #61074) - Forbid settings without a namespace #45947 (issues: #45905, #45940)
Ingest
License
Machine Learning
- Remove deprecated
_xpack
endpoints #59870 (issues: #35958, #48170) - Remove the ability to update datafeed’s
job_id
#44752 (issue: #44616) - Remove
allow_no_datafeeds
andallow_no_jobs
parameters from APIs #80048 (issue: #60732)
Mapping
- Remove
boost
mapping parameter #62639 (issue: #62623) - Remove support for chained multi-fields #42333 (issues: #41267, #41926)
- Remove support for string in
unmapped_type
#45675 - Removes typed URLs from mapping APIs #41676
Network
- Remove client feature tracking #44929 (issues: #31020, #42538, #44667)
- Remove escape hatch permitting incompatible builds #65753 (issues: #65249, #65601)
Packaging
- Remove SysV init support #51716 (issue: #51480)
- Remove support for
JAVA_HOME
#69149 (issue: #55820) - Remove no-jdk distributions #76896 (issue: #65109)
- Require Java 17 for running Elasticsearch #79873
Recovery
Reindex
- Reindex from Remote encoding #41007 (issue: #40303)
- Reindex remove outer level size #43373 (issues: #24344, #41894)
Rollup
Search
- Decouple shard allocation awareness from search and get requests #45735 (issue: #43453)
- Fix range query on date fields for number inputs #63692 (issue: #63680)
- Make fuzziness reject illegal values earlier #33511
- Make remote cluster resolution stricter #40419 (issue: #37863)
- Parse empty first line in msearch request body as action metadata #41011 (issue: #39841)
- Remove
CommonTermsQuery
andcutoff_frequency
param #42654 (issue: #37096) - Remove
type
query #47207 (issue: #41059) - Remove
use_field_mapping
format option for docvalue fields #55622 - Remove deprecated
SimpleQueryStringBuilder
parameters #57200 - Remove deprecated
search.remote
settings #42381 (issues: #33413, #38556) - Remove deprecated sort options:
nested_path
andnested_filter
#42809 (issue: #27098) - Remove deprecated vector functions #48725 (issue: #48604)
- Remove support for
_type
in searches #68564 (issues: #41059, #68311) - Remove support for sparse vectors #48781 (issue: #48368)
- Remove the object format for
indices_boost
#55078 - Removes type from
TermVectors
APIs #42198 (issue: #41059) - Removes typed endpoint from search and related APIs #41640
- Set max allowed size for stored async response #74455 (issue: #67594)
indices.query.bool.max_clause_count
now limits all query clauses #75297
Security
- Remove obsolete security settings #40496
- Remove support of creating CA on the fly when generating certificates #65590 (issue: #61884)
- Remove the
id
field from theInvalidateApiKey
API #66671 (issue: #66317) - Remove the migrate tool #42174
- Compress audit logs #64472 (issue: #63843)
- Remove insecure settings #46147 (issue: #45947)
- Remove
kibana_dashboard_only_user
reserved role #76507
Snapshot/Restore
- Blob store compress default to
true
#40033 - Get snapshots support for multiple repositories #42090 (issue: #41210)
- Remove repository stats API #62309 (issue: #62297)
- Remove frozen cache setting leniency #71013 (issue: #70341)
- Adjust snapshot index resolution behavior to be more intuitive #79670 (issue: #78320)
TLS
- Reject misconfigured/ambiguous SSL server config #45892
- Remove support for configurable PKCS#11 keystores #75404
- Remove the client transport profile filter #43236
Breaking Java changes
Authentication
CCR
- Remove the
CcrClient
#42816
CRUD
- Remove types from
BulkRequest
#46983 (issue: #41059) - Remove
Client.prepareIndex(index, type, id)
method #48443
Client
- Remove
SecurityClient
from x-pack #42471
Features/ILM+SLM
- Remove the
ILMClient
#42817
Features/Monitoring
- Remove
MonitoringClient
from x-pack #42770
Features/Watcher
- Remove
WatcherClient
from x-pack #42815
Infra/Core
- Remove
XPackClient
from x-pack #42729 - Remove the transport client #42538
- Remove transport client from x-pack #42202
Infra/REST API
- Copy HTTP headers to
ThreadContext
strictly #45945
Machine Learning
- Remove the
MachineLearningClient
#43108
Mapping
- Remove type filter from
GetMappings
API #47364 (issue: #41059) - Remove
type
parameter fromPutMappingRequest.buildFromSimplifiedDef()
#50844 (issue: #41059) - Remove unused parameter from
MetadataFieldMapper.TypeParser#getDefault()
#51219 - Remove
type
parameter fromCIR.mapping(type, object...)
#50739 (issue: #41059)
Search
- Removes types from
SearchRequest
andQueryShardContext
#42112
Snapshot/Restore
Deprecations
Authentication
- Deprecate setup-passwords tool #76902
CRUD
Engine
- Deprecate setting
max_merge_at_once_explicit
#80574
Machine Learning
- Deprecate
estimated_heap_memory_usage_bytes
and replace withmodel_size_bytes
#80554
Monitoring
- Add deprecation info API entries for deprecated monitoring settings #78799
- Automatically install monitoring templates at plugin initialization #78350
- Remove Monitoring ingest pipelines #77459 (issue: #50770)
Search
Transform
New features
Security
Snapshot/Restore
Watcher
- Use
startsWith
rather than exact matches for Watcher history template names #82396
Enhancements
Analysis
- Move
reload_analyzers
endpoint to x-pack #43559
Authentication
- Reset elastic password CLI tool #74892 (issues: #70113, #74890)
- Autogenerate and print elastic password on startup #77291
- Enroll Kibana API uses Service Accounts #76370
- Add
reset-kibana-system-user
tool #77322 - New CLI tool to reset password for built-in users #79709
- Auto-configure the
elastic
user password #78306
Authorization
- Granting
kibana_system
reserved role access to “all” privileges to.internal.preview.alerts*
index #80889 (issues: #76624, #80746, #116374) - Granting
kibana_system
reserved role access to “all” privileges to .preview.alerts* index #80746 - Granting editor and viewer roles access to alerts-as-data indices #81285
Cluster Coordination
- Prevent downgrades from 8.x to 7.x #78586 (issues: #42489, #52414)
- Prevent downgrades from 8.x to 7.x #78638 (issues: #42489, #52414)
- Make
TaskBatcher
less lock-heavy #82227 (issue: #77466)
Data streams
EQL
- Add option for returning results from the tail of the stream #64869 (issue: #58646)
- Introduce case insensitive variant
in~
#68176 (issue: #68172) - Optimize redundant
toString
#71070 (issue: #70681)
Engine
- Always use soft-deletes in
InternalEngine
#50415 - Remove translog retention policy #51417 (issue: #50775)
Features/CAT APIs
Features/ILM+SLM
- Allow for setting the total shards per node in the Allocate ILM action #76794 (issue: #76775)
- Inject migrate action regardless of allocate action #79090 (issue: #76147)
- Make unchanged ILM policy updates into noop #82240 (issue: #82065)
- Avoid unnecessary
LifecycleExecutionState
recalculation #81558 (issues: #77466, #79692)
Features/Indices APIs
- Batch rollover cluster state updates #79945 (issues: #77466, #79782)
- Reuse
MappingMetadata
instances in Metadata class #80348 (issues: #69772, #77466)
Features/Stats
Features/Watcher
- Remove Watcher history clean up from monitoring #67154
Infra/Core
- Remove aliases exist action #43430
- Remove indices exists action #43164
- Remove types exists action #43344
- Retain reference to stdout for exceptional cases #77460
- Check whether stdout is a real console #79882
- Share int, long, float, double, and byte pages #75053
- Revert “Deprecate resolution loss on date field (#78921)” #79914 (issue: #78921)
- Add two missing entries to the deprecation information API #80290 (issue: #80233)
- Prevent upgrades to 8.0 without first upgrading to the last 7.x release #82321 (issue: #81865)
Infra/Logging
Infra/REST API
- Allow for field declaration for future compatible versions #69774 (issue: #51816)
- Introduce stability description to the REST API specification #38413
- Parsing: Validate that fields are not registered twice #70243
- Support response content-type with versioned media type #65500 (issue: #51816)
- [REST API Compatibility] Typed endpoints for index and get APIs #69131 (issue: #54160)
- [REST API Compatibility] Typed endpoints for put and get mapping and get field mappings #71721 (issues: #51816, #54160)
- [REST API Compatibility] Allow
copy_settings
flag for resize operations #75184 (issues: #38514, #51816) - [REST API Compatibility] Allow for type in geo shape query #74553 (issues: #51816, #54160)
- [REST API Compatibility] Always return
adjust_pure_negative
value #75182 (issues: #49543, #51816) - [REST API Compatibility] Clean up x-pack/plugin rest compat tests #74701 (issue: #51816)
- [REST API Compatibility] Do not return
_doc
for empty mappings in template #75448 (issues: #51816, #54160, #70966, #74544) - [REST API Compatibility] Dummy REST action for
indices.upgrade
API #75136 (issue: #51816) - [REST API Compatibility] REST Terms vector typed response #73117
- [REST API Compatibility] Rename
BulkItemResponse.Failure
type field #74937 (issue: #51816) - [REST API Compatibility] Type metadata for docs used in simulate request #74222 (issues: #51816, #54160)
- [REST API Compatibility] Typed
TermLookups
#74544 (issues: #46943, #51816, #54160) - [REST API Compatibility] Typed and x-pack graph explore API #74185 (issues: #46935, #51816, #54160)
- [REST API Compatibility] Typed endpoint for bulk API #73571 (issue: #51816)
- [REST API Compatibility] Typed endpoint for multi-get API #73878 (issue: #51816)
- [REST API Compatibility] Typed endpoints for
RestUpdateAction
andRestDeleteAction
#73115 (issues: #51816, #54160) - [REST API Compatibility] Typed endpoints for
get_source
API #73957 (issues: #46587, #46931, #51816) - [REST API Compatibility] Typed endpoints for explain API #73901 (issue: #51816)
- [REST API Compatibility] Typed endpoints for search
_count
API #73958 (issues: #42112, #51816) - [REST API Compatibility] Typed indexing stats #74181 (issues: #47203, #51816, #54160)
- [REST API Compatibility] Types for percolate query API #74698 (issues: #46985, #51816, #54160, #74689)
- [REST API Compatibility] Validate query typed API #74171 (issues: #46927, #51816, #54160)
- [REST API Compatibility] Voting config exclusion exception message #75406 (issues: #51816, #55291)
- [REST API Compatibility]
MoreLikeThisQuery
with types #75123 (issues: #42198, #51816, #54160) - [REST API Compatibility] Update and delete by query using size field #69606
- [REST API Compatibility] Indicies boost in object format #74422 (issues: #51816, #55078)
- [REST API Compatibility] Typed endpoints for search and related endpoints #72155 (issues: #51816, #54160)
- [REST API Compatibility] Allow to use size
-1
#75342 (issues: #51816, #69548, #70209) - [REST API Compatibility] Ignore
use_field_mapping
option for docvalue #74435 (issue: #55622) - [REST API Compatibility]
_time
and_term
sort orders #74919 (issues: #39450, #51816) - [REST API Compatability]
template
parameter and field on PUT index template #71238 (issues: #49460, #51816, #68905) - [REST API Compatibility] Make query registration easier #75722 (issue: #51816)
- [REST API Compatibility] Typed query #75453 (issues: #47207, #51816, #54160)
- [REST API Compatibility] Deprecate the use of synced flush #75372 (issues: #50882, #51816)
- [REST API Compatibility] Licence
accept_enterprise
and response changes #75479 (issues: #50067, #50735, #51816, #58217)
Infra/Scripting
- Update
DeprecationMap
toDynamicMap
#56149 (issue: #52103) - Add nio Buffers to Painless #79870 (issue: #79867)
- Restore the scripting general cache #79453 (issue: #62899)
Infra/Settings
- Fixed inconsistent
Setting.exist()
#46603 (issue: #41830) - Remove
index.optimize_auto_generated_id
setting (#27583) #27600 (issue: #27583) - Implement setting deduplication via string interning #80493 (issues: #77466, #78892)
Ingest
- Add support for
_meta
field to ingest pipelines #76381 - Remove binary field after attachment processor execution #79172
- Improving cache lookup to reduce recomputing / searches #77259
- Extract more standard metadata from binary files #78754 (issue: #22339)
License
- Add deprecated
accept_enterprise
param to/_xpack
#58220 (issue: #58217) - Support
accept_enterprise
param in get license API #50067 (issue: #49474) - Enforce Transport TLS check on all licenses #79602 (issue: #75292)
Machine Learning
- The Windows build platform for the machine learning C++ code now uses Visual Studio 2019 #1352
- The macOS build platform for the machine learning C++ code is now Mojave running Xcode 11.3.1, or Ubuntu 20.04 running clang 8 for cross compilation #1429
- Add a new application for evaluating PyTorch models. The app depends on LibTorch - the C++ front end to PyTorch - and performs inference on models stored in the TorchScript format #1902
- Adding new PUT trained model vocabulary endpoint #77387
- Creating new PUT model definition part API #76987
- Add inference time configuration overrides #78441 (issue: #77799)
- Optimize source extraction for
categorize_text
aggregation #79099 - The Linux build platform for the machine learning C++ code is now CentOS 7 running gcc 10.3. #2028
- Make ML indices hidden when the node becomes master #77416 (issue: #53674)
- Add
deployment_stats
to trained model stats #80531 - The setting
use_auto_machine_memory_percent
now defaultsmax_model_memory_limit
#80532 (issue: #80415)
Mapping
- Sparse vector to throw exception consistently #62646
- Add support for configuring HNSW parameters #79193 (issue: #78473)
- Extend
dense_vector
to support indexing vectors #78491 (issue: #78473)
Monitoring
- Add previously removed Monitoring settings back for 8.0 #78784
- Change Monitoring plugin cluster alerts to not install by default #79657
- Adding default templates for Metricbeat ECS data #81744
Network
- Enable LZ4 transport compression by default #76326 (issue: #73497)
- Improve slow inbound handling to include response type #80425
Packaging
- Make the Docker build more re-usable in Cloud #50277 (issues: #46166, #49926)
- Update docker-compose.yml to fix bootstrap check error #47650
- Allow total memory to be overridden #78750 (issue: #65905)
- Convert repository plugins to modules #81870 (issue: #81652)
Recovery
- Use Lucene index in peer recovery and resync #51189 (issue: #50775)
- Fix
PendingReplicationActions
submitting lots ofNOOP
tasks toGENERIC
#82092 (issues: #77466, #79837)
Reindex
- Make reindexing managed by a persistent task #43382 (issue: #42612)
- Reindex restart from checkpoint #46055 (issue: #42612)
- Reindex search resiliency #45497 (issues: #42612, #43187)
- Reindex v2 rethrottle sliced fix #46967 (issues: #42612, #46763)
- Do not scroll if max docs is less than scroll size (update/delete by query) #81654 (issue: #54270)
Rollup
SQL
- Add text formatting support for multivalue #68606
- Add xDBC and CLI support. QA CSV specs #68966
- Export array values through result sets #69512
- Improve alias resolution in sub-queries #67216 (issue: #56713)
- Improve the optimization of null conditionals #71192
- Push
WHERE
clause inside subqueries #71362 - Use Java
String
methods forLTRIM/RTRIM
#57594 - QL: Make canonical form take into account children #71266
- QL: Polish optimizer expression rule declaration #71396
- QL: Propagate nullability constraints across conjunctions #71187 (issue: #70683)
Search
- Completely disallow setting negative size in search #70209 (issue: #69548)
- Make
0
as invalid value formin_children
inhas_child
query #41347 - Return error when remote indices are locally resolved #74556 (issue: #26247)
- [REST API Compatibility] Nested path and filter sort options #76022 (issues: #42809, #51816)
- [REST API Compatibility]
CommonTermsQuery
andcutoff_frequency
parameter #75896 (issues: #42654, #51816) - [REST API Compatibility] Allow first empty line for
_msearch
#75886 (issues: #41011, #51816) - Node level can match action #78765
- TSDB: Add time series information to field caps #78790 (issue: #74660)
- Add new kNN search endpoint #79013 (issue: #78473)
- Disallow kNN searches on nested vector fields #79403 (issue: #78473)
- Ensure kNN search respects authorization #79693 (issue: #78473)
- Load kNN vectors format with mmapfs #78724 (issue: #78473)
- Support cosine similarity in kNN search #79500
- Node level can match action #78765
- Check nested fields earlier in kNN search #80516 (issue: #78473)
Security
- Add a tool for creating enrollment tokens #74890
- Add the Enroll Kibana API #72207
- Change default hashing algorithm for FIPS 140 #55544
- Create enrollment token #73573 (issues: #71438, #72129)
- Enroll node API #72129
- Configure security for the initial node CLI #74868
- Generate and store password hash for elastic user #76276 (issue: #75310)
- Set elastic password and generate enrollment token #75816 (issue: #75310)
- Add
elasticsearch-enroll-node
tool #77292 - Default hasher to
PBKDF2_STRETCH
on FIPS mode #76274 - Add v7
restCompat
for invalidating API key with the id field #78664 (issue: #66671) - Print enrollment token on startup #78293
- Startup check for security implicit behavior change #76879
- CLI tool to reconfigure nodes to enroll #79690 (issue: #7718)
- Security auto-configuration for packaged installations #75144 (issue: #78306)
Snapshot/Restore
- Introduce searchable snapshots index setting for cascade deletion of snapshots #74977
- Unify blob store compress setting #39346 (issue: #39073)
- Add recovery state tracking for searchable snapshots #60505
- Allow listing older repositories #78244
- Optimize SLM Policy Queries #79341 (issue: #79321)
TLS
- Add
ChaCha20
TLS ciphers on Java 12+ #42155 - Add support for
KeyStore
filters tossl-config
#75407 - Update TLS ciphers and protocols for JDK 11 #41808 (issues: #38646, #41385)
Transform
- Prevent old beta transforms from starting #79712
TSDB
- Automatically add timestamp mapper #79136
- Create a coordinating node level reader for tsdb #79197
- Fix TSDB shrink test in multi-version cluster #79940 (issue: #79936)
- Do not allow shadowing metrics or dimensions #79757
Bug fixes
Aggregations
- Fix BWC issues for
x_pack/usage
#55181 (issue: #54847) - Fix
DoubleBounds
null serialization #59475 - Fix
TopHitsAggregationBuilder
adding duplicate_score
sort clauses #42179 (issue: #42154) - Fix
t_test
usage stats #54753 (issue: #54744) - Throw exception if legacy interval cannot be parsed in
DateIntervalWrapper
#41972 (issue: #41970)
Autoscaling
CCR
Cluster Coordination
Data streams
Distributed
- Introduce
?wait_for_active_shards=index-setting
#67158 (issue: #66419) - Fixes to task result index mapping #50359 (issue: #50248)
Features/CAT APIs
Features/ILM+SLM
- Ensuring that the
ShrinkAction
does not hang if total shards per node is too low #76732 (issue: #44070) - Less verbose serialization of snapshot failure in SLM metadata #80942 (issue: #77466)
Features/Indices APIs
- Fix
ComposableIndexTemplate
equals whencomposed_of
is null #80864
Features/Java High Level REST Client
- The Java High Level Rest Client (HLRC) has been removed and replaced by a new Elasticsearch Java client. For migration steps, refer to Migrate from the High Level Rest Client.
Geo
Infra/Core
- Add searchable snapshot cache folder to
NodeEnvironment
#66297 (issue: #65725) - CLI tools: Write errors to stderr instead of stdout #45586 (issue: #43260)
- Precompute
ParsedMediaType
for XContentType #67409 - Prevent stack overflow in rounding #80450
Infra/Logging
- Fix NPE when logging null values in JSON #53715 (issue: #46702)
- Fix stats in slow logs to be a escaped JSON #44642
- Populate data stream fields when
xOpaqueId
not provided #62156
Infra/REST API
- Do not allow spaces within
MediaType's
parameters #64650 (issue: #51816) - Handle incorrect header values #64708 (issues: #51816, #64689)
- Ignore media ranges when parsing #64721 (issues: #51816, #64689)
RestController
should not consume request content #44902 (issue: #37504)- Handle exceptions thrown from
RestCompatibleVersionHelper
#80253 (issues: #78214, #79060)
Infra/Scripting
- Change compound assignment structure to support string concatenation #61825
- Fixes casting in constant folding #61508
- Several minor Painless fixes #61594
- Fix duplicated allow lists upon script engine creation #82820 (issue: #82778)
Infra/Settings
- Stricter
UpdateSettingsRequest
parsing on the REST layer #79227 (issue: #29268) - Set Auto expand replica on deprecation log data stream #79226 (issue: #78991)
Ingest
Machine Learning
- Add timeout parameter for delete trained models API #79739 (issue: #77070)
- Tone down ML unassigned job notifications #79578 (issue: #79270)
- Use a new annotations index for future annotations #79006 (issue: #78439)
- Set model state compatibility version to 8.0.0 #2139
- Check that
total_definition_length
is consistent before starting a deployment #80553 - Fail inference processor more consistently on certain error types #81475
- Optimize the job stats call to do fewer searches #82362 (issue: #82255)
Mapping
Packaging
Recovery
- Make shard started response handling only return after the cluster state update completes #82790 (issue: #81628)
SQL
- Introduce dedicated node for
HAVING
declaration #71279 (issue: #69758) - Make
RestSqlQueryAction
thread-safe #69901
Search
- Check for negative
from
values in search request body #54953 (issue: #54897) - Fix
VectorsFeatureSetUsage
serialization in BWC mode #55399 (issue: #55378) - Handle total hits equal to
track_total_hits
#37907 (issue: #37897) - Improve error msg for CCS request on node without remote cluster role #60351 (issue: #59683)
- Remove unsafe assertion in wildcard field #78966
Security
- Allow access to restricted system indices for reserved system roles #76845
Snapshot/Restore
- Fix
GET /_snapshot/_all/_all
if there are no repos #43558 (issue: #43547) - Don’t fill stack traces in
SnapshotShardFailure
#80009 (issue: #79718) - Remove custom metadata if there is nothing to restore #81373 (issues: #81247, #82019)
Regressions
Search
- Disable numeric sort optimization conditionally #78103
Upgrades
Authentication
- Upgrade to UnboundID LDAP SDK v6.0.2 #79332
Infra/Logging
- Upgrade ECS logging layout to latest version #80500
Search
- Upgrade to Lucene 9 #81426
Security
Snapshot/Restore
- Upgrade repository-hdfs plugin to Hadoop 3 #76897