Elasticsearch version 6.7.0

edit

Elasticsearch version 6.7.0

edit

Also see Breaking changes in 6.7.

Known issues

edit

A new docker build_type value was introduced in 6.7.0 for Docker images, which caused two problems:

  • If you perform a rolling upgrade to 6.7.0 on nodes that are running the official Docker container, they cannot rejoin the cluster. Upgrade to 6.7.1 instead or perform a full cluster restart upgrade. (issue: #40784)
  • If you have a 6.6 or earlier Java High Level REST client, it cannot understand the new build_type value. For example, it cannot read main responses on / from a cluster that’s running 6.7.0. Upgrade your client to 6.7.0 or later. (issue: #40511)

    Features/ILM
    If an index is configured with an index.lifecycle.name that refers to a policy that does not exist, when index lifecycle management is stopped, index lifecycle management’s status will remain as STOPPING until all policies that do not exist are removed from any indices by using the Remove Policy API. (issue: #40824)
    Deprecation Logging
    In a mixed cluster environment where one of the nodes is pre 6.7 but coordinating node is already upgraded to 6.7 an exception will be thrown when a deprecation warning is emitted on pre 6.7 node. it was introduced by (PR: #37622) in order to speed up the performance of header warning parsing. (issue: #60561)

Breaking changes

edit
Authentication
  • The TokenService no longer accepts tokens generated by Elasticsearch 6.1 or earlier #38881
CCR
  • Follow stats api should return a 404 when requesting stats for a non existing index #37220 (issue: #37021)
Distributed
Infra/Packaging
  • Package ingest-user-agent as a module #36956
  • Package ingest-geoip as a module #36898
Ranking
  • Forbid negative field boosts in analyzed queries #37930 (issue: #33309)

Breaking Java changes

edit
Infra/Core

Deprecations

edit
Analysis
Audit
CRUD
  • Deprecate support for internal versioning for concurrency control #38451 (issues: #10708, #38254)
Cluster Coordination
  • Deprecate size in cluster state response #39951 (issue: #39806)
Features/Features
  • Deprecate Migration Assistance and Upgrade APIs #40072 (issue: #40014)
Features/Java High Level REST Client
  • Deprecate HLRC EmptyResponse used by security #37540 (issue: #36938)
Features/Java Low Level REST Client
  • Deprecate the low-level REST client on JDK 7 #38542 (issue: #29607)
  • Deprecate maxRetryTimeout in RestClient and increase default value #38425 (issue: #38085)
Features/Watcher
  • Deprecate Hipchat Watcher actions #39160
Infra/Core
  • Core: Deprecate negative epoch timestamps #36793
Infra/Packaging
  • Deprecate fallback to java on PATH #37990
Infra/REST API
  • Deprecate requests that have an unconsumed body #37534 (issue: #37504)
Machine Learning
  • Add ml_settings entry to HLRC and Docs for deprecation_info #38118
  • Datafeed deprecation checks #37932
  • Adjust structure finder for Joda to Java time migration #37306
Mapping
  • Deprecate types in get field mapping API #37667 (issue: #35190)
  • Deprecate types in the put mapping API. #37280 (issues: #29453, #37285)
  • Support include_type_name in the field mapping and index template APIs. #37210
  • Deprecate types in create index requests. #37134 (issues: #29453, #37285)
Network
  • Add TLS version changes to deprecation checks #37793 (issue: #37512)
  • Issue deprecation warning if TLSv1.0 is used without explicit config #37788 (issue: #37512)
  • Add deprecation warnings for ssl config fallback #36847 (issue: #36846)
Security

New features

edit
Authentication
  • Add support for API keys to access Elasticsearch #38291 (issue: #34383)
Authorization
CCR
CRUD
  • Make _doc work as an alias of the actual type of an index. #39505 (issue: #39469)
Features/ILM
Features/Ingest
  • Enable grok processor to support long, double and boolean #27896
Machine Learning
  • Add set_upgrade_mode API endpoint #37837
Mapping
  • Give precedence to index creation when mixing typed templates with typeless index creation and vice-versa. #37871 (issue: #37773)
  • Add an include_type_name option to 6.x. (#29453) #37147 (issue: #35190)
SQL
  • SQL: Allow sorting of groups by aggregates #38042 (issue: #35118)
  • SQL: Implement FIRST/LAST aggregate functions #37936 (issue: #35639)
  • SQL: Introduce SQL DATE data type #37693 (issue: #37340)
Security
  • Switch internal security index to ".security-7" #39337 (issue: #39284)

Enhancements

edit
Aggregations
  • Add Composite to AggregationBuilders #38207 (issue: #38020)
  • Allow nested fields in the composite aggregation #37178 (issue: #28611)
  • Remove single shard optimization when suggesting shard_size #37041 (issue: #32125)
  • Use List instead of priority queue for stable sorting in bucket sort aggregator #36748 (issue: #36322)
  • Keys are compared in BucketSortPipelineAggregation so making key type… #36407
Audit
  • Security Audit includes HTTP method for requests #37322 (issue: #29765)
  • Add X-Forwarded-For to the logfile audit #36427
Authentication
  • Security: propagate auth result to listeners #36900 (issue: #30794)
  • Security: reorder realms based on last success #36878
  • Deprecation check for Auth realm setting structure #36664 (issue: #36024)
Authorization
CCR
  • Reduce retention lease sync intervals #40302
  • Introduce forget follower API #39718 (issue: #37165)
  • Renew retention leases while following #39335 (issues: #37165, #38718)
  • Reduce refresh when lookup term in FollowingEngine #39184
  • Integrate retention leases to recovery from remote #38829 (issue: #37165)
  • Enable removal of retention leases #38751 (issue: #37165)
  • Concurrent file chunk fetching for CCR restore #38495
  • Tighten mapping syncing in ccr remote restore #38071 (issues: #36879, #37887)
  • Do not allow put mapping on follower #37675 (issue: #30086)
  • Added ccr to xpack usage infrastructure #37256 (issue: #37221)
  • [CCR] FollowingEngine should fail with 403 if operation has no seqno assigned #37213
  • [CCR] Added auto_follow_exception.timestamp field to auto follow stats #36947
CRUD
Client
  • Fixed required fields and paths list #39358
Cluster Coordination
  • Expose minimum_master_nodes in cluster state #37811 (issue: #37701)
Distributed
Docs Infrastructure
  • Align generated release notes with doc standards #39234 (issue: #39155)
Engine
  • Also mmap cfs files for hybridfs #38940 (issue: #36668)
  • Specialize pre-closing checks for engine implementations #38702
  • Ensure that max seq # is equal to the global checkpoint when creating ReadOnlyEngines #37426
  • Enable Bulk-Merge if all source remains #37269
  • Introduce time-based retention policy for soft-deletes #34943 (issue: #34908)
Features/CAT APIs
  • Expose search.throttled on _cat/indices #37073 (issue: #34352)
Features/Features
  • Deprecation check for No Master Block setting #38383 (issue: #36024)
  • Run Node deprecation checks locally #38065 (issue: #37845)
  • Watcher notification settings Upgrade checks #36907
Features/ILM
  • Ensure ILM policies run safely on leader indices #38140 (issue: #34648)
  • Skip Shrink when numberOfShards not changed #37953 (issue: #33275)
  • Inject Unfollow before Rollover and Shrink #37625 (issue: #34648)
  • Add set_priority action to ILM #37397 (issue: #36905)
  • [ILM] Add Freeze Action #36910 (issue: #34630)
Features/Indices APIs
  • New mapping signature and mapping string source fixed. #37401
Features/Ingest
  • minor updates for user-agent ecs for 6.7 #39213 (issue: #38757)
  • Dep. check for ECS changes to User Agent processor #38362 (issue: #36024)
  • Add ECS schema for user-agent ingest processor #37727 (issue: #37329)
  • ingest: compile mustache template only if field includes {{' #37207 (issue: #37120)
  • Move ingest-geoip default databases out of config #36949 (issue: #36898)
Features/Java High Level REST Client
  • HLRC: Fix strict setting exception handling #37247 (issue: #37090)
  • HLRC: Use nonblocking entity for requests #32249
Features/Watcher
  • Move watcher to use seq# and primary term for concurrency control #37977 (issues: #10708, #37872)
Infra/Core
  • Use DateFormatter in monitoring instead of joda code #38309
  • Use dateformatter in ingest-common to log deprecations #38099
  • Add simple method to write collection of writeables #37448 (issue: #37398)
  • Date/Time parsing: Use java time API instead of exception handling #37222
  • [API] spelling: interruptible #37049 (issue: #37035)
  • restrict node start-up when cluster name in data path #36519 (issue: #32661)
Infra/Logging
Infra/Packaging
  • Upgrade bundled JDK and Docker images to JDK 12 #40229
  • Change file descriptor limit to 65535 #37537 (issue: #35839)
  • Exit batch files explictly using ERRORLEVEL #29583 (issue: #29582)
Infra/Scripting
  • Add getZone to JodaCompatibleZonedDateTime #37084
Infra/Settings
  • Provide a clearer error message on keystore add #39327 (issue: #39324)
  • Separate out validation of groups of settings #34184
License
  • Handle malformed license signatures #37137 (issue: #35340)
Machine Learning
  • Allow stop unassigned datafeed and relax unset upgrade mode wait #39034
  • Move ML Optimistic Concurrency Control to Seq No #38278 (issues: #10708, #36148)
  • Add upgrade mode docs, hlrc, and fix bug #37942
  • Tighten up use of aliases rather than concrete indices #37874
  • Add support for single bucket aggs in Datafeeds #37544 (issue: #36838)
  • Migrate unallocated jobs and datafeeds #37536 (issue: #32905)
  • Adjust seccomp filter for Fedora 29. #354
Mapping
  • Only issue a deprecation warning if include_type_name is not set. #38825 (issue: #35190)
  • Log document id when MapperParsingException occurs #37800 (issue: #37658)
  • Types removal - add constants for include_type_names #37304
  • Deprecation check for index_options on numeric fields #37026 (issue: #36024)
  • Deprecation check for indices with multiple types #36952 (issues: #35190, #36024)
  • Use index-prefix fields for terms of length min_chars - 1 #36703
Recovery
  • Do not wait for advancement of checkpoint in recovery #39006 (issues: #38949, #39000)
  • SyncedFlushService.getShardRoutingTable() should use metadata to check for index existence #37691 (issue: #33888)
  • Make prepare engine step of recovery source non-blocking #37573 (issue: #37174)
  • Make recovery source send operations non-blocking #37503 (issue: #37458)
  • Prepare to make send translog of recovery non-blocking #37458 (issue: #37291)
  • Make finalize step of recovery source non-blocking #37388 (issue: #37291)
  • Make recovery source partially non-blocking #37291 (issue: #36195)
  • Do not mutate RecoveryResponse #37204 (issue: #37174)
  • Don’t block on peer recovery on the target side #37076 (issue: #36195)
  • Reduce recovery time with compress or secure transport #36981 (issue: #33844)
Rollup
  • Replace the TreeMap in the composite aggregation #36675
SQL
  • SQL: Enhance checks for inexact fields #39427 (issue: #38501)
  • SQL: change the default precision for CURRENT_TIMESTAMP function #39391 (issue: #39288)
  • SQL: add "validate.properties" property to JDBC’s allowed list of settings #39050 (issue: #38068)
  • SQL: Allow look-ahead resolution of aliases for WHERE clause #38450 (issue: #29983)
  • SQL: Implement CURRENT_DATE #38175 (issue: #38160)
  • SQL: Generate relevant error message when grouping functions are not used in GROUP BY #38017 (issue: #37952)
  • SQL: Skip the nested and object field types in case of an ODBC request #37948 (issue: #37801)
  • SQL: Add protocol tests and remove jdbc_type from drivers response #37516 (issues: #36635, #36882)
  • SQL: Remove slightly used meta commands #37506 (issue: #37409)
  • SQL: Describe aliases as views #37496 (issue: #37422)
  • SQL: Make FULL non-reserved keyword in the grammar #37377 (issue: #37376)
  • SQL: Use declared source for error messages #37161
  • SQL: Improve error message when unable to translate to ES query DSL #37129 (issue: #37040)
  • [API] spelling: subtract #37055 (issue: #37035)
  • [API] spelling: similar #37054 (issue: #37035)
  • [API] spelling: input #37048 (issue: #37035)
  • SQL: Enhance message for PERCENTILE[_RANK] with field as 2nd arg #36933 (issue: #36903)
  • SQL: Preserve original source for each expression #36912 (issue: #36894)
Search
  • Add finalReduce flag to SearchRequest #38104 (issues: #37000, #37838)
  • Expose sequence number and primary terms in search responses #37639
  • Allow field types to optimize phrase prefix queries #37436 (issue: #31921)
  • Add support for providing absolute start time to SearchRequest #37142 (issue: #32125)
  • Ensure that local cluster alias is never treated as remote #37121 (issues: #32125, #36997)
  • [API] spelling: cacheable #37047 (issue: #37035)
  • Add ability to suggest shard_size on coord node rewrite #37017 (issues: #32125, #36997, #37000)
  • Skip final reduction if SearchRequest holds a cluster alias #37000 (issues: #32125, #36997)
  • Add support for local cluster alias to SearchRequest #36997 (issue: #32125)
Security
  • Move CAS operations in TokenService to sequence numbers #38311 (issues: #10708, #37872)
  • Cleanup construction of interceptors #38294
Snapshot/Restore
  • RestoreService should update primary terms when restoring shards of existing indices #38177 (issue: #33888)
  • Allow open indices to be restored #37733
  • Create specific exception for when snapshots are in progress #37550 (issue: #37541)
  • SNAPSHOT: Speed up HDFS Repository Writes #37069
  • Implement Atomic Blob Writes for HDFS Repository #37066 (issue: #37011)
  • [API] spelling: repositories #37053 (issue: #37035)
  • SNAPSHOT: Use CancellableThreads to Abort #35901 (issue: #21759)
Suggesters

Bug fixes

edit
Aggregations
  • Skip sibling pipeline aggregators reduction during non-final reduce #40101 (issue: #40059)
  • Only create MatrixStatsResults on final reduction #38130 (issue: #37587)
  • Don’t load global ordinals with the map execution_hint #37833 (issue: #37705)
  • Issue #37303 - Invalid variance fix #37384 (issue: #37303)
Allocation
  • Fix _host based require filters #38173
  • Ignore obsolete dangling indices #37824 (issue: #27073)
  • ALLOC: Fail Stale Primary Alloc. Req. without Data #37226 (issue: #37098)
Analysis
  • Fix PreConfiguredTokenFilters getSynonymFilter() implementations #38858 (issues: #38793, #38839)
  • Fix PreConfiguredTokenFilters getSynonymFilter() implementations #38839 (issue: #38793)
Audit
Authentication
  • Correct authenticate response for API key #39684
  • Fix security index auto-create and state recovery race #39582
  • Use consistent view of realms for authentication #38815 (issue: #30301)
  • Enhance parsing of StatusCode in SAML Responses #38628
  • Limit token expiry to 1 hour maximum #38244
  • Fix expired token message in Exception header #37196
  • Fix NPE in CachingUsernamePasswordRealm #36953 (issue: #36951)
CCR
  • Safe publication of AutoFollowCoordinator #40153 (issue: #38560)
  • Enable reading auto-follow patterns from x-content #40130 (issue: #40128)
  • Stop auto-followers on shutdown #40124
  • Protect against the leader index being removed #39351 (issue: #39308)
  • Fix shard follow task startup error handling #39053 (issue: #38779)
  • Filter out upgraded version index settings when starting index following #38838 (issue: #38835)
  • Handle the fact that ShardStats instance may have no commit or seqno stats #38782 (issue: #38779)
  • Fix LocalIndexFollowingIT#testRemoveRemoteConnection() test #38709 (issue: #38695)
  • Prevent CCR recovery from missing documents #38237
  • Fix file reading in ccr restore service #38117
  • Correct argument names in update mapping/settings from leader #38063
  • Ensure changes requests return the latest mapping version #37633
  • Do not set fatal exception when shard follow task is stopped. #37603
  • Add fatal_exception field for ccr stats in monitoring mapping #37563
  • Do not add index event listener if CCR disabled #37432
  • When removing an AutoFollower also mark it as removed. #37402 (issue: #36761)
  • [CCR] Resume follow Api should not require a request body #37217 (issue: #37022)
CRUD
  • Cascading primary failure lead to MSU too low #40249
  • ShardBulkAction ignore primary response on primary #38901
  • Fix Reindex from remote query logic #36908
Cluster Coordination
  • Fixing the custom object serialization bug in diffable utils. #39544
  • Always return metadata version if metadata is requested #37674
Distributed
  • Enforce retention leases require soft deletes #39922 (issue: #39914)
  • Treat TransportService stopped error as node is closing #39800 (issue: #39584)
  • Use cause to determine if node with primary is closing #39723 (issue: #39584)
  • Don’t ack if unable to remove failing replica #39584 (issue: #39467)
  • Ignore waitForActiveShards when syncing leases #39224 (issue: #39089)
  • Fix synchronization in LocalCheckpointTracker#contains #38755 (issues: #33871, #38633)
  • TransportVerifyShardBeforeCloseAction should force a flush #38401 (issues: #33888, #37961)
  • Fix limit on retaining sequence number #37992 (issue: #37165)
  • Close Index API should force a flush if a sync is needed #37961 (issues: #33888, #37426)
  • Force Refresh Listeners when Acquiring all Operation Permits #36835
  • Replaced the word shards with replicas in an error message. (#36234) #36275 (issue: #36234)
Engine
  • Bubble up exception when processing NoOp #39338 (issue: #38898)
  • ReadOnlyEngine should update translog recovery state information #39238
  • Advance max_seq_no before add operation to Lucene #38879 (issue: #31629)
Features/Features
  • Only count some fields types for deprecation check #40166
  • Deprecation check for indices with very large numbers of fields #39869 (issue: #39851)
  • Check for .watches that wasn’t upgraded properly #39609
  • Link to 7.0 documentation in deprecation checks #39194
  • Handle Null in FetchSourceContext#fetchSource #36839 (issue: #29293)
Features/ILM
  • Handle failure to release retention leases in ILM #39281 (issue: #39181)
  • Preserve ILM operation mode when creating new lifecycles #38134 (issues: #38229, #38230)
  • Retry ILM steps that fail due to SnapshotInProgressException #37624 (issues: #37541, #37552)
  • Remove indexing_complete when removing policy #36620
Features/Indices APIs
  • Add pre-upgrade check to test cluster routing allocation is enabled #39340 (issue: #39339)
  • Reject delete index requests with a body #37501 (issue: #8217)
  • Get Aliases with wildcard exclusion expression #34230 (issues: #33518, #33805, #34144)
Features/Ingest
Features/Java High Level REST Client
  • Allow setting of copy_settings in the HLRC #39752 (issue: #30255)
  • Update IndexTemplateMetaData to allow unknown fields #38448 (issue: #36938)
  • if_seq_no and if_primary_term parameters aren’t wired correctly in REST Client’s CRUD API #38411
  • Update Rollup Caps to allow unknown fields #38339 (issue: #36938)
  • Fix ILM explain response to allow unknown fields #38054 (issue: #36938)
  • Fix ILM status to allow unknown fields #38043 (issue: #36938)
  • Fix ILM Lifecycle Policy to allow unknown fields #38041 (issue: #36938)
  • Update authenticate to allow unknown fields #37713 (issue: #36938)
  • Update verify repository to allow unknown fields #37619 (issue: #36938)
  • Update get users to allow unknown fields #37593 (issue: #36938)
  • Update Execute Watch to allow unknown fields #37498 (issue: #36938)
  • Update Put Watch to allow unknown fields #37494 (issue: #36938)
  • Update Delete Watch to allow unknown fields #37435 (issue: #36938)
  • Fix weighted_avg parser not found for RestHighLevelClient #37027 (issue: #36861)
Features/Monitoring
  • Specify include_type_name in HTTP monitoring. #38927 (issue: #37442)
  • Allow built-in monitoring_user role to call GET _xpack API #38060 (issue: #37970)
Features/Watcher
  • Fix Watcher stats class cast exception #39821 (issue: #39780)
  • Use any index specified by .watches for Watcher #39541 (issue: #39478)
  • Resolve concurrency with watcher trigger service #39092 (issue: #39087)
  • Only flush Watcher’s bulk processor if Watcher is enabled #38803 (issue: #38798)
Geo
  • Geo: Do not normalize the longitude with value -180 for Lucene shapes #37299 (issue: #37297)
Highlighting
  • Bug fix for AnnotatedTextHighlighter #39525 (issue: #39395)
Infra/Core
  • Correct name of basic_date_time_no_millis #39367
  • Fix DateFormatters.parseMillis when no timezone is given #39100 (issue: #39067)
  • Prefix java formatter patterns with 8 #38712 (issue: #38567)
  • Bubble-up exceptions from scheduler #38317 (issue: #38014)
  • Core: Revert back to joda’s multi date formatters #36814 (issues: #36447, #36602)
  • Propagate Errors in executors to uncaught exception handler #36137 (issue: #28667)
Infra/Packaging
  • Remove NOREPLACE for /etc/elasticsearch in rpm and deb #37839
  • Packaging: Remove permission editing in postinst #37242 (issue: #37143)
  • Suppress error message when /proc/sys/vm/max_map_count is not exists. #35933
Infra/Scripting
  • Fix Painless void return bug #38046
Infra/Settings
  • Fix setting by time unit #37192
  • Fix handling of fractional byte size value settings #37172
  • Fix handling of fractional time value settings #37171
Machine Learning
  • Fix race condition when creating multiple jobs #40049 (issue: #38785)
  • Fix datafeed skipping first bucket after lookback when aggs are used #39859 (issue: #39842)
  • Refactoring lazy query and agg parsing #39776 (issue: #39528)
  • Allow aliased .ml-anomalies* index on PUT Job #38821 (issue: #38773)
  • Report index unavailable instead of waiting for lazy node #38423
  • Prevent submit after autodetect worker is stopped #37700 (issue: #37108)
  • Fix ML datafeed CCS with wildcarded cluster name #37470 (issue: #36228)
  • Update error message for process update #37363
  • Make GetJobStats work with arbitrary wildcards and groups #36683 (issue: #34745)
Mapping
  • Make sure to reject mappings with type _doc when include_type_name is false. #38270 (issue: #38266)
  • Treat put-mapping calls with _doc as a top-level key as typed calls. #38032
  • Update the deprecation message for typed put mapping requests. #37835
  • Make sure PutMappingRequest accepts content types other than JSON. #37720
  • MAPPING: Improve Precision for scaled_float #37169 (issue: #32570)
  • Make sure to accept empty unnested mappings in create index requests. #37089
  • Stop automatically nesting mappings in index creation requests. #36924
Network
Ranking
  • QueryRescorer should keep the window size when rewriting #36836
Recovery
  • Create retention leases file during recovery #39359 (issue: #37165)
  • RecoveryMonitor#lastSeenAccessTime should be volatile #36781
SQL
  • SQL: Preserve original source for cast/convert function #40271 (issue: #40239)
  • SQL: Fix issue with optimization on queries with ORDER BY/LIMIT #40256 (issue: #40211)
  • SQL: Fix issue with getting DATE type in JDBC #40207
  • SQL: Fix issue with date columns returned always in UTC #40163 (issue: #40152)
  • SQL: Add multi_value_field_leniency inside FieldHitExtractor #40113 (issue: #39700)
  • SQL: fix incorrect ordering of groupings (GROUP BY) based on orderings (ORDER BY) #40087 (issue: #39956)
  • SQL: Fix bug with JDBC timezone setting and DATE type #39978 (issue: #39915)
  • SQL: Wrap ZonedDateTime parameters inside scripts #39911 (issue: #39877)
  • SQL: ConstantProcessor can now handle NamedWriteable #39876 (issue: #39875)
  • SQL: Extend the multi dot field notation extraction to lists of values #39823 (issue: #39738)
  • SQL: values in datetime script aggs should be treated as long #39773 (issue: #37042)
  • SQL: Don’t allow inexact fields for MIN/MAX #39563 (issue: #39427)
  • SQL: Fix merging of incompatible multi-fields #39560 (issue: #39547)
  • SQL: fix COUNT DISTINCT column name #39537 (issue: #39511)
  • SQL: ignore UNSUPPORTED fields for JDBC and ODBC modes in SYS COLUMNS #39518 (issue: #39471)
  • SQL: Use underlying exact field for LIKE/RLIKE #39443 (issue: #39442)
  • SQL: enforce JDBC driver - ES server version parity #38972 (issue: #38775)
  • SQL: fall back to using the field name for column label #38842 (issue: #38831)
  • SQL: Prevent grouping over grouping functions #38649 (issue: #38308)
  • SQL: Relax StackOverflow circuit breaker for constants #38572 (issue: #38571)
  • SQL: Fix issue with IN not resolving to underlying keyword field #38440 (issue: #38424)
  • SQL: change the Intervals milliseconds precision to 3 digits #38297 (issue: #37423)
  • SQL: Fix esType for DATETIME/DATE and INTERVALS #38179 (issue: #38051)
  • SQL: Added SSL configuration options tests #37875 (issue: #37711)
  • SQL: Fix casting from date to numeric type to use millis #37869 (issue: #37655)
  • SQL: Fix BasicFormatter NPE #37804
  • SQL: Return Intervals in SQL format for CLI #37602 (issues: #29970, #36186, #36432)
  • SQL: fix object extraction from sources #37502 (issue: #37364)
  • SQL: Fix issue with field names containing "." #37364 (issue: #37128)
  • SQL: Fix bug regarding alias fields with dots #37279 (issue: #37224)
  • SQL: Proper handling of COUNT(field_name) and COUNT(DISTINCT field_name) #37254 (issue: #30285)
  • SQL: fix COUNT DISTINCT filtering #37176 (issue: #37086)
  • SQL: Fix issue with wrong NULL optimization #37124 (issue: #35872)
  • SQL: Fix issue with complex expression as args of PERCENTILE/_RANK #37102 (issue: #37099)
  • SQL: Handle the bwc Joda ZonedDateTime scripting class in Painless #37024 (issue: #37023)
  • SQL: Fix bug regarding histograms usage in scripting #36866
  • SQL: Fix issue with always false filter involving functions #36830 (issue: #35980)
  • SQL: protocol returns ISO 8601 String formatted dates instead of Long for JDBC/ODBC requests #36800 (issue: #36756)
  • SQL: Enhance Verifier to prevent aggregate or grouping functions from #36799 (issue: #36798)
  • SQL: normalized keywords shouldn’t be allowed for groupings and sorting [ISSUE] #35203
Search
  • Serialize top-level pipeline aggs as part of InternalAggregations #40177 (issues: #40059, #40101)
  • Fix Fuzziness#asDistance(String) #39643 (issue: #39614)
  • Fix simple query string serialization conditional #38960 (issues: #21504, #38889)
  • Ensure that maxConcurrentShardRequests is never defaulted to 0 #38734
  • Look up connection using the right cluster alias when releasing contexts #38570
  • Fix fetch source option in expand search phase #37908 (issue: #23829)
  • Throw if two inner_hits have the same name #37645 (issue: #37584)
  • Ensure either success or failure path for SearchOperationListener is called #37467 (issue: #37185)
  • Use executor SAME to handle search related handlers #37427 (issues: #33732, #37392)
Security
  • Fix exit code for Security CLI tools #37956 (issue: #37841)
  • Fix potential NPE in UsersTool #37660
Snapshot/Restore
  • Fix Concurrent Snapshot Ending And Stabilize Snapshot Finalization #38368 (issue: #38226)
  • Fix Two Races that Lead to Stuck Snapshots #37686 (issues: #32265, #32348)
  • Fix Race in Concurrent Snapshot Delete and Create #37612 (issue: #37581)
  • Streamline S3 Repository- and Client-Settings #37393
  • SNAPSHOTS: Upgrade GCS Dependencies to 1.55.0 #36634 (issues: #35229, #35459)
Suggesters
  • Fix duplicate removal when merging completion suggestions #36996 (issue: #35836)
Task Management
  • Un-assign persistent tasks as nodes exit the cluster #37656

Regressions

edit
Infra/Core
  • Speed up converting of temporal accessor to zoned date time #37915 (issue: #37826)

Upgrades

edit
Discovery-Plugins
  • Bump jackson-databind version for AWS SDK #39183
Features/Ingest
  • Bump jackson-databind version for ingest-geoip #39182
Security
  • Upgrade the bouncycastle dependency to 1.61 #40017 (issue: #40011)
Snapshot/Restore
  • plugins/repository-gcs: Update google-cloud-storage/core to 1.59.0 #39748 (issue: #39366)