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 7.0.0-alpha2
editElasticsearch version 7.0.0-alpha2
editBreaking changes
edit- Authentication
- Circuit Breakers
- CCR
- Index APIs
- Ranking
- Scripting
- Search
-
- Remove the deprecated _termvector endpoint. #36131 (issues: #36098, #8484)
- Remove deprecated Graph endpoints #35956
-
Validate metadata on
_msearch
#35938 (issue: #35869) - Make hits.total an object in the search response #35849 (issue: #33028)
- Remove the distinction between query and filter context in QueryBuilders #35354 (issue: #35293)
- Throw a parsing exception when boost is set in span_or query (#28390) #34112 (issue: #28390)
- ZenDiscovery
-
- Best-effort cluster formation if unconfigured #36215
Breaking Java changes
edit- ZenDiscovery
-
- Make node field in JoinRequest private #36405
Deprecations
edit- Core
- Machine Learning
- Mapping
-
- Deprecate types in index API #36575 (issues: #35190, #35790)
- Deprecate uses of _type as a field name in queries #36503 (issue: #35190)
- Deprecate types in update_by_query and delete_by_query #36365 (issue: #35190)
- For msearch templates, make sure to use the right name for deprecation logging. #36344
- Deprecate types in termvector and mtermvector requests. #36182
- Deprecate types in update requests. #36181
- Deprecate types in document delete requests. #36087
- Deprecate types in get, exists, and multi get. #35930
- Deprecate types in search and multi search templates. #35669
- Deprecate types in explain requests. #35611
- Deprecate types in validate query requests. #35575
- Deprecate types in count and msearch. #35421 (issue: #34041)
- Migration
- Monitoring
- Rollup
- Scripting
- Search
- Security
- SQL
- Watcher
New features
edit- Analysis
- Java High Level REST Client
- Java Low Level REST Client
- Geo
- Machine Learning
- Mapping
- SQL
- Search
Enhancements
edit- Aggregations
-
- Added keyed response to pipeline percentile aggregations 22302 #36392 (issue: #22302)
- Enforce max_buckets limit only in the final reduction phase #36152 (issues: #32125, #35921)
- Histogram aggs: add empty buckets only in the final reduce step #35921
- Handles exists query in composite aggs #35758
- Added parent validation for auto date histogram #35670
- Analysis
- Audit
-
- Add "request.id" to file audit logs #35536
- Authentication
- Authorization
- Build
- CCR
-
- Add time since last auto follow fetch to auto follow stats #36542 (issues: #33007, #35895)
- Clean followed leader index UUIDs in auto follow metadata #36408 (issue: #33007)
- Change AutofollowCoordinator to use wait_for_metadata_version #36264 (issues: #33007, #35895)
- Refactor AutoFollowCoordinator to track leader indices per remote cluster #36031 (issues: #33007, #35895)
- Core
-
- Override the JVM DNS cache policy #36570
- Replace usages of AtomicBoolean based block of code by the RunOnce class #35553 (issue: #35489)
- Added wait_for_metadata_version parameter to cluster state api. #35535
- Extract RunOnce into a dedicated class #35489
- Introduce elasticsearch-core jar #28191 (issue: #27933)
- Rename core module to server #28180 (issue: #27933)
- CRUD
-
- Rename seq# powered optimistic concurrency control parameters to ifSeqNo/ifPrimaryTerm #36757 (issues: #10708, #36148)
- Expose Sequence Number based Optimistic Concurrency Control in the rest layer #36721 (issues: #10708, #36148)
- Add doc’s sequence number + primary term to GetResult and use it for updates #36680 (issues: #10708, #36148)
- Add seq no powered optimistic locking support to the index and delete transport actions #36619 (issues: #10708, #36148)
- Distributed
-
- [Close Index API] Mark shard copy as stale if needed during shard verification #36755
- [Close Index API] Refactor MetadataIndexStateService #36354 (issue: #36249)
- [Close Index API] Add TransportShardCloseAction for pre-closing verifications #36249
- TransportResyncReplicationAction should not honour blocks #35795 (issues: #35332, #35597)
- Expose all permits acquisition in IndexShard and TransportReplicationAction #35540 (issue: #33888)
- [RCI] Check blocks while having index shard permit in TransportReplicationAction #35332 (issue: #33888)
- Engine
-
- Add sequence numbers based optimistic concurrency control support to Engine #36467 (issues: #10708, #36148)
- Require soft-deletes when access changes snapshot #36446
- Use delCount of SegmentInfos to calculate numDocs #36323
- Always configure soft-deletes field of IndexWriterConfig #36196 (issue: #36141)
- Enable soft-deletes by default on 7.0.0 or later #36141
-
Always return false from
refreshNeeded
on ReadOnlyEngine #35837 (issue: #35785) -
Add a
_freeze
/_unfreeze
API #35592 (issue: #34352) - [RCI] Add IndexShardOperationPermits.asyncBlockOperations(ActionListener<Releasable>) #34902 (issue: #33888)
- Features
-
- Simplify deprecation issue levels #36326
- Index APIs
- Ingest
- Java High Level REST Client
-
- Add get users action #36332 (issue: #29827)
- Add delete template API #36320 (issue: #27205)
- Implement get-user-privileges API #36292
- Get Deprecation Info API #36279 (issue: #29827)
- Add support for Follow Stats API #36253 (issue: #33824)
- Add support for CCR Stats API #36213 (issue: #33824)
- Put Role #36209 (issue: #29827)
- Add index templates exist API #36132 (issue: #27205)
- Add support for CCR Get Auto Follow Pattern apis #36049 (issue: #33824)
- Add support for CCR Delete Auto Follow Pattern API #35981 (issue: #33824)
- Remove fromXContent from IndexUpgradeInfoResponse #35934
- Add delete expired data API #35906 (issue: #29827)
- Execute watch API #35868 (issue: #29827)
- Add ability to put user with a password hash #35844 (issue: #35242)
- Add ML find file structure API #35833 (issue: #29827)
- Add support for get roles API #35787 (issue: #29827)
- Added support for CCR Put Auto Follow Pattern API #35780 (issue: #33824)
- XPack ML info action #35777 (issue: #29827)
- ML Delete event from Calendar #35760 (issue: #29827)
- Add ML revert model snapshot API #35750 (issue: #29827)
- ML Get Calendar Events #35747 (issue: #29827)
-
Add high-level REST client API for
_freeze
and_unfreeze
#35723 (issue: #34352) - Fix issue in equals impl for GlobalOperationPrivileges #35721
- ML Delete job from calendar #35713 (issue: #29827)
- ML Add Event To Calendar API #35704 (issue: #29827)
- Add ML update model snapshot API (#35537) #35694 (issue: #29827)
- Add support for CCR Unfollow API #35693 (issue: #33824)
- Clean up PutLicenseResponse #35689 (issue: #35547)
- Clean up StartBasicResponse #35688 (issue: #35547)
- Add support for put privileges API #35679
- ML Add Job to Calendar API #35666 (issue: #29827)
- Add support for CCR Resume Follow API #35638 (issue: #33824)
- Add support for get application privileges API #35556 (issue: #29827)
- Clean up XPackInfoResponse class and related tests #35547
- Add parameters to stopRollupJob API #35545 (issue: #34811)
- Add ML delete model snapshot API #35537 (issue: #29827)
- Add get watch API #35531 (issue: #29827)
- Add ML Update Filter API #35522 (issue: #29827)
- Add ml get filters api #35502 (issue: #29827)
- Add ML get model snapshots API #35487 (issue: #29827)
- Add "_has_privileges" API to Security Client #35479 (issue: #29827)
- Add Delete Privileges API to HLRC #35454 (issue: #29827)
- Add support for CCR Put Follow API #35409
- Add ML delete filter action #35382 (issue: #29827)
- Add delete user action #35294 (issue: #29827)
- HLRC for _mtermvectors #35266 (issues: #27205, #33447)
- Reindex API with wait_for_completion false #35202 (issue: #27205)
- Add watcher stats API #35185 (issue: #29827)
- HLRC support for getTask #35166 (issue: #27205)
- Add GetRollupIndexCaps API #35102 (issue: #29827)
- HLRC: migration api - upgrade #34898 (issue: #29827)
- Add stop rollup job support to HL REST Client #34702 (issue: #29827)
- Bulk Api support for global parameters #34528 (issue: #26026)
- Add delete rollup job support to HL REST Client #34066 (issue: #29827)
- Add support for get license basic/trial status API #33176 (issue: #29827)
- Add machine learning open job #32860 (issue: #29827)
- Add ML HLRC wrapper and put_job API call #32726
- Add Get Snapshots High Level REST API #31537 (issue: #27205)
- Java Low Level REST Client
-
- On retry timeout add root exception #25576
- Monitoring
- Geo
- License
- Machine Learning
-
- Create the ML annotations index #36731 (issues: #26034, #33376)
- Split in batches and migrate all jobs and datafeeds #36716 (issue: #32905)
- Add cluster setting to enable/disable config migration #36700 (issue: #32905)
- Add audits when deprecation warnings occur with datafeed start #36233
- Add lazy parsing for DatafeedConfig:Aggs,Query #36117
- Add support for lazy nodes (#29991) #34538 (issue: #29991)
- Network
-
- Unify transport settings naming #36623
- Add sni name to SSLEngine in netty transport #33144 (issue: #32517)
- Add cors support to NioHttpServerTransport #30827 (issue: #28898)
- Reintroduce mandatory http pipelining support #30820
- Make http pipelining support mandatory #30695 (issues: #28898, #29500)
- Add nio http server transport #29587 (issue: #28898)
- Selectors operate on channel contexts #28468 (issue: #27260)
- Unify nio read / write channel contexts #28160 (issue: #27260)
- Create nio-transport plugin for NioTransport #27949 (issue: #27260)
- Add elasticsearch-nio jar for base nio classes #27801 (issue: #27802)
- Add NioGroup for use in different transports #27737 (issue: #27260)
- Add read timeouts to http module #27713
-
Implement byte array reusage in
NioTransport
#27696 (issue: #27563) - Introduce resizable inbound byte buffer #27551 (issue: #27563)
- Decouple nio constructs from the tcp transport #27484 (issue: #27260)
- Remove manual tracking of registered channels #27445 (issue: #27260)
- Remove tcp profile from low level nio channel #27441 (issue: #27260)
-
Decouple
ChannelFactory
from Tcp classes #27286 (issue: #27260)
- Packaging
- Plugins
-
- Plugin install: don’t print download progress in batch mode #36361
- Ranking
- Recovery
- Rollup
- Scripting
- Settings
- Search
-
- Add copy constructor to SearchRequest #36641 (issue: #32125)
- Add raw sort values to SearchSortValues transport serialization #36617 (issue: #32125)
- Add sort and collapse info to SearchHits transport serialization #36555 (issue: #32125)
- Add default methods to DocValueFormat #36480
- Respect indices options on _msearch #35887
- Allow efficient can_match phases on frozen indices #35431 (issues: #34352, #34357)
- Add a new query type - ScriptScoreQuery #34533 (issues: #23850, #27588, #30303)
- Security
- Snapshot/Restore
- SQL
-
- Extend the ODBC metric by differentiating between 32 and 64bit platforms #36753 (issue: #36740)
- Fix wrong appliance of StackOverflow limit for IN #36724 (issue: #36592)
- Introduce NOW/CURRENT_TIMESTAMP function #36562 (issue: #36534)
- Move requests' parameters to requests JSON body #36149 (issue: #35992)
- Make INTERVAL millis optional #36043 (issue: #36032)
- Implement data type verification for conditionals #35916 (issue: #35907)
- Implement GREATEST and LEAST functions #35879 (issue: #35878)
-
Implement null safe equality operator
<=>
#35873 (issue: #35871) - SYS COLUMNS returns ODBC specific schema #35870 (issue: #35376)
- Polish grammar for intervals #35853
- Add filtering to SYS TYPES #35852 (issue: #35342)
- Implement NULLIF(expr1, expr2) function #35826 (issue: #35818)
- Lock down JDBC driver #35798 (issue: #35437)
- Implement NVL(expr1, expr2) #35794 (issue: #35782)
- Implement ISNULL(expr1, expr2) #35793 (issue: #35781)
- Implement IFNULL variant of COALESCE #35762 (issue: #35749)
- XPack FeatureSet functionality #35725 (issue: #34821)
- Perform lazy evaluation of mismatched mappings #35676 (issues: #35659, #35675)
- Improve validation of unsupported fields #35675 (issue: #35673)
- Move internals from Joda to java.time #35649 (issue: #35633)
- Stats
- Task Management
- ZenDiscovery
-
- Add discovery types to cluster stats #36442
-
Introduce
zen2
discovery type #36298 - Zen2: Persist cluster states the old way on non-master-eligible nodes #36247 (issue: #3)
- [Zen2] Storage layer WriteStateException propagation #36052
- [Zen2] Implement Tombstone REST APIs #36007
- [Zen2] Update default for USE_ZEN2 to true #35998
- [Zen2] Add warning if cluster fails to form fast enough #35993
- [Zen2] Allow Setting a List of Bootstrap Nodes to Wait for #35847
- [Zen2] VotingTombstone class #35832
- [Zen2] PersistedState interface implementation #35819
- [Zen2] Support rolling upgrades from Zen1 #35737
- [Zen2] Add lag detector #35685
- [Zen2] Move ClusterState fields to be persisted to ClusterState.Metadata #35625
- [Zen2] Introduce ClusterBootstrapService #35488
- [Zen2] Introduce vote withdrawal #35446
- Zen2: Add basic Zen1 transport-level BWC #35443
Bug fixes
edit- Aggregations
- Audit
- Authentication
- Build
- CCR
-
- Fix follow stats API’s follower index filtering feature #36647
- AutoFollowCoordinator should tolerate that auto follow patterns may be removed #35945 (issue: #35937)
- Only auto follow indices when all primary shards have started #35814 (issue: #35480)
- Avoid NPE in follower stats when no tasks metadata #35802
- Fix the names of CCR stats endpoints in usage API #35438
- Circuit Breakers
- Core
- Distributed
- Engine
- Geo
- Index APIs
- Ingest
- License
- Machine Learning
-
- Interrupt Grok in file structure finder timeout #36588
- Prevent stack overflow while copying ML jobs and datafeeds #36370 (issue: #36360)
- Adjust file structure finder parser config #35935
- Fix find_file_structure NPE with should_trim_fields #35465 (issue: #35462)
- Prevent notifications being created on deletion of a non existent job #35337 (issues: #34058, #35336)
- Clear Job#finished_time when it is opened (#32605) #32755
- Fix thread leak when waiting for job flush (#32196) #32541 (issue: #32196)
- Fix CPoissonMeanConjugate sampling error. #335
- Network
-
- Do not resolve addresses in remote connection info #36671 (issue: #35658)
- Always compress based on the settings #36522 (issue: #36399)
- http.publish_host Should Contain CNAME #32806 (issue: #22029)
- Adjust SSLDriver behavior for JDK11 changes #32145 (issues: #32122, #32144)
- Add TRACE, CONNECT, and PATCH http methods #31035 (issue: #31017)
- Transport client: Don’t validate node in handshake #30737 (issue: #30141)
- Fix issue with finishing handshake in ssl driver #30580
- Remove potential nio selector leak #27825
- Fix issue where the incorrect buffers are written #27695 (issue: #27551)
- Do not set SO_LINGER on server channels #26997
- Do not set SO_LINGER to 0 when not shutting down #26871 (issue: #26764)
- Release pipelined http responses on close #26226
- Packaging
- Plugins
- Recovery
-
- Register ResyncTask.Status as a NamedWriteable #36610
- Rollup
-
- Fix rollup search statistics #36674
- Scripting
- Settings
- SQL
-
- Fix translation of LIKE/RLIKE keywords #36672 (issues: #36039, #36584)
- Scripting support for casting functions CAST and CONVERT #36640 (issue: #36061)
- Fix translation to painless for conditionals #36636 (issue: #36631)
- Concat should be always not nullable #36601 (issue: #36169)
- Fix MOD() for long and integer arguments #36599 (issue: #36364)
- Fix issue with complex HAVING and GROUP BY ordinal #36594 (issue: #36059)
- Be lenient for tests involving comparison to H2 but strict for csv spec tests #36498 (issue: #36483)
- Non ISO 8601 versions of DAY_OF_WEEK and WEEK_OF_YEAR functions #36358 (issue: #36263)
- Do not ignore all fields whose names start with underscore #36214 (issue: #36206)
- Fix issue with wrong data type for scripted Grouping keys #35969 (issue: #35662)
- Fix translation of math functions to painless #35910 (issue: #35654)
- Fix jdbc jar to include deps #35602
- Fix query translation for scripted queries #35408 (issue: #35232)
- Clear the cursor if nested inner hits are enough to fulfill the query required limits #35398 (issue: #35176)
- Introduce IsNull node to simplify expressions #35206 (issues: #34876, #35171)
- The SSL default configuration shouldn’t override the https protocol if used #34635 (issue: #33817)
- Minor fix for javadoc #32573 (issue: #32553)
- Search
-
- Inner hits fail to propagate doc-value format. #36310
- Fix custom AUTO issue with Fuzziness#toXContent #35807 (issue: #33462)
- Fix analyzed prefix query in query_string #35756 (issue: #31702)
- Fix problem with MatchNoDocsQuery in disjunction queries #35726 (issue: #34708)
- Fix phrase_slop in query_string query #35533 (issue: #35125)
- Add a More Like This query routing requirement check (#29678) #33974
- Security
- Snapshot/Restore
-
- Upgrade GCS Dependencies to 1.55.0 #36634 (issues: #35229, #35459)
- Improve Resilience SnapshotShardService #36113 (issue: #32265)
- Keep SnapshotsInProgress State in Sync with Routing Table #35710
- Ensure that gcs client creation is privileged #25938 (issue: #25932)
- Make calls to CloudBlobContainer#exists privileged #25937 (issue: #25931)
- Watcher
- ZenDiscovery