IMPORTANT: No additional bug fixes or documentation updates
will be released for this version. For the latest information, see the
current release documentation.
Elasticsearch version 8.0.0
edit
A newer version is available. Check out the latest documentation.
Elasticsearch version 8.0.0
editThe 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
edit-
If you installed Elasticsearch from an archive on an aarch64 platform like Linux ARM or macOS M1, the
elasticuser password and Kibana enrollment token are not generated automatically when starting your node for the first time.After the node starts, generate the
elasticpassword with thebin/elasticsearch-reset-passwordtool:bin/elasticsearch-reset-password -u elastic
Then, create an enrollment token for Kibana with the
bin/elasticsearch-create-enrollment-tokentool: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
edit- Aggregations
-
- Percentiles aggregation: disallow specifying same percentile values twice #52257 (issue: #51871)
- Remove adjacency matrix setting #46327 (issues: #46257, #46324)
-
Remove
MovingAveragepipeline aggregation #39328 -
Remove deprecated
_timeand_termsort orders #39450 - Remove deprecated date histo interval #75000
- Allocation
- Analysis
- Authentication
- CCR
- Cluster Coordination
- Distributed
- Engine
- Features/CAT APIs
- Features/Features
- Features/ILM+SLM
-
-
Add lower bound on
poll_interval#39593 (issue: #39163) -
Make the ILM
freezeaction 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_preferencetotrue#79275 (issues: #76147, #79210)
-
Add lower bound on
- Features/Indices APIs
-
-
Change
prefer_v2_templatesparameter to default to true #55489 (issues: #53101, #55411) -
Remove deprecated
_upgradeAPI #64732 (issue: #21337) - Remove local parameter for get field mapping request #55100 (issue: #55099)
-
Remove
include_type_nameparameter from REST layer #48632 (issue: #41059) -
Remove the
templatefield in index templates #49460 (issue: #21009) - Remove endpoint for freezing indices #78918 (issues: #70192, #77273)
-
Change
- Features/Watcher
-
- Move watcher history to data stream #64252
- Geo
- Infra/Circuit Breakers
-
- Fixed synchronizing inflight breaker with internal variable #40878
- Infra/Core
-
- Limit processors by available processors #44894 (issue: #44889)
-
Remove
nodes/0folder prefix from data path #42489 -
Remove
bootstrap.system_call_filtersetting #72848 -
Remove
fixed_auto_queue_sizethreadpool 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
processorssetting #45905 (issue: #45855) -
Remove the
localparameter 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
pidfilesetting #45940 (issue: #45938) -
Removes
week_yeardate 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
- Infra/Resiliency
- Infra/Scripting
- Infra/Settings
- Ingest
- License
- Machine Learning
- Mapping
- Network
- Packaging
- Recovery
- Reindex
- 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
CommonTermsQueryandcutoff_frequencyparam #42654 (issue: #37096) -
Remove
typequery #47207 (issue: #41059) -
Remove
use_field_mappingformat option for docvalue fields #55622 -
Remove deprecated
SimpleQueryStringBuilderparameters #57200 -
Remove deprecated
search.remotesettings #42381 (issues: #33413, #38556) -
Remove deprecated sort options:
nested_pathandnested_filter#42809 (issue: #27098) - Remove deprecated vector functions #48725 (issue: #48604)
-
Remove support for
_typein searches #68564 (issues: #41059, #68311) - Remove support for sparse vectors #48781 (issue: #48368)
-
Remove the object format for
indices_boost#55078 -
Removes type from
TermVectorsAPIs #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_countnow 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
idfield from theInvalidateApiKeyAPI #66671 (issue: #66317) - Remove the migrate tool #42174
- Compress audit logs #64472 (issue: #63843)
- Remove insecure settings #46147 (issue: #45947)
-
Remove
kibana_dashboard_only_userreserved 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)
-
Blob store compress default to
- TLS
Breaking Java changes
edit- Authentication
- CCR
-
-
Remove the
CcrClient#42816
-
Remove the
- CRUD
- Client
-
-
Remove
SecurityClientfrom x-pack #42471
-
Remove
- Features/ILM+SLM
-
-
Remove the
ILMClient#42817
-
Remove the
- Features/Monitoring
-
-
Remove
MonitoringClientfrom x-pack #42770
-
Remove
- Features/Watcher
-
-
Remove
WatcherClientfrom x-pack #42815
-
Remove
- Infra/Core
- Infra/REST API
-
-
Copy HTTP headers to
ThreadContextstrictly #45945
-
Copy HTTP headers to
- Machine Learning
-
-
Remove the
MachineLearningClient#43108
-
Remove the
- Mapping
-
-
Remove type filter from
GetMappingsAPI #47364 (issue: #41059) -
Remove
typeparameter fromPutMappingRequest.buildFromSimplifiedDef()#50844 (issue: #41059) -
Remove unused parameter from
MetadataFieldMapper.TypeParser#getDefault()#51219 -
Remove
typeparameter fromCIR.mapping(type, object...)#50739 (issue: #41059)
-
Remove type filter from
- Search
-
-
Removes types from
SearchRequestandQueryShardContext#42112
-
Removes types from
- Snapshot/Restore
Deprecations
editNew features
edit- Security
- Snapshot/Restore
- Watcher
-
-
Use
startsWithrather than exact matches for Watcher history template names #82396
-
Use
Enhancements
edit- Analysis
-
-
Move
reload_analyzersendpoint to x-pack #43559
-
Move
- 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-usertool #77322 - New CLI tool to reset password for built-in users #79709
-
Auto-configure the
elasticuser password #78306
- Authorization
-
-
Granting
kibana_systemreserved role access to "all" privileges to.internal.preview.alerts*index #80889 (issues: #76624, #80746, #116374) -
Granting
kibana_systemreserved role access to "all" privileges to .preview.alerts* index #80746 - Granting editor and viewer roles access to alerts-as-data indices #81285
-
Granting
- Cluster Coordination
- Data streams
- EQL
- Engine
- 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
LifecycleExecutionStaterecalculation #81558 (issues: #77466, #79692)
- Features/Indices APIs
- 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_settingsflag 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_negativevalue #75182 (issues: #49543, #51816) - [REST API Compatibility] Clean up x-pack/plugin rest compat tests #74701 (issue: #51816)
-
[REST API Compatibility] Do not return
_docfor empty mappings in template #75448 (issues: #51816, #54160, #70966, #74544) -
[REST API Compatibility] Dummy REST action for
indices.upgradeAPI #75136 (issue: #51816) - [REST API Compatibility] REST Terms vector typed response #73117
-
[REST API Compatibility] Rename
BulkItemResponse.Failuretype 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
RestUpdateActionandRestDeleteAction#73115 (issues: #51816, #54160) -
[REST API Compatibility] Typed endpoints for
get_sourceAPI #73957 (issues: #46587, #46931, #51816) - [REST API Compatibility] Typed endpoints for explain API #73901 (issue: #51816)
-
[REST API Compatibility] Typed endpoints for search
_countAPI #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]
MoreLikeThisQuerywith 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_mappingoption for docvalue #74435 (issue: #55622) -
[REST API Compatibility]
_timeand_termsort orders #74919 (issues: #39450, #51816) -
[REST API Compatability]
templateparameter 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_enterpriseand response changes #75479 (issues: #50067, #50735, #51816, #58217)
- Infra/Scripting
- Infra/Settings
- Ingest
- License
- 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_textaggregation #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_statsto trained model stats #80531 -
The setting
use_auto_machine_memory_percentnow defaultsmax_model_memory_limit#80532 (issue: #80415)
- Mapping
- Monitoring
- Network
- Packaging
- Recovery
- 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
WHEREclause inside subqueries #71362 -
Use Java
Stringmethods 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
0as invalid value formin_childreninhas_childquery #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]
CommonTermsQueryandcutoff_frequencyparameter #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-nodetool #77292 -
Default hasher to
PBKDF2_STRETCHon FIPS mode #76274 -
Add v7
restCompatfor 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
- TLS
- Transform
-
- Prevent old beta transforms from starting #79712
- TSDB
Bug fixes
edit- Aggregations
-
-
Fix BWC issues for
x_pack/usage#55181 (issue: #54847) -
Fix
DoubleBoundsnull serialization #59475 -
Fix
TopHitsAggregationBuilderadding duplicate_scoresort clauses #42179 (issue: #42154) -
Fix
t_testusage stats #54753 (issue: #54744) -
Throw exception if legacy interval cannot be parsed in
DateIntervalWrapper#41972 (issue: #41970)
-
Fix BWC issues for
- Autoscaling
- CCR
- Cluster Coordination
- Data streams
- Distributed
- Features/CAT APIs
- Features/ILM+SLM
- Features/Indices APIs
-
-
Fix
ComposableIndexTemplateequals whencomposed_ofis null #80864
-
Fix
- 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
- Infra/Logging
- Infra/REST API
-
-
Do not allow spaces within
MediaType'sparameters #64650 (issue: #51816) - Handle incorrect header values #64708 (issues: #51816, #64689)
- Ignore media ranges when parsing #64721 (issues: #51816, #64689)
-
RestControllershould not consume request content #44902 (issue: #37504) -
Handle exceptions thrown from
RestCompatibleVersionHelper#80253 (issues: #78214, #79060)
-
Do not allow spaces within
- Infra/Scripting
- Infra/Settings
- 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_lengthis 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
- SQL
- Search
-
-
Check for negative
fromvalues in search request body #54953 (issue: #54897) -
Fix
VectorsFeatureSetUsageserialization 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
-
Check for negative
- Security
-
- Allow access to restricted system indices for reserved system roles #76845
- Snapshot/Restore
Regressions
edit- Search
-
- Disable numeric sort optimization conditionally #78103