-->
Elasticsearch version 7.0.0-alpha2
Breaking changes
-
Authentication
-
Circuit Breakers
-
Lower fielddata circuit breaker’s default limit #27162 (issue: #27130)
-
CCR
-
Change get autofollow patterns API response format #36203 (issue: #36049)
-
Index APIs
-
Ranking
-
Forbid negative scores in function_score query #35709 (issue: #33309)
-
Scripting
-
Delete deprecated getValues from ScriptDocValues #36183 (issue: #22919)
-
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
-
ZenDiscovery
-
Make node field in JoinRequest private #36405
Deprecations
-
Core
-
Deprecate use of scientific notation in epoch time parsing #36691
-
Add backcompat for joda time formats #36531
-
Machine Learning
-
Deprecate X-Pack centric ML endpoints #36315 (issue: #35958)
-
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
-
Deprecate X-Pack centric Migration endpoints #35976 (issue: #35958)
-
Monitoring
-
Deprecate /_xpack/monitoring/* in favor of /_monitoring/* #36130 (issue: #35958)
-
Rollup
-
Re-deprecate xpack rollup endpoints #36451 (issue: #36044)
-
Deprecate X-Pack centric rollup endpoints #35962 (issue: #35958)
-
Scripting
-
Adds deprecation logging to ScriptDocValues#getValues. #34279 (issue: #22919)
-
Conditionally use java time api in scripting #31441
-
Search
-
Remove X-Pack centric graph endpoints #36010 (issue: #35958)
-
Security
-
Deprecate X-Pack centric license endpoints #35959 (issue: #35958)
-
Deprecate /_xpack/security/* in favor of /_security/* #36293 (issue: #35958)
-
SQL
-
Deprecate X-Pack SQL translate endpoint #36030
-
Deprecate X-Pack centric SQL endpoints #35964 (issue: #35958)
-
Watcher
-
Deprecate X-Pack centric watcher endpoints #36218 (issue: #35958)
New features
-
Analysis
-
Add support for inlined user dictionary in Nori #36123 (issue: #35842)
-
Add a prebuilt ICU Analyzer #34958 (issue: #34285)
-
Java High Level REST Client
-
Java Low Level REST Client
-
Make warning behavior pluggable per request #36345
-
Add PreferHasAttributeNodeSelector #36005
-
Geo
-
Integrate Lucene’s LatLonShape (BKD Backed GeoShapes) as default
geo_shape
indexing approach #36751 (issue: #35320)
-
Integrate Lucene’s LatLonShape (BKD Backed GeoShapes) as default
geo_shape
indexing approach #35320 (issue: #32039)
-
Machine Learning
-
Add delayed datacheck to the datafeed job runner #35387 (issue: #35131)
-
Mapping
-
Make typeless APIs usable with indices whose type name is different from
_doc
#35790 (issue: #35190)
-
SQL
-
Search
Enhancements
-
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
-
Allow word_delimiter_graph_filter to not adjust internal offsets #36699 (issues: #33710, #34741)
-
Ensure TokenFilters only produce single tokens when parsing synonyms #34331 (issue: #34298)
-
Audit
-
Add "request.id" to file audit logs #35536
-
Authentication
-
Invalidate Token API enhancements - HLRC #36362 (issue: #35388)
-
Add DEBUG/TRACE logs for LDAP bind #36028
-
Add Tests for findSamlRealm #35905
-
Add realm information for Authenticate API #35648
-
Formal support for "password_hash" in Put User #35242 (issue: #34729)
-
Authorization
-
Improve exact index matching performance #36017
-
manage_token
privilege for kibana_system
#35751
-
Grant .tasks access to kibana_system role #35573
-
Build
-
Sounds like typo in exception message #35458
-
Allow set section in setup section of REST tests #34678
-
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
-
Grok fix duplicate patterns JAVACLASS and JAVAFILE #35886
-
Implement Drop Processor #32278 (issue: #23726)
-
Java High Level REST Client
-
Java Low Level REST Client
-
On retry timeout add root exception #25576
-
Monitoring
-
Geo
-
Adds a name of the field to geopoint parsing errors #36529 (issue: #15965)
-
Add support to ShapeBuilders for building Lucene geometry #35707 (issue: #35320)
-
Add ST_WktToSQL function #35416 (issue: #29872)
-
License
-
Require acknowledgement to start_trial license #30135 (issue: #30134)
-
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
-
Introduce Docker images build #36246
-
Move creation of temporary directory to Java #36002 (issue: #31003)
-
Plugins
-
Plugin install: don’t print download progress in batch mode #36361
-
Ranking
-
Recovery
-
Exposed engine must include all operations below global checkpoint during rollback #36159 (issue: #32867)
-
Rollup
-
Add non-X-Pack centric rollup endpoints #36383 (issues: #35958, #35962)
-
Add more diagnostic stats to job #35471
-
Add
wait_for_completion
option to StopRollupJob API #34811 (issue: #34574)
-
Scripting
-
Update joda compat methods to use compat class #36654
-
[Painless] Add boxed type to boxed type casts for method/return #36571
-
[Painless] Add def to boxed type casts #36506
-
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
-
Allow Parallel Restore Operations #36397
-
Repo Creation out of ClusterStateTask #36157 (issue: #9488)
-
Add read-only repository verification #35731 (issue: #35703)
-
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
-
Handle OS pretty name on old OS without OS release #35453 (issue: #35440)
-
Task Management
-
Periodically try to reassign unassigned persistent tasks #36069 (issue: #35792)
-
Only require task permissions #35667 (issue: #35573)
-
Retry if task can’t be written #35054 (issue: #33764)
-
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
-
Aggregations
-
fix MultiValuesSourceFieldConfig toXContent #36525 (issue: #36474)
-
Cache the score of the parent document in the nested agg #36019 (issues: #34555, #35985)
-
Correct implemented interface of ParsedReverseNested #35455 (issue: #35449)
-
Handle IndexOrDocValuesQuery in composite aggregation #35392
-
Audit
-
Fix origin.type for connection_* events #36410
-
Fix IndexAuditTrail rolling restart on rollover edge #35988 (issue: #33867)
-
Authentication
-
Build
-
Use explicit deps on test tasks for check #36325
-
Fix jdbc jar pom to not include deps #36036 (issue: #32014)
-
Fix official plugins list #35661 (issue: #35623)
-
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
-
Modify
BigArrays
to take name of circuit breaker #36461 (issue: #31435)
-
Core
-
Fix CompositeBytesReference#slice to not throw AIOOBE with legal offsets. #35955 (issue: #35950)
-
Suppress CachedTimeThread in hot threads output #35558 (issue: #23175)
-
Upgrade to Joda 2.10.1 #35410 (issue: #33749)
-
Distributed
-
Combine the execution of an exclusive replica operation with primary term update #36116 (issue: #35850)
-
ActiveShardCount should not fail when closing the index #35936
-
Engine
-
Set Lucene version upon index creation. #36038 (issue: #33826)
-
Wrap can_match reader with ElasticsearchDirectoryReader #35857
-
Copy checkpoint atomically when rolling generation #35407
-
Geo
-
More robust handling of ignore_malformed in geoshape parsing #35603 (issues: #34047, #34498)
-
Better handling of malformed geo_points #35554 (issue: #35419)
-
Enables coerce support in WKT polygon parser #35414 (issue: #35059)
-
Index APIs
-
Fix duplicate phrase in shrink/split error message #36734 (issue: #36729)
-
Raise a 404 exception when document source is not found (#33384) #34083 (issue: #33384)
-
Ingest
-
Fix on_failure with Drop processor #36686 (issue: #36151)
-
Support default pipelines + bulk upserts #36618 (issue: #36219)
-
Support default pipeline through an alias #36231 (issue: #35817)
-
License
-
Do not serialize basic license exp in x-pack info #30848
-
Update versions for start_trial after backport #30218 (issue: #30135)
-
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
-
Fix error message when package install fails due to missing Java #36077 (issue: #31845)
-
Add missing entries to conffiles #35810 (issue: #35691)
-
Plugins
-
Ensure that azure stream has socket privileges #28751 (issue: #28662)
-
Recovery
-
Register ResyncTask.Status as a NamedWriteable #36610
-
Rollup
-
Fix rollup search statistics #36674
-
Scripting
-
Properly support no-offset date formatting #36316 (issue: #36306)
-
[Painless] Generate Bridge Methods #36097
-
Fix serialization bug in painless execute api request #36075 (issue: #36050)
-
Actually add joda time back to whitelist #35965 (issue: #35915)
-
Add back joda to whitelist #35915 (issue: #35913)
-
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
-
[Zen2] Respect the no_master_block setting #36478
-
Cancel GetDiscoveredNodesAction when bootstrapped #36423 (issues: #36380, #36381)
-
[Zen2] Only elect master-eligible nodes #35996
-
[Zen2] Remove duplicate discovered peers #35505
Regressions
-
Scripting
-
Use Number as a return value for BucketAggregationScript #35653 (issue: #35351)
Upgrades
-
Ingest
-
Update geolite2 database in ingest geoip plugin #33840
-
Network