123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463 |
- [[release-notes-5.0.0-alpha5]]
- == 5.0.0-alpha5 Release Notes
- Also see <<breaking-changes-5.0>>.
- IMPORTANT: This is an alpha release and is intended for _testing purposes only_. Indices created in this version will *not be compatible with Elasticsearch 5.0.0 GA*. Upgrading 5.0.0-alpha5 to any other version is not supported.
- [IMPORTANT]
- .Known networking bug in 5.0.0-alpha5
- ======================================================
- There is a major bug in the new Netty4 implementation in this release which
- affects any REST requests greater than 1024 bytes in size, and which will
- generate an exception similar to the following:
- [source,txt]
- ----
- [WARN ][http.netty4] [wtOV9Vb] caught exception while handling client http traffic, closing connection [id: 0x1320b717, L:/0:0:0:0:0:0:0:1:9200 - R:/0:0:0:0:0:0:0:1:54732]
- java.lang.UnsupportedOperationException: unsupported message type: DefaultFullHttpResponse (expected: ByteBuf, FileRegion)
- ----
- This is due to incorrect handling of the `Expect` HTTP header, and it can be
- worked around in one of three ways:
- * Use a client which does not add `Expect` headers (including the official clients).
- * Pass a blank `Except` header, e.g.
- +
- [source,sh]
- ----
- curl -H 'Expect:' ...
- ----
- * Use Netty3 for the HTTP layer by passing the following setting at startup:
- +
- [source,sh]
- ----
- ./bin/elasticsearch -Ehttp.type=netty3
- ----
- ======================================================
- [[breaking-5.0.0-alpha5]]
- [float]
- === Breaking changes
- CAT API::
- * Improve cat thread pool API {pull}19721[#19721] (issue: {issue}19590[#19590])
- Cluster::
- * Persistent Node Ids {pull}19140[#19140] (issue: {issue}17811[#17811])
- Core::
- * Keep input time unit when parsing TimeValues {pull}19102[#19102]
- Exceptions::
- * Die with dignity {pull}19272[#19272] (issue: {issue}19231[#19231])
- Index APIs::
- * Removes write consistency level across replication action APIs in favor of wait_for_active_shards {pull}19454[#19454] (issue: {issue}18985[#18985])
- Scripting::
- * Remove deprecated 1.x script and template syntax {pull}19387[#19387] (issue: {issue}13729[#13729])
- Search::
- * Rename `fields` to `stored_fields` and add `docvalue_fields` {pull}18992[#18992] (issue: {issue}18943[#18943])
- Settings::
- * Persistent Node Names {pull}19456[#19456] (issue: {issue}19140[#19140])
- * Remove support for properties {pull}19398[#19398] (issues: {issue}19388[#19388], {issue}19391[#19391])
- [[breaking-java-5.0.0-alpha5]]
- [float]
- === Breaking Java changes
- CRUD::
- * Removing isCreated and isFound from the Java API {pull}19645[#19645] (issues: {issue}19566[#19566], {issue}19631[#19631])
- Internal::
- * Clean up BytesReference {pull}19196[#19196]
- Java API::
- * Add a dedicated client/transport project for transport-client {pull}19435[#19435] (issue: {issue}19412[#19412])
- Network::
- * Factor out abstract TCPTransport* classes to reduce the netty footprint {pull}19096[#19096]
- Plugins::
- * Migrate query registration from push to pull {pull}19376[#19376]
- * Add components getter as bridge between guice and new plugin init world {pull}19371[#19371]
- * Remove CustomNodeAttributes extension point {pull}19348[#19348]
- * Add RepositoryPlugin interface for registering snapshot repositories {pull}19324[#19324]
- * Simplified repository api for snapshot/restore {pull}19292[#19292]
- * Switch most search extensions from push to pull {pull}19238[#19238]
- * Move RestHandler registration to ActionModule and ActionPlugin {pull}19165[#19165]
- * Pull actions from plugins {pull}19108[#19108]
- * Switch analysis from push to pull {pull}19073[#19073]
- * Remove guice from Mapper plugins {pull}19018[#19018]
- Scripting::
- * Remove o.e.script.Template class and move template query to lang-mustache module {pull}19425[#19425] (issue: {issue}16314[#16314])
- Settings::
- * Remove `node.mode` and `node.local` settings {pull}19428[#19428]
- Snapshot/Restore::
- * Removes extra writeBlob method in BlobContainer {pull}19727[#19727] (issue: {issue}18528[#18528])
- [[deprecation-5.0.0-alpha5]]
- [float]
- === Deprecations
- CRUD::
- * Deprecate found and created in delete and index rest responses {pull}19633[#19633]
- Plugin Discovery Azure Classic::
- * Deprecate discovery-azure and rename it to discovery-azure-classic {pull}19186[#19186] (issue: {issue}19144[#19144])
- Templates::
- * Deprecate template query {pull}19607[#19607] (issue: {issue}19390[#19390])
- [[feature-5.0.0-alpha5]]
- [float]
- === New features
- Aggregations::
- * Split regular histograms from date histograms. {pull}19551[#19551] (issues: {issue}4847[#4847], {issue}8082[#8082])
- Circuit Breakers::
- * Circuit break on aggregation bucket numbers with request breaker {pull}19394[#19394] (issue: {issue}14046[#14046])
- Ingest::
- * ingest-useragent plugin {pull}19074[#19074]
- Java REST Client::
- * Introduce async performRequest method {pull}19400[#19400]
- Mapping::
- * Add `scaled_float`. {pull}19264[#19264] (issues: {issue}15939[#15939], {issue}1941[#1941])
- Plugin Repository S3::
- * Add support for path_style_access {pull}15114[#15114]
- Reindex API::
- * Reindex from remote {pull}18585[#18585] (issue: {issue}17447[#17447])
- Translog::
- * Add `elasticsearch-translog` CLI tool with `truncate` command {pull}19342[#19342] (issue: {issue}19123[#19123])
- [[enhancement-5.0.0-alpha5]]
- [float]
- === Enhancements
- Aggregations::
- * Make the heuristic to compute the default shard size less aggressive. {pull}19659[#19659]
- * Add _bucket_count option to buckets_path {pull}19571[#19571] (issue: {issue}19553[#19553])
- * Remove AggregationStreams {pull}19507[#19507]
- * Migrate serial_diff aggregation to NamedWriteable {pull}19483[#19483]
- * Migrate most remaining pipeline aggregations to NamedWriteable {pull}19480[#19480]
- * Migrate moving_avg pipeline aggregation to NamedWriteable {pull}19420[#19420]
- * Migrate matrix_stats to NamedWriteable {pull}19418[#19418]
- * Migrate derivative pipeline aggregation to NamedWriteable {pull}19407[#19407]
- * Migrate top_hits, histogram, and ip_range aggregations to NamedWriteable {pull}19375[#19375]
- * Migrate nested, reverse_nested, and children aggregations to NamedWriteable {pull}19374[#19374]
- * Migrate geohash_grid and geo_bounds aggregations to NamedWriteable {pull}19372[#19372]
- * Clean up significant terms aggregation results {pull}19365[#19365]
- * Migrate range, date_range, and geo_distance aggregations to NamedWriteable {pull}19321[#19321]
- * Migrate terms aggregation to NamedWriteable {pull}19277[#19277]
- * Migrate sampler and missing aggregations to NamedWriteable {pull}19259[#19259]
- * Migrate global, filter, and filters aggregation to NamedWriteable {pull}19220[#19220]
- * Migrate the cardinality, scripted_metric, and geo_centroid aggregations to NamedWriteable {pull}19219[#19219]
- * Use a static default precision for the cardinality aggregation. {pull}19215[#19215]
- * Migrate more aggregations to NamedWriteable {pull}19199[#19199]
- * Migrate stats and extended stats to NamedWriteable {pull}19198[#19198]
- * Migrate sum, min, and max aggregations over to NamedWriteable {pull}19194[#19194]
- * Start migration away from aggregation streams {pull}19097[#19097]
- Analysis::
- * Specify custom char_filters/tokenizer/token_filters in the analyze API {pull}15671[#15671] (issue: {issue}8878[#8878])
- CAT API::
- * Includes the index UUID in the _cat/indices API {pull}19204[#19204] (issue: {issue}19132[#19132])
- CRUD::
- * #19664 Renaming operation to result and reworking responses {pull}19704[#19704] (issue: {issue}19664[#19664])
- * Adding _operation field to index, update, delete response. {pull}19566[#19566] (issues: {issue}19267[#19267], {issue}9642[#9642], {issue}9736[#9736])
- Cache::
- * Enable option to use request cache for size > 0 {pull}19472[#19472]
- Cluster::
- * Batch process node left and node failure {pull}19289[#19289] (issue: {issue}19282[#19282])
- * Index creation waits for write consistency shards {pull}18985[#18985]
- * Inline reroute with process of node join/master election {pull}18938[#18938] (issue: {issue}17270[#17270])
- Core::
- * Makes index creation more friendly {pull}19450[#19450] (issue: {issue}9126[#9126])
- * Clearer error when handling fractional time values {pull}19158[#19158] (issue: {issue}19102[#19102])
- Discovery::
- * Do not log cluster service errors at after joining a master {pull}19705[#19705]
- Exceptions::
- * Make NotMasterException a first class citizen {pull}19385[#19385]
- * Do not catch throwable {pull}19231[#19231]
- Geo::
- * GeoBoundingBoxQueryBuilder should throw IAE when topLeft and bottomRight are the same coordinate {pull}18668[#18668] (issues: {issue}18458[#18458], {issue}18631[#18631])
- Ingest::
- * Add REST _ingest/pipeline to get all pipelines {pull}19603[#19603] (issue: {issue}19585[#19585])
- * Show ignored errors in verbose simulate result {pull}19404[#19404] (issue: {issue}19319[#19319])
- * update foreach processor to only support one applied processor. {pull}19402[#19402] (issue: {issue}19345[#19345])
- * Skip the execution of an empty pipeline {pull}19200[#19200] (issue: {issue}19192[#19192])
- Internal::
- * Make Priority an enum {pull}19448[#19448]
- * Snapshot UUIDs in blob names {pull}19421[#19421] (issues: {issue}18156[#18156], {issue}18815[#18815], {issue}19002[#19002], {issue}7540[#7540])
- * Add RestController method for deprecating in one step {pull}19343[#19343]
- * Tighten ensure atomic move cleanup {pull}19309[#19309] (issue: {issue}19036[#19036])
- * Enable checkstyle ModifierOrder {pull}19214[#19214]
- * Expose task information from NodeClient {pull}19189[#19189]
- * Changed rest handler interface to take NodeClient {pull}19170[#19170]
- * Deprecate ExceptionsHelper.detailedMessage {pull}19160[#19160] (issue: {issue}19069[#19069])
- * Factor out ChannelBuffer from BytesReference {pull}19129[#19129]
- * Cleanup Compressor interface {pull}19125[#19125]
- * Require executor name when calling scheduleWithFixedDelay {pull}17538[#17538]
- Java API::
- * Start from a random node number so that clients do not overload the first node configured {pull}14143[#14143]
- Java REST Client::
- * Add response body to ResponseException error message {pull}19653[#19653] (issue: {issue}19653[#19653])
- * Simplify Sniffer initialization and automatically create the default HostsSniffer {pull}19599[#19599]
- * Remove duplicate dependency declaration for http client {pull}19580[#19580] (issue: {issue}19281[#19281])
- * Add callback to customize http client settings {pull}19373[#19373]
- * Rest Client: add short performRequest method variants without params and/or body {pull}19340[#19340] (issue: {issue}19312[#19312])
- Logging::
- * Add log message about enforcing bootstrap checks {pull}19451[#19451]
- * Improve logging for batched cluster state updates {pull}19255[#19255]
- * Send HTTP Warning Header(s) for any Deprecation Usage from a REST request {pull}17804[#17804] (issue: {issue}17687[#17687])
- Mapping::
- * Elasticsearch should reject dynamic templates with unknown `match_mapping_type`. {pull}17285[#17285] (issue: {issue}16945[#16945])
- Network::
- * Explicitly tell Netty to not use unsafe {pull}19786[#19786] (issues: {issue}19562[#19562], {issue}5624[#5624])
- * Enable Netty 4 extensions {pull}19767[#19767] (issue: {issue}19526[#19526])
- * Modularize netty {pull}19392[#19392]
- * Simplify TcpTransport interface by reducing send code to a single send method {pull}19223[#19223]
- Percolator::
- * Also support query term extract for queries wrapped inside a FunctionScoreQuery {pull}19184[#19184]
- * Add support for synonym query to percolator query term extraction {pull}19066[#19066]
- Plugin Discovery EC2::
- * Use `DefaultAWSCredentialsProviderChain` AWS SDK class for credentials {pull}19561[#19561] (issue: {issue}19556[#19556])
- * Support new Asia Pacific (Mumbai) ap-south-1 AWS region {pull}19112[#19112] (issue: {issue}19110[#19110])
- Plugin Discovery GCE::
- * Allow `_gce_` network when not using discovery gce {pull}15765[#15765] (issue: {issue}15724[#15724])
- Plugin Lang Painless::
- * Change Painless Tree Structure for Variable/Method Chains {pull}19459[#19459]
- * Add replaceAll and replaceFirst {pull}19070[#19070]
- Plugin Mapper Size::
- * Add doc values support to the _size field in the mapper-size plugin {pull}19217[#19217] (issue: {issue}18334[#18334])
- Plugins::
- * Add ScriptService to dependencies available for plugin components {pull}19770[#19770]
- * Log one plugin info per line {pull}19441[#19441]
- * Make rest headers registration pull based {pull}19440[#19440]
- * Add resource watcher to services available for plugin components {pull}19401[#19401]
- * Add some basic services to createComponents for plugins {pull}19380[#19380]
- * Make plugins closeable {pull}19137[#19137]
- * Plugins: Add status bar on download {pull}18695[#18695]
- Query DSL::
- * Allow empty json object in request body in `_count` API {pull}19595[#19595] (issue: {issue}19422[#19422])
- REST::
- * Add Location header to the index, update, and create APIs {pull}19509[#19509] (issue: {issue}19079[#19079])
- * Add support for `wait_for_events` to the `_cluster/health` REST endpoint {pull}19432[#19432] (issue: {issue}19419[#19419])
- * Rename Search Template REST spec names {pull}19178[#19178]
- Recovery::
- * Non-blocking primary relocation hand-off {pull}19013[#19013] (issues: {issue}15900[#15900], {issue}18553[#18553])
- Reindex API::
- * Only ask for `_version` we need it {pull}19693[#19693] (issue: {issue}19135[#19135])
- * Use fewer threads when reindexing-from-remote {pull}19636[#19636]
- * Support authentication with reindex-from-remote {pull}19310[#19310]
- * Support requests_per_second=-1 to mean no throttling in reindex {pull}19101[#19101] (issue: {issue}19089[#19089])
- Scripting::
- * Remove ClusterState from compile api {pull}19136[#19136]
- * Mustache: Render Map as JSON {pull}18856[#18856] (issue: {issue}18970[#18970])
- Search::
- * Limit batch size when scrolling {pull}19367[#19367] (issue: {issue}19249[#19249])
- * Record method counts while profiling query components {pull}18302[#18302]
- Settings::
- * Validates new dynamic settings from the current state {pull}19122[#19122] (issue: {issue}19046[#19046])
- Snapshot/Restore::
- * BlobContainer#writeBlob no longer can overwrite a blob {pull}19749[#19749] (issue: {issue}15579[#15579])
- * More resilient blob handling in snapshot repositories {pull}19706[#19706] (issues: {issue}18156[#18156], {issue}18815[#18815], {issue}19421[#19421], {issue}7540[#7540])
- * Adding repository index generational files {pull}19002[#19002] (issue: {issue}18156[#18156])
- * Raised IOException on deleteBlob {pull}18815[#18815] (issue: {issue}18530[#18530])
- Stats::
- * Add missing field type in the FieldStats response. {pull}19241[#19241] (issue: {issue}17750[#17750])
- * Expose the ClusterInfo object in the allocation explain output {pull}19106[#19106] (issue: {issue}14405[#14405])
- [[bug-5.0.0-alpha5]]
- [float]
- === Bug fixes
- Aggregations::
- * Undeprecates `aggs` in the search request {pull}19674[#19674] (issue: {issue}19504[#19504])
- * Change how `nested` and `reverse_nested` aggs know about their nested depth level {pull}19550[#19550] (issues: {issue}11749[#11749], {issue}12410[#12410])
- * Make ExtendedBounds immutable {pull}19490[#19490] (issue: {issue}19481[#19481])
- * Fix potential AssertionError with include/exclude on terms aggregations. {pull}19252[#19252] (issue: {issue}18575[#18575])
- * Pass resolved extended bounds to unmapped histogram aggregator {pull}19085[#19085] (issue: {issue}19009[#19009])
- * Fix "key_as_string" for date histogram and epoch_millis/epoch_second format with time zone {pull}19043[#19043] (issue: {issue}19038[#19038])
- Allocation::
- * Fix NPE when initializing replica shard has no UnassignedInfo {pull}19491[#19491] (issue: {issue}19488[#19488])
- * Make shard store fetch less dependent on the current cluster state, both on master and non data nodes {pull}19044[#19044] (issue: {issue}18938[#18938])
- Analysis::
- * Fix analyzer alias processing {pull}19506[#19506] (issue: {issue}19163[#19163])
- CAT API::
- * Fixes cat tasks operation in detailed mode {pull}19759[#19759] (issue: {issue}19755[#19755])
- * Add index pattern wildcards support to _cat/shards {pull}19655[#19655] (issue: {issue}19634[#19634])
- Cluster::
- * Allow routing table to be filtered by index pattern {pull}19688[#19688]
- * Use executor's describeTasks method to log task information in cluster service {pull}19531[#19531]
- Core::
- * Makes `m` case sensitive in TimeValue {pull}19649[#19649] (issue: {issue}19619[#19619])
- * Guard against negative result from FileStore.getUsableSpace when picking data path for a new shard {pull}19554[#19554]
- * Handle rejected execution exception on reschedule {pull}19505[#19505]
- Dates::
- * Make sure TimeIntervalRounding is monotonic for increasing dates {pull}19020[#19020]
- Geo::
- * Incomplete results when using geo_distance for large distances {pull}17578[#17578]
- Highlighting::
- * Plain highlighter should ignore parent/child queries {pull}19616[#19616] (issue: {issue}14999[#14999])
- * Let fast vector highlighter also extract terms from the nested query's inner query. {pull}19337[#19337] (issue: {issue}19265[#19265])
- Index APIs::
- * Fixes active shard count check in the case of `all` shards {pull}19760[#19760]
- * Add zero-padding to auto-generated rollover index name increment {pull}19610[#19610] (issue: {issue}19484[#19484])
- Ingest::
- * Fix NPE when simulating a pipeline with no id {pull}19650[#19650]
- * Change foreach processor to use ingest metadata for array element {pull}19609[#19609] (issue: {issue}19592[#19592])
- * No other processors should be executed after on_failure is called {pull}19545[#19545]
- * rethrow script compilation exceptions into ingest configuration exceptions {pull}19318[#19318]
- * Rename from `ingest-useragent` plugin to `ingest-user-agent` and its processor from `useragent` to `user_agent` {pull}19261[#19261]
- Inner Hits::
- * Ensure that that InnerHitBuilder uses rewritten queries {pull}19360[#19360] (issue: {issue}19353[#19353])
- Internal::
- * Priority values should be unmodifiable {pull}19447[#19447]
- * Extract AbstractBytesReferenceTestCase {pull}19141[#19141]
- Java REST Client::
- * Rest Client: add slash to log line when missing between host and uri {pull}19325[#19325] (issue: {issue}19314[#19314])
- * Rest Client: HostsSniffer to set http as default scheme {pull}19306[#19306]
- Logging::
- * Only log running out of slots when out of slots {pull}19637[#19637]
- Mapping::
- * Mappings: Fix detection of metadata fields in documents {pull}19765[#19765]
- * Fix not_analyzed string fields to error when position_increment_gap is set {pull}19510[#19510]
- * Automatically created indices should honor `index.mapper.dynamic`. {pull}19478[#19478] (issue: {issue}17592[#17592])
- Network::
- * Verify lower level transport exceptions don't bubble up on disconnects {pull}19518[#19518] (issue: {issue}19096[#19096])
- Packaging::
- * Disable service in pre-uninstall {pull}19328[#19328]
- Parent/Child::
- * Make sure that no `_parent#null` gets introduces as default _parent mapping {pull}19470[#19470] (issue: {issue}19389[#19389])
- Plugin Discovery Azure Classic::
- * Make discovery-azure plugin work again {pull}19062[#19062] (issues: {issue}15630[#15630], {issue}18637[#18637])
- Plugin Discovery EC2::
- * Fix EC2 discovery settings {pull}18690[#18690] (issues: {issue}18652[#18652], {issue}18662[#18662])
- Plugin Discovery GCE::
- * Fix NPE when GCE region is empty {pull}19176[#19176] (issue: {issue}16967[#16967])
- Plugin Repository Azure::
- * Register group setting for repository-azure accounts {pull}19086[#19086]
- Plugin Repository S3::
- * Add missing permission to repository-s3 {pull}19128[#19128] (issues: {issue}18539[#18539], {issue}19121[#19121])
- * Fix repository S3 Settings and add more tests {pull}18703[#18703] (issues: {issue}18662[#18662], {issue}18690[#18690])
- Query DSL::
- * Throw ParsingException if a query is wrapped in an array {pull}19750[#19750] (issue: {issue}12887[#12887])
- * Restore parameter name auto_generate_phrase_queries {pull}19514[#19514] (issue: {issue}19512[#19512])
- REST::
- * Fixes CORS handling so that it uses the defaults {pull}19522[#19522] (issue: {issue}19520[#19520])
- Recovery::
- * Move `reset recovery` into RecoveriesCollection {pull}19466[#19466] (issue: {issue}19473[#19473])
- * Fix replica-primary inconsistencies when indexing during primary relocation with ongoing replica recoveries {pull}19287[#19287] (issue: {issue}19248[#19248])
- Search::
- * Don't recursively count children profile timings {pull}19397[#19397] (issue: {issue}18693[#18693])
- * fix explain in function_score if no function filter matches {pull}19185[#19185]
- * Fix NPEs due to disabled source {pull}18957[#18957]
- Settings::
- * Validate settings against dynamic updaters on the master {pull}19088[#19088] (issue: {issue}19046[#19046])
- Stats::
- * Fix serialization bug in allocation explain API. {pull}19494[#19494]
- * Allocation explain: Also serialize `includeDiskInfo` field {pull}19492[#19492]
- Store::
- * Tighten up concurrent store metadata listing and engine writes {pull}19684[#19684] (issue: {issue}19416[#19416])
- * Make static Store access shard lock aware {pull}19416[#19416] (issue: {issue}18938[#18938])
- * Catch assertion errors on commit and turn it into a real exception {pull}19357[#19357] (issue: {issue}19356[#19356])
- [[upgrade-5.0.0-alpha5]]
- [float]
- === Upgrades
- Network::
- * Dependencies: Upgrade to netty 4.1.4 {pull}19689[#19689]
- * Introduce Netty 4 {pull}19526[#19526] (issue: {issue}3226[#3226])
- * Upgrade to netty 3.10.6.Final {pull}19235[#19235]
|