5.5.0 Release Notes

See Multi data path bug in Elasticsearch 5.3.0.

Also see Breaking changes in 5.5.

Breaking changes

Plugins
  • Remove hidden file leniency from spawner #24079 (issue: #23980)
Settings

Breaking Java changes

Aggregations
  • Remove the unused SignificantTerms.compareTerm() method #24714
  • Make SignificantTerms.Bucket an interface rather than an abstract class #24670 (issue: #24492)
  • Make Terms.Bucket an interface rather than an abstract class #24492
Plugin Delete By Query
  • Move DeleteByQuery and Reindex requests into core #24578

Deprecations

Index APIs
  • Deprecated use of + in index expressions #24585 (issue: #24515)
Packaging
  • Add deprecation warnings for $ES_USER and $ES_GROUP #24190 (issue: #23989)
Plugin Repository S3
  • S3 Repository: Deprecate remaining repositories.s3.* settings #24144 (issue: #24143)
REST
  • Add deprecation logging for comma-separated feature parsing #25040 (issue: #24723)
Scripting
Settings
  • Settings: Update settings deprecation from yml to yaml #24663 (issue: #19391)
  • Deprecate settings in .yml and .json #24059 (issue: #19391)
Tribe Node

New features

Mapping
  • Add new ip_range field type #24433
Plugin Analysis ICU
  • Add ICUCollationFieldMapper #24126

Enhancements

Aggregations
  • Add superset size to Significant Term REST response #24865
  • Add document count to Matrix Stats aggregation response #24776
  • Share XContent rendering code in significant terms aggregations #24677
  • Add count to rest output of geo_centroid #24387 (issue: #24366)
  • Allow scripted metric agg to access _score #24295
Aliases
  • Handle multiple aliases in _cat/aliases api #23698 (issue: #23661)
Circuit Breakers
  • Closing a ReleasableBytesStreamOutput closes the underlying BigArray #23941
Cluster
  • Add a cluster block that allows to delete indices that are read-only #24678
  • Extract a common base class to allow services to listen to remote cluster config updates #24367
Core
Engine
  • Add refresh stats tracking for realtime get #25052 (issue: #24806)
  • Engine: store maxUnsafeAutoIdTimestamp in commit #24149
Exceptions
  • IllegalStateException: Only duplicated jar instead of classpath #24953
Index APIs
  • Open and close index to honour allow_no_indices option #24222 (issue: #24031)
Ingest
  • add exclude_keys option to KeyValueProcessor #24876 (issue: #23856)
Inner Hits
Internal
  • "shard started" should show index and shard ID #25157
  • Add the ability to set eager_global_ordinals in the new parent-join field #25019
  • Add assertions enabled helper #24834
  • Add cross cluster support to _field_caps #24463 (issue: #24334)
  • Log JVM arguments on startup #24451
  • Preserve cluster alias throughout search execution to lookup nodes by cluster and ID #24438
  • Move RemoteClusterService into TransportService #24424
  • Enum related performance additions. #24274 (issue: #24226)
Java API
  • Always Accumulate Transport Exceptions #25017 (issue: #23099)
Java High Level REST Client
Logging
  • Warn on not enough masters during election #20063 (issue: #8362)
