[[release-notes-7.0.0-rc2]]
== {es} version 7.0.0-rc2

Also see <<breaking-changes-7.0,Breaking changes in 7.0.0>>.

[[deprecation-7.0.0-rc2]]
[discrete]
=== Deprecations

Analysis::
* Remove `nGram` and  `edgeNGram` token filter names (#38911) {es-pull}39070[#39070] (issues: {es-issue}30209[#30209], {es-issue}38911[#38911])

Graph::
* Deprecate types in `_graph/explore` calls. {es-pull}40466[#40466]



[[enhancement-7.0.0-rc2]]
[discrete]
=== Enhancements

CCR::
* Introduce forget follower API {es-pull}39718[#39718] (issue: {es-issue}37165[#37165])

Cluster Coordination::
* Remove timeout task after completing cluster state publication {es-pull}40411[#40411]
* Use default discovery implementation for single-node discovery {es-pull}40036[#40036]
* Do not log unsuccessful join attempt each time {es-pull}39756[#39756]

Distributed::
* Allow retention lease operations under blocks {es-pull}39089[#39089] (issues: {es-issue}34648[#34648], {es-issue}37165[#37165])
* Remove retention leases when unfollowing {es-pull}39088[#39088] (issues: {es-issue}34648[#34648], {es-issue}37165[#37165])
* Introduce retention lease state file {es-pull}39004[#39004] (issues: {es-issue}37165[#37165], {es-issue}38588[#38588], {es-issue}39032[#39032])
* Enable soft-deletes by default for 7.0+ indices {es-pull}38929[#38929] (issue: {es-issue}36141[#36141])

Engine::
* Also mmap cfs files for hybridfs {es-pull}38940[#38940] (issue: {es-issue}36668[#36668])

Infra/Core::
* Enhancements to IndicesQueryCache. {es-pull}39099[#39099] (issue: {es-issue}37117[#37117])

Infra/Packaging::
* Add no-jdk distributions {es-pull}39882[#39882]

Machine Learning::
* [ML] Allow stop unassigned datafeed and relax unset upgrade mode wait {es-pull}39034[#39034]

Mapping::
* Introduce a parameter suppress_types_warnings. {es-pull}38923[#38923]

Recovery::
* Do not wait for advancement of checkpoint in recovery {es-pull}39006[#39006] (issues: {es-issue}38949[#38949], {es-issue}39000[#39000])

SQL::
* SQL: add "fuzziness" option to QUERY and MATCH function predicates {es-pull}40529[#40529] (issue: {es-issue}40495[#40495])
* SQL: add "validate.properties" property to JDBC's allowed list of settings {es-pull}39050[#39050] (issue: {es-issue}38068[#38068])

Search::
* Avoid BytesRef's copying in ScriptDocValues's Strings {es-pull}29581[#29581] (issue: {es-issue}29567[#29567])

Security::
* Types removal security index template {es-pull}39705[#39705] (issue: {es-issue}38637[#38637])
* Types removal security index template {es-pull}39542[#39542] (issue: {es-issue}38637[#38637])

Snapshot/Restore::
* Mark Deleted Snapshot Directories with Tombstones {es-pull}40228[#40228] (issue: {es-issue}39852[#39852])

Store::
* Add option to force load term dict into memory {es-pull}39741[#39741]

Features/Monitoring::
* Remove types from internal monitoring templates and bump to api 7 {es-pull}39888[#39888] (issue: {es-issue}38637[#38637])

Features/Watcher::
* Remove the index type from internal watcher indexes {es-pull}39761[#39761] (issue: {es-issue}38637[#38637])

Infra/Core::
* Change zone formatting for all printers {es-pull}39568[#39568] (issue: {es-issue}38471[#38471])


[[bug-7.0.0-rc2]]
[discrete]
=== Bug fixes

Analysis::
* Fix PreConfiguredTokenFilters getSynonymFilter() implementations {es-pull}38839[#38839] (issue: {es-issue}38793[#38793])

Audit::
* LoggingAuditTrail correctly handle ReplicatedWriteRequest {es-pull}39925[#39925] (issue: {es-issue}39555[#39555])

Authentication::
* Correct authenticate response for API key {es-pull}39684[#39684]
* Fix security index auto-create and state recovery race {es-pull}39582[#39582]

CCR::
* Fix shard follow task startup error handling {es-pull}39053[#39053] (issue: {es-issue}38779[#38779])
* Filter out upgraded version index settings when starting index following {es-pull}38838[#38838] (issue: {es-issue}38835[#38835])

CRUD::
* Store Pending Deletions Fix {es-pull}40345[#40345] (issue: {es-issue}40249[#40249])
* ShardBulkAction ignore primary response on primary {es-pull}38901[#38901]

Cluster Coordination::
* Do not perform cleanup if Manifest write fails with dirty exception {es-pull}40519[#40519] (issue: {es-issue}39077[#39077])
* Cache compressed cluster state size {es-pull}39827[#39827] (issue: {es-issue}39806[#39806])
* Drop node if asymmetrically partitioned from master {es-pull}39598[#39598]
* Fixing the custom object serialization bug in diffable utils. {es-pull}39544[#39544]
* Clean GatewayAllocator when stepping down as master {es-pull}38885[#38885]

Distributed::
* Enforce retention leases require soft deletes {es-pull}39922[#39922] (issue: {es-issue}39914[#39914])
* Treat TransportService stopped error as node is closing {es-pull}39800[#39800] (issue: {es-issue}39584[#39584])
* Use cause to determine if node with primary is closing {es-pull}39723[#39723] (issue: {es-issue}39584[#39584])
* Don’t ack if unable to remove failing replica {es-pull}39584[#39584] (issue: {es-issue}39467[#39467])
* Fix NPE on Stale Index in IndicesService {es-pull}38891[#38891] (issue: {es-issue}38845[#38845])

Engine::
* Advance max_seq_no before add operation to Lucene {es-pull}38879[#38879] (issue: {es-issue}31629[#31629])

Features/Features::
* Deprecation check for indices with very large numbers of fields {es-pull}39869[#39869] (issue: {es-issue}39851[#39851])

Features/ILM::
* Correct ILM metadata minimum compatibility version {es-pull}40569[#40569] (issue: {es-issue}40565[#40565])
* Handle null retention leases in WaitForNoFollowersStep {es-pull}40477[#40477]

Features/Ingest::
* Ingest ingest then create index {es-pull}39607[#39607] (issues: {es-issue}32758[#32758], {es-issue}32786[#32786], {es-issue}36545[#36545])

Features/Monitoring::
* Don't emit deprecation warnings on calls to the monitoring bulk API. {es-pull}39805[#39805] (issue: {es-issue}39336[#39336])

Features/Watcher::
* Fix Watcher stats class cast exception {es-pull}39821[#39821] (issue: {es-issue}39780[#39780])
* Use any index specified by .watches for Watcher {es-pull}39541[#39541] (issue: {es-issue}39478[#39478])
* Resolve concurrency with watcher trigger service {es-pull}39092[#39092] (issue: {es-issue}39087[#39087])

Geo::
* Geo Point parse error fix {es-pull}40447[#40447] (issue: {es-issue}17617[#17617])

Highlighting::
* Bug fix for AnnotatedTextHighlighter - port of 39525 {es-pull}39750[#39750] (issue: {es-issue}39525[#39525])

Infra/Core::
* Allow single digit milliseconds in strict date parsing {es-pull}40676[#40676] (issue: {es-issue}40403[#40403])
* Parse composite patterns using ClassicFormat.parseObject {es-pull}40100[#40100] (issue: {es-issue}39916[#39916])
* Bat scripts to work with JAVA_HOME with parantheses {es-pull}39712[#39712] (issues: {es-issue}30606[#30606], {es-issue}33405[#33405], {es-issue}38578[#38578], {es-issue}38624[#38624])
* Change licence expiration date pattern {es-pull}39681[#39681] (issue: {es-issue}39136[#39136])
* Fix DateFormatters.parseMillis when no timezone is given {es-pull}39100[#39100] (issue: {es-issue}39067[#39067])
* Don't close caches while there might still be in-flight requests. {es-pull}38958[#38958] (issue: {es-issue}37117[#37117])

Infra/Packaging::
* Use TAR instead of DOCKER build type before 6.7.0 {es-pull}40723[#40723] (issues: {es-issue}39378[#39378], {es-issue}40511[#40511])

Infra/REST API::
* Update spec files that erroneously documented parts as optional  {es-pull}39122[#39122]
* ilm.explain_lifecycle documents human again {es-pull}39113[#39113]
* Index on rollup.rollup_search.json is a list {es-pull}39097[#39097]

MULTIPLE AREA LABELS::
* metric on watcher stats is a list not an enum {es-pull}39114[#39114]

Machine Learning::
* [ML] Fix datafeed skipping first bucket after lookback when aggs are … {es-pull}39859[#39859] (issue: {es-issue}39842[#39842])
* [ML] refactoring lazy query and agg parsing {es-pull}39776[#39776] (issue: {es-issue}39528[#39528])
* [ML] Stop the ML memory tracker before closing node {es-pull}39111[#39111] (issue: {es-issue}37117[#37117])

Mapping::
* Optimise rejection of out-of-range `long` values {es-pull}40325[#40325] (issues: {es-issue}26137[#26137], {es-issue}40323[#40323])

Recovery::
* Recover peers from translog, ignoring soft deletes {es-pull}38904[#38904] (issue: {es-issue}37165[#37165])
* Retain history for peer recovery using leases {es-pull}38855[#38855]

Rollup::
* Remove timezone validation on rollup range queries {es-pull}40647[#40647]

SQL::
* SQL: Fix display size for DATE/DATETIME {es-pull}40669[#40669]
* SQL: have LIKE/RLIKE use wildcard and regexp queries {es-pull}40628[#40628] (issue: {es-issue}40557[#40557])
* SQL: Fix getTime() methods in JDBC {es-pull}40484[#40484]
* SQL: SYS TABLES: enumerate tables of requested types {es-pull}40535[#40535] (issue: {es-issue}40348[#40348])
* SQL: passing an input to the CLI "freezes" the CLI after displaying an error message {es-pull}40164[#40164] (issue: {es-issue}40557[#40557])
* SQL: Wrap ZonedDateTime parameters inside scripts {es-pull}39911[#39911] (issue: {es-issue}39877[#39877])
* SQL: ConstantProcessor can now handle NamedWriteable {es-pull}39876[#39876] (issue: {es-issue}39875[#39875])
* SQL: Extend the multi dot field notation extraction to lists of values {es-pull}39823[#39823] (issue: {es-issue}39738[#39738])
* SQL: values in datetime script aggs should be treated as long {es-pull}39773[#39773] (issue: {es-issue}37042[#37042])
* SQL: Don't allow inexact fields for MIN/MAX {es-pull}39563[#39563] (issue: {es-issue}39427[#39427])
* SQL: Fix merging of incompatible multi-fields {es-pull}39560[#39560] (issue: {es-issue}39547[#39547])
* SQL: fix COUNT DISTINCT column name {es-pull}39537[#39537] (issue: {es-issue}39511[#39511])
* SQL: Enable accurate hit tracking on demand {es-pull}39527[#39527] (issue: {es-issue}37971[#37971])
* SQL: ignore UNSUPPORTED fields for JDBC and ODBC modes in 'SYS COLUMNS' {es-pull}39518[#39518] (issue: {es-issue}39471[#39471])
* SQL: enforce JDBC driver - ES server version parity {es-pull}38972[#38972] (issue: {es-issue}38775[#38775])
* SQL: fall back to using the field name for column label {es-pull}38842[#38842] (issue: {es-issue}38831[#38831])

Search::
* Fix Fuzziness#asDistance(String) {es-pull}39643[#39643] (issue: {es-issue}39614[#39614])

Security::
* Remove dynamic objects from security index {es-pull}40499[#40499] (issue: {es-issue}35460[#35460])
* Fix libs:ssl-config project setup {es-pull}39074[#39074]
* Do not create the missing index when invoking getRole {es-pull}39039[#39039]

Snapshot/Restore::
* Blob store compression fix {es-pull}39073[#39073]



[[upgrade-7.0.0-rc2]]
[discrete]
=== Upgrades

Snapshot/Restore::
* plugins/repository-gcs: Update google-cloud-storage/core to 1.59.0 {es-pull}39748[#39748] (issue: {es-issue}39366[#39366])

Search::
* Upgrade to Lucene 8.0.0 GA {es-pull}39992[#39992] (issue: {es-issue}39640[#39640])