Mapping
  • Do not index _type when there is at most one type. #24363
  • Only allow one type on 6.0 indices #24317 (issue: #15613)
  • token_count type : add an option to count tokens (fix #23227) #24175 (issue: #23227)
Network
Packaging
  • Set number of processes in systemd unit file #24970 (issue: #20874)
Plugin Lang Painless
  • Optimize instance creation in LambdaBootstrap #24618
  • Allow painless to load stored fields #24290
Plugin Repository GCS
  • GCS Repository: Add secure storage of credentials #24697
Plugins
  • Add purge option to remove plugin CLI #24981
  • Move ReindexAction class to core #24684 (issue: #24578)
  • Plugins: Add support for platform specific plugins #24265
REST
  • Make ObjectParser support string to boolean conversion #24668 (issue: #21802)
  • Allow passing single scrollID in clear scroll API body #24242 (issue: #24233)
Scripting
  • Add Ability to Specify No Types/Contexts Allowed For Scripts #24782
  • Add New Security Script Settings #24637 (issue: #24532)
Search
  • Eliminate array access in tight loops when profiling is enabled. #24959
  • Support Multiple Inner Hits on a Field Collapse Request #24517
  • Expand cross cluster search indices for search requests to the concrete index or to it’s aliases #24502
  • Remove leniency when merging fetched hits in a search response phase #24158
Search Templates
Settings
  • Emit settings deprecation logging at most once #25457
Snapshot/Restore
  • Improves snapshot logging and snapshot deletion error handling #25264
  • Enhances get snapshots API to allow retrieving repository index only #24477 (issue: #24288)
  • Ensure every repository has an incompatible-snapshots blob #24403 (issue: #22267)
  • Change snapshot status error to use generic SnapshotException #24355 (issue: #24225)
Stats
Suggesters
  • Provide informative error message in case of unknown suggestion context. #24241
  • Allow different data types for category in Context suggester #23491 (issue: #22358)
Upgrade API
  • Allow plugins to upgrade templates and index metadata on startup #24379

Bug fixes

Aggregations
  • Terms aggregation should remap global ordinal buckets when a sub-aggregator is used to sort the terms #24941 (issue: #24788)
  • Correctly set doc_count when MovAvg "predicts" values on existing buckets #24892 (issue: #24327)
  • InternalPercentilesBucket should not rely on ordered percents array #24336 (issue: #24331)
  • Align behavior HDR percentiles iterator with percentile() method #24206
  • DateHistogram: Fix extended_bounds with offset #23789 (issue: #23776)
  • Fix ArrayIndexOutOfBoundsException when no ranges are specified in the query #23241 (issue: #22881)
Aliases
  • GET aliases should 404 if aliases are missing #25043 (issue: #24644)
Allocation
  • Discard stale node responses from async shard fetching #24434 (issue: #24007)
Analysis
  • PatternAnalyzer should lowercase wildcard queries when lowercase is true. #24967
Bulk
Cache
  • fix bug of weight computation #24856
Circuit Breakers
  • Checks the circuit breaker before allocating bytes for a new big array #25010 (issue: #24790)
Core
  • Fix cache expire after access #24546
  • Check for default.path.data included in path.data #24285 (issue: #24283)
Geo
Highlighting
  • Higlighters: Fix MultiPhrasePrefixQuery rewriting #25103 (issue: #25088)
Index APIs
  • Rollover max docs should only count primaries #24977 (issue: #24217)
  • Fix legacy GeoPointField decoding in FieldStats #24534 (issue: #24275)
  • Validates updated settings on closed indices #24487 (issue: #23787)
  • Fixes restore of a shrunken index when initial recovery node is gone #24322 (issue: #24257)
Ingest
  • fix grok’s pattern parsing to validate pattern names in expression #25063 (issue: #22831)
  • Fix floating-point error when DateProcessor parses UNIX #24947
  • add option for _ingest.timestamp to use new ZonedDateTime (5.x backport) #24030 (issues: #23168, #23174)
Inner Hits
  • Fix Source filtering in new field collapsing feature #24068 (issue: #24063)
Internal
  • Fix race condition in RemoteClusterConnection node supplier #25432
  • Initialise empty lists in BaseTaskResponse constructor #25290
  • Extract a common base class for scroll executions #24979 (issue: #16555)
  • Ensure remote cluster is connected before fetching _field_caps #24845 (issue: #24763)
  • Obey lock order if working with store to get metadata snapshots #24787 (issue: #24481)
  • Remove _UNRELEASED from Version constants for released versions #24764
  • Fix _field_caps serialization in order to support cross cluster search #24722
  • Avoid race when shutting down controller processes #24579
  • Fix NPE if field caps request has a field that exists not in all indices #24504
More Like This
  • Pass over _routing value with more_like_this items to be retrieved #24679 (issue: #23699)
Nested Docs
  • In case of a single type the _id field should be added to the nested document instead of _uid field #25149
Network
  • Ensure pending transport handlers are invoked for all channel failures #25150
  • Notify onConnectionClosed rather than onNodeDisconnect to prune transport handlers #24639 (issues: #24557, #24575, #24632)
  • SniffNodesSampler should close connection after handling responses #24632 (issues: #22828, #24557, #24575)
Packaging
  • When stopping via systemd only kill the JVM, not its control group #25195
  • Handle parentheses in batch file path #24731 (issue: #24712)
Percolator
  • Fix range queries with date range based on current time in percolator queries. #24666 (issue: #23921)
  • For legacy indices rewrite percolator query upon percolation time #24617 (issue: #24485)
  • Fix memory leak when percolator uses bitset or field data cache #24115 (issue: #24108)
Plugin Lang Painless
  • painless: Fix method references to ctor with the new LambdaBootstrap and cleanup code #24406
  • Fix Painless Lambdas for Java 9 #24070 (issue: #23473)
Plugins
  • X-Pack plugin download fails on Windows desktop #24570
  • Fix plugin installation permissions #24527 (issue: #24480)
  • Fix delete of plugin directory on remove plugin #24266 (issue: #24252)
  • Use a marker file when removing a plugin #24252 (issue: #24231)
  • Remove hidden file leniency from plugin service #23982 (issue: #12465)
Query DSL
  • Thread falls into infinite loop when processing Indices query #24736 (issue: #24735)
REST
  • Fix handling of exceptions thrown on HEAD requests #25172 (issue: #21125)
  • Fixed NPEs caused by requests without content. #23497 (issue: #24701)
  • Fix get mappings HEAD requests #23192 (issue: #21125)
Recovery
  • Provide target allocation id as part of start recovery request #24333 (issue: #24167)
Reindex API
  • Reindex: don’t duplicate _source parameter #24629 (issue: #24628)
  • Add qa module that tests reindex-from-remote against pre-5.0 versions of Elasticsearch #24561 (issues: #23828, #24520)
Scroll
  • Fix single shard scroll within a cluster with nodes in version >= 5.3 and <= 5.3 #24512
Search
  • Adds check for negative search request size #25397 (issue: #22530)
  • Do not search locally if remote index pattern resolves to no indices #25436 (issue: #25426)
  • Make sure range queries are correctly profiled. #25108
  • Compute the took time of the query after the expand phase of field collapsing #24902 (issue: #24900)
  • Fix RangeFieldMapper rangeQuery to properly handle relations #24808 (issue: #24744)
  • Fix ExpandSearchPhase when response contains no hits #24688 (issue: #24672)
  • Include all aliases including non-filtering in _search_shards response #24489
  • Cross Cluster Search: propagate original indices per cluster #24328
Search Templates
  • No longer add illegal content type option to stored search templates #24251 (issue: #24227)
Settings
  • Keystore CLI should use the AddFileKeyStoreCommand for files #25298
  • Settings: Fix setting groups to include secure settings #25076 (issue: #25069)
  • Allow resetting settings that use an IP validator #24713 (issue: #24709)
  • Do not set path.data in environment if not set #24132 (issue: #24099)
Snapshot/Restore
  • Output all empty snapshot info fields if in verbose mode #25455 (issue: #24477)
  • Remove redundant and broken MD5 checksum from repository-s3 #25270 (issue: #25269)
  • Consolidates the logic for cleaning up snapshots on master election #24894 (issue: #24605)
  • Removes completed snapshot from cluster state on master change #24605 (issue: #24452)
  • Fix inefficient (worst case exponential) loading of snapshot repository #24510 (issue: #24509)
  • Fixes maintaining the shards a snapshot is waiting on #24289
Stats
  • _nodes/stats should not fail due to concurrent AlreadyClosedException #25016 (issue: #23099)
  • Avoid double decrement on current query counter #24922 (issues: #22996, #24872)
Suggesters
  • Fix context suggester to read values from keyword type field #24200 (issue: #24129)
Task Manager
  • Task Management: Make TaskInfo parsing forwards compatible #24073 (issue: #23250)

Regressions

Highlighting
  • Fix Fast Vector Highlighter NPE on match phrase prefix #25116 (issue: #25088)

Upgrades

Core
  • Upgrade to Lucene 6.5.1 #24399
Network
  • Upgrade to Netty 4.1.11.Final #24652
  • Upgrade Netty to 4.1.10.Final #24414