Commit graph

57 commits

Author SHA1 Message Date
tnn
32e2e5830f g/c references to openjdk7 2020-05-17 00:54:00 +00:00
jperkin
1a88a614da elasticsearch: Update to 6.8.8.
I'm unable to find a useful changelog, so unfortunately if you want to see
what has changed since 6.4.0 then you'll need to head over to
https://www.elastic.co/guide/en/elasticsearch/reference/6.8/es-release-notes.html
and read each of the individual links for every single point release.

While here fix some build issues and pkglint warnings.
2020-04-21 16:06:19 +00:00
joerg
6f16d19e2a Honor relaxed resource limits from Java settings. Don't allow JDK10+ as
it depends on obsolete javah.
2020-04-20 00:32:04 +00:00
bsiegert
23f9d8e845 Revbump packages depending on libffi after .so version change.
Requested by Matthias Ferdinand and Oskar on pkgsrc-users.
2020-03-08 16:42:24 +00:00
fhajny
a9d103d93f databases/elasticsearch: Update to 6.4.0.
6.4.0 release highlights

Analysis
- Option to index phrases on text fields
- Korean analysis tools
- Add multiplexing token filter

Machine learning
- Improve your machine learning results with custom rules
- The {ml} analytics can now detect specific change points in a time
  series

Mappings
- alias field type
- _ignored meta field

Rank Eval API
- Expected Reciprocal Rank metric for Rank Eval API

Search
- Cross Cluster Search will no longer use dedicated master nodes as
  gateway nodes
- Format option for doc_value fields
- Support second level of field collapse

Security
- Kerberos authentication support is now available
- {es} now offers a FIPS 140-2 compliant mode

6.3.0 release highlights

- SQL: This experimental feature enables users who are familiar with
  SQL to use SQL statements to query {es} indices.
- Rollups: This experimental feature enables you to summarize and
  store historical data so that is still available for analysis, but
  consumes significantly less storage space.
- Java 10 Support


For full releases since 6.2.4 please see

https://www.elastic.co/guide/en/elasticsearch/reference/6.4/release-notes-6.3.1.html
https://www.elastic.co/guide/en/elasticsearch/reference/6.4/release-notes-6.3.2.html
https://www.elastic.co/guide/en/elasticsearch/reference/6.4/release-notes-6.3.0.html
https://www.elastic.co/guide/en/elasticsearch/reference/6.4/release-notes-6.4.0.html
2018-09-05 13:29:30 +00:00
fhajny
d41a8b32b8 databases/elasticsearch: Disable JAWT, removes the need for X11 headers. 2018-05-21 12:53:29 +00:00
fhajny
a7915a4358 databases/elasticsearch: Skip unneeded API check, avoid GNU grep dep. 2018-05-20 12:53:01 +00:00
fhajny
0f795cd752 databases/elasticsearch: Update to 6.2.4.
=== Bug fixes

Engine::
- Harden periodically check to avoid endless flush loop

Ingest::
- Don't allow referencing the pattern bank name in the pattern bank

Java High Level REST Client::
- Bulk processor#awaitClose to close scheduler

Java Low Level REST Client::
- REST client: hosts marked dead for the first time should not be
  immediately retried

Network::
- Cross-cluster search and default connections can get crossed

Percolator::
- Fixed bug when non percolator docs end up in the search hits
- Fixed a msm accounting error that can occur during analyzing a
  percolator query
- Fix more query extraction bugs.
- Fix some query extraction bugs.

Plugins::
- Plugins: Fix native controller confirmation for non-meta plugin

Search::
- Propagate ignore_unmapped to inner_hits

Settings::
- Archive unknown or invalid settings on updates
2018-04-18 11:27:21 +00:00
fhajny
53fd2724ed databases/elasticsearch: Update to 6.2.3.
=== Enhancements

Highlighting::
- Limit analyzed text for highlighting (improvements)

Recovery::
- Require translogUUID when reading global checkpoint

=== Bug fixes

Core::
- Remove special handling for _all in nodes info

Engine::
- Avoid class cast exception from index writer
- Maybe die before failing engine
- Never block on key in `LiveVersionMap#pruneTombstones`

Ingest::
- Continue registering pipelines after one pipeline parse failure.

Java High Level REST Client::
- REST high-level client: encode path parts

Packaging::
- Delay path expansion on Windows

Percolator::
- Fix percolator query analysis for function_score query
- Improved percolator's random candidate query duel test

Snapshot/Restore::
- Fix NPE when using deprecated Azure settings

Stats::
- Fix AdaptiveSelectionStats serialization bug
2018-04-06 15:49:22 +00:00
fhajny
67bca3b53d databases/elasticsearch: Change default minimum and maximum heap to the same value, as recommended by Elasticsearch docs (improves performance, avoids locking lags). 2018-04-06 15:48:46 +00:00
fhajny
269fd77b7a databases/elasticsearch: Build JNA from source ourselves to get just the native lib for the current platform rather than a list of preselected ones. Makes it possible to bind to non-localhost on platforms like NetBSD and SunOS. 2018-04-06 15:48:33 +00:00
fhajny
c3694cd95e databases/elasticsearch: Update to 6.2.2.
== 6.2.2 Release Notes

=== Enhancements

Recovery::
- Synced-flush should not seal index of out of sync replicas

=== Bug fixes

Core::
- Handle throws on tasks submitted to thread pools
- Fix size blocking queue to not lie about its weight

Ingest::
- Guard accessDeclaredMembers for Tika on JDK 10
- Fix for bug that prevents pipelines to load that use stored scripts
  after a restart

Java High Level REST Client::
- Fix parsing of script fields
- Move to POST when calling API to retrieve which support request body

Packaging::
- Fix using relative custom config path
- Disable console logging in the Windows service

Percolator::
- Do not take duplicate query extractions into account for
  minimum_should_match attribute

Recovery::
- Fsync directory after cleanup


== 6.2.1 Release Notes

=== Bug fixes

Plugin Lang Painless::
- Painless: Fix For Loop NullPointerException

Plugins::
- Fix the ability to remove old plugin
2018-02-27 12:37:56 +00:00
fhajny
95f43e4a4e databases/elasticsearch: Update to 6.2.0.
6.2.0

=== Breaking changes

Aggregations::
- Add a new cluster setting to limit the total number of buckets
  returned by a request

Core::
- Forbid granting the all permission in production

Highlighting::
- Limit the analyzed text for highlighting

Search::
- Introduce limit to the number of terms in Terms Query


=== Breaking Java changes

Java API::
- Remove `operationThreaded` from Java API

Java High Level REST Client::
- REST high-level client: remove index suffix from indices client
  method names


=== Deprecations

Analysis::
- Backport delimited payload filter renaming

Suggesters::
- deprecating `jarowinkler` in favor of `jaro_winkler`
- Deprecating `levenstein` in favor of `levensHtein`


=== New features

Plugin Ingest GeoIp::
- Enable ASN support for Ingest GeoIP plugin.

Plugin Lang Painless::
- Painless: Add spi jar that will be published for extending
  whitelists
- Painless: Add a simple cache for whitelist methods and fields.

Plugins::
- Add the ability to bundle multiple plugins into a meta plugin

Rank Evaluation::
- Backport of ranking evaluation API (#27478)

Recovery::
- Backport for using lastSyncedGlobalCheckpoint in deletion policy

Reindex API::
- Add scroll parameter to _reindex API


=== Enhancements

Allocation::
- Fix cluster.routing.allocation.enable and
  cluster.routing.rebalance.enable case
- Add node id to shard failure message

Analysis::
- Limit the analyzed text for highlighting (#27934)
- Allow TrimFilter to be used in custom normalizers

Circuit Breakers::
- Add accounting circuit breaker and track segment memory usage

Cluster::
- Adds wait_for_no_initializing_shards to cluster health API

Core::
- Introduce elasticsearch-core jar
- Rename core module to server
- Introduce elasticsearch-core jar
- Add Writeable.Reader support to TransportResponseHandler
- Simplify rejected execution exception
- Add node name to thread pool executor name

Discovery::
- Add information when master node left to DiscoveryNodes'
  shortSummary()

Engine::
- Move uid lock into LiveVersionMap
- Optimize version map for append-only indexing

Geo::
- [GEO] Add WKT Support to GeoBoundingBoxQueryBuilder
- [Geo] Add Well Known Text (WKT) Parsing Support to ShapeBuilders

Highlighting::
- Include all sentences smaller than fragment_size in the unified
  highlighter

Ingest::
- Enable convert processor to support Long and Double

Internal::
- Make KeyedLock reentrant
- Make AbstractQueryBuilder.declareStandardFields to be protected
- Tighten the CountedBitSet class
- Avoid doing redundant work when checking for self references.

Java API::
- Add missing delegate methods to NodeIndicesStats
- Java api clean-up : consistency for `shards_acknowledged` getters

Java High Level REST Client::
- add toString implementation for UpdateRequest.
- Add Close Index API to the high level REST client
- Add Open Index API to the high level REST client
- Added Create Index support to high-level REST client
- Add multi get api to the high level rest client
- Add msearch api to high level client

Mapping::
- Allow `_doc` as a type.

Network::
- Add NioGroup for use in different transports
- Add read timeouts to http module
- Implement byte array reusage in `NioTransport`
- Introduce resizable inbound byte buffer
- Decouple nio constructs from the tcp transport

Packaging::
- Extend JVM options to support multiple versions
- Add explicit coreutils dependency
- Detect mktemp from coreutils
- Enable GC logs by default
- Use private directory for temporary files

Percolator::
- also extract match_all queries when indexing percolator queries

Plugin Lang Painless::
- Painless: Add whitelist extensions
- Painless: Modify Loader to Load Classes Directly from Definition
- Clean Up Painless Cast Object
- Painless: Only allow Painless type names to be the same as the
  equivalent Java class.

Plugins::
- Add client actions to action plugin
- Plugins: Add validation to plugin descriptor parsing
- Plugins: Add plugin extension capabilities
- Add support for filtering mappings fields

Rank Evaluation::
- Simplify RankEvalResponse output

Recovery::
- Truncate tlog cli should assign global checkpoint
- Replica starts peer recovery with safe commit
- Primary send safe commit in file-based recovery
- Fail resync-failed shards in subsequent writes
- Introduce promoting index shard state
- Non-peer recovery should set the global checkpoint
- Persist global checkpoint when finalizing a peer recovery
- Rollback a primary before recovering from translog

Rollover::
- Fail rollover if duplicated alias found in templates

Search::
- Use typeName() to check field type in GeoShapeQueryBuilder
- Optimize search_after when sorting in index sort order

Sequence IDs::
- Do not keep 5.x commits when having 6.x commits
- Use lastSyncedGlobalCheckpoint in deletion policy
- Use CountedBitSet in LocalCheckpointTracker
- Only fsync global checkpoint if needed
- Keep commits and translog up to the global checkpoint
- Adjust CombinedDeletionPolicy for multiple commits
- Keeps index commits up to the current global checkpoint
- Dedup translog operations by reading in reverse

Settings::
- Add validation of keystore setting names

Snapshot/Restore::
- Use AmazonS3.doesObjectExist() method in S3BlobContainer
- Remove XContentType auto detection in BlobStoreRepository
- Include include_global_state in Snapshot status API (#22423)

Task Manager::
- Add ability to associate an ID with tasks

Translog::
- Simplify MultiSnapshot#SeqNoset
- Enclose CombinedDeletionPolicy in SnapshotDeletionPolicy


=== Bug fixes

Aggregations::
- Adds metadata to rewritten aggregations
- Fix NPE on composite aggregation with sub-aggregations that need
  scores
- StringTerms.Bucket.getKeyAsNumber detection type
- Fix incorrect results for aggregations nested under a nested
  aggregation
- Fix global aggregation that requires breadth first and scores
- Fix composite aggregation when after term is missing in the shard
- Fix preserving FiltersAggregationBuilder#keyed field on rewrite
- Using DocValueFormat::parseBytesRef for parsing missing value
  parameter
- Fix illegal cast of the "low cardinality" optimization of the
  `terms` aggregation.
- Always include the _index and _id for nested search hits.

Allocation::
- Do not open indices with broken settings

Core::
- Fix lock accounting in releasable lock
- Fixes ByteSizeValue to serialise correctly
- Do not set data paths on no local storage required
- Ensure threadcontext is preserved when refresh listeners are invoked
- Ensure logging is configured for CLI commands

Engine::
- Replica recovery could go into an endless flushing loop
- Use `_refresh` to shrink the version map on inactivity
- Allow resize version map under lock even if there are pending
  operations
- Reset LiveVersionMap on sync commit

Geo::
- Correct two equality checks on incomparable types
- Handle case where the hole vertex is south of the containing
  polygon(s)

Highlighting::
- Fix highlighting on a keyword field that defines a normalizer

Inner Hits::
- Add version support for inner hits in field collapsing (#27822)

Internal::
- Never return null from Strings.tokenizeToStringArray
- Fallback to TransportMasterNodeAction for cluster health retries
- Retain originalIndex info when rewriting FieldCapabilities requests

Java REST Client::
- Do not use system properties when building the HttpAsyncClient

Mapping::
- Ignore null value for range field (#27845)
- Pass `java.locale.providers=COMPAT` to Java 9 onwards
- Allow update of `eager_global_ordinals` on `_parent`.
- Fix merging of _meta field

Network::
- Only bind loopback addresses when binding to local
- Remove potential nio selector leak
- Fix issue where the incorrect buffers are written
- Throw UOE from compressible bytes stream reset
- Bubble exceptions when closing compressible streams

Packaging::
- Allow custom service names when installing on windows

Percolator::
- Avoid TooManyClauses exception if number of terms / ranges is
  exactly equal to 1024

Plugin Analysis ICU::
- Catch InvalidPathException in IcuCollationTokenFilterFactory

Plugin Analysis Phonetic::
- Fix daitch_mokotoff phonetic filter to use the dedicated Lucene
  filter

Plugin Lang Painless::
- Painless: Fix variable scoping issue in lambdas
- Painless: Fix errors allowing void to be assigned to def.

Plugin Repository HDFS::
- Fix SecurityException when HDFS Repository used against HA Namenodes

Plugins::
- Make sure that we don't detect files as maven coordinate when
  installing a plugin
- Fix upgrading indices which use a custom similarity plugin.

Recovery::
- Open engine should keep only starting commit
- Allow shrinking of indices from a previous major
- Set global checkpoint before open engine from store
- Check and repair index under the store metadata lock
- Flush old indices on primary promotion and relocation

Rollover::
- Make index rollover action atomic

Scripting::
- Ensure we protect Collections obtained from scripts from
  self-referencing

Scroll::
- Reject scroll query if size is 0 (#22552)
- Fix scroll query with a sort that is a prefix of the index sort

Search::
- Fix simple_query_string on invalid input
- Use the underlying connection version for CCS connections
- Fix synonym phrase query expansion for cross_fields parsing
- Carry forward weights, etc on rescore rewrite
- Fix routing with leading or trailing whitespace

Sequence IDs::
- Recovery from snapshot may leave seq# gaps
- No longer unidle shard during recovery
- Obey translog durability in global checkpoint sync

Settings::
- Settings: Introduce settings updater for a list of settings
- Fix setting notification for complex setting (affixMap settings)
  that could cause transient settings to be ignored
- Fix environment variable substitutions in list setting
- Allow index settings to be reset by wildcards

Snapshot/Restore::
- Consistent updates of IndexShardSnapshotStatus
- Avoid concurrent snapshot finalizations when deleting an INIT
  snapshot
- Do not start snapshots that are deleted during initialization
- Do not swallow exception in ChecksumBlobStoreFormat.writeAtomic()
- Consistent update of stage and failure message in
  IndexShardSnapshotStatus
- Fail restore when the shard allocations max retries count is reached
- Delete shard store files before restoring a snapshot

Stats::
- Fixes DocStats to properly deal with shards that report -1 index
  size
- Include internal refreshes in refresh stats

Term Vectors::
- Fix term vectors generator with keyword and normalizer


=== Upgrades

Core::
- Dependencies: Update joda time to 2.9.9
- upgrade to lucene 7.2.1
- Upgrade jna from 4.4.0-1 to 4.5.1

Ingest::
- update ingest-attachment to use Tika 1.17 and newer deps





6.1.3

Engine::
- Replica recovery could go into an endless flushing loop

Internal::
- Never return null from Strings.tokenizeToStringArray
- Fallback to TransportMasterNodeAction for cluster health retries

Mapping::
- Allow update of `eager_global_ordinals` on `_parent`.

Scripting::
- Ensure we protect Collections obtained from scripts from
  self-referencing

Settings::
- Fix setting notification for complex setting (affixMap settings)
  that could cause transient settings to be ignored
- Fix environment variable substitutions in list setting

Snapshot/Restore::
- Avoid concurrent snapshot finalizations when deleting an INIT
  snapshot
- Do not start snapshots that are deleted during initialization
2018-02-07 16:26:16 +00:00
fhajny
d88d0811a3 Update databases/elasticsearch to 6.1.2
== 6.1.2

=== Enhancements

Internal::
- Make AbstractQueryBuilder.declareStandardFields to be protected

=== Bug fixes

Aggregations::
- Fix incorrect results for aggregations nested under a nested
  aggregation
- Fix composite aggregation when after term is missing in the shard
- Fix preserving FiltersAggregationBuilder#keyed field on rewrite

Engine::
- Use `_refresh` to shrink the version map on inactivity
- Allow resize version map under lock even if there are pending
  operations

Network::
- Only bind loopback addresses when binding to local

Recovery::
- Allow shrinking of indices from a previous major

Search::
- Use the underlying connection version for CCS connections
- Carry forward weights, etc on rescore rewrite

Snapshot/Restore::
- Fail restore when the shard allocations max retries count is reached

Translog::
- Only sync translog when global checkpoint increased



== 6.1.1

=== Enhancements

Snapshot/Restore::
- Use AmazonS3.doesObjectExist() method in S3BlobContainer

=== Bug fixes

Inner Hits::
- Add version support for inner hits in field collapsing

Java REST Client::
- Do not use system properties when building the HttpAsyncClient

Search::
- Fix routing with leading or trailing whitespace

Sequence IDs::
- Recovery from snapshot may leave seq# gaps
- No longer unidle shard during recovery

=== Upgrades

Ingest::
- update ingest-attachment to use Tika 1.17 and newer deps
2018-01-22 19:27:21 +00:00
fhajny
00c95c2a79 Update databases/elasticsearch to 6.1.0.
== 6.1.0 Release Notes

=== Breaking changes

Network::
- Allow only a fixed-size receive predictor

REST::
- Standardize underscore requirements in parameters

Scroll::
- Fail queries with scroll that explicitely set request_cache

Search::
- Add a limit to from + size in top_hits and inner hits.



=== Breaking Java changes

Aggregations::
- Moves deferring code into its own subclass

Core::
- Unify Settings xcontent reading and writing

Settings::
- Return List instead of an array from settings
- Remove `Settings,put(Map<String,String>)`



=== Deprecations

Aggregations::
- Deprecate global_ordinals_hash and global_ordinals_low_cardinality

Allocation::
- Add deprecation warning for negative
  index.unassigned.node_left.delayed_timeout

Analysis::
- Add limits for ngram and shingle settings

Geo::
- [GEO] 6x Deprecate ShapeBuilders and decouple geojson parse logic

Mapping::
- Deprecate the `index_options` parameter for numeric fields

Plugin Repository Azure::
- Azure repository: Move to named configurations as we do for S3
  repository and secure settings

Search::
- doc: deprecate _primary and _replica shard option



=== New features

Aggregations::
- Aggregations: bucket_sort pipeline aggregation
- Add composite aggregator

Analysis::
- Added Bengali Analyzer to Elasticsearch with respect to the lucene
  update

Ingest::
- add URL-Decode Processor to Ingest

Java High Level REST Client::
- Added Delete Index support to high-level REST client

Nested Docs::
- Multi-level Nested Sort with Filters

Query DSL::
- Add terms_set query
- Introduce sorted_after query for sorted index
- Add support for auto_generate_synonyms_phrase_query in match_query,
  multi_match_query, query_string and simple_query_string

Search::
- Expose `fuzzy_transpositions` parameter in fuzzy queries
- Add upper limit for scroll expiry
- Implement adaptive replica selection
- configure distance limit

Similarities::
- Add a scripted similarity.

Suggesters::
- Expose duplicate removal in the completion suggester
- Support must and should for context query in context suggester



=== Enhancements

Aggregations::
- Allow aggregation sorting via nested aggregation

Allocation::
- Tie-break shard path decision based on total number of shards on
  path
- Balance shards for an index more evenly across multiple data paths
- Expand "NO" decision message in NodeVersionAllocationDecider
- _reroute's retry_failed flag should reset failure counter

Analysis::
- Add configurable `max_token_length` parameter to whitespace
  tokenizer

CRUD::
- Add wait_for_active_shards parameter to index open command

Core::
- Fix classes that can exit
- Replace empty index block checks with global block checks in
  template delete/put actions
- Allow Uid#decodeId to decode from a byte array slice
- Use separate searchers for "search visibility" vs "move indexing
  buffer to disk
- Add ability to split shards
- Make circuit breaker mutations debuggable

Dates::
- DateProcessor Locale

Discovery::
- Stop responding to ping requests before master abdication

Engine::
- Ensure external refreshes will also refresh internal searcher to
  minimize segment creation
- Move IndexShard#getWritingBytes() under InternalEngine
- Refactor internal engine

Geo::
- Add ignore_malformed to geo_shape fields

Ingest::
- add json-processor support for non-map json types
- Introduce templating support to timezone/locale in DateProcessor
- Add support for parsing inline script (#23824)
- Consolidate locale parsing.
- Accept ingest simulate params as ints or strings

Internal::
- Avoid uid creation in ParsedDocument
- Upgrade to Lucene 7.1.0 snapshot version
- Remove `_index` fielddata hack if cluster alias is present

Java High Level REST Client::
- Adjust RestHighLevelClient method modifiers
- Decouple BulkProcessor from ThreadPool

Logging::
- Add more information on _failed_to_convert_ exception (#21946)
- Improve shard-failed log messages.

Mapping::
- Allow ip_range to accept CIDR notation
- Deduplicate `_field_names`.
- Throw a better error message for empty field names
- Stricter validation for min/max values for whole numbers
- Make FieldMapper.copyTo() always non-null.

Nested Docs::
- Use the primary_term field to identify parent documents
- Prohibit using `nested_filter`, `nested_path` and new `nested`
  Option at the same time in FieldSortBuilder

Network::
- Remove manual tracking of registered channels
- Remove tcp profile from low level nio channel
- Decouple `ChannelFactory` from Tcp classes

Percolator::
- Use Lucene's CoveringQuery to select percolate candidate matches
- Add support to percolate query to percolate multiple documents
  simultaneously
- Hint what clauses are important in a conjunction query based on
  fields
- Add support for selecting percolator query candidate matches
  containing range queries

Plugin Discovery EC2::
- update AWS SDK for ECS Task IAM support in discovery-ec2

Plugin Lang Painless::
- Painless: Only allow Painless type names to be the same as the
  equivalent Java class.
- Allow for the Painless Definition to have multiple instances for
  white-listing
- Separate Painless Whitelist Loading from the Painless Definition
- Remove Sort enum from Painless Definition

Plugin Repository Azure::
- Add azure storage endpoint suffix #26432
- Support for accessing Azure repositories through a proxy

Plugin Repository S3::
- Remove S3 output stream
- Update to AWS SDK 1.11.223

Plugins::
- Plugins: Add versionless alias to all security policy codebase
  properties
- Allow plugins to plug rescore implementations

Query DSL::
- Add support for wildcard on `_index`

Reindex API::
- Update by Query is modified to accept short `script` parameter.
- reindex: automatically choose the number of slices

Rollover::
- Add size-based condition to the index rollover API
- Add size-based condition to the index rollover API

Scripting::
- Script: Convert script query to a dedicated script context

Search::
- Make fields optional in multi_match query and rely on
  index.query.default_field by default
- fix unnecessary logger creation
- `ObjectParser` : replace `IllegalStateException` with
  `ParsingException`
- Uses norms for exists query if enabled
- Cross Cluster Search: make remote clusters optional
- Enhances exists queries to reduce need for `_field_names`
- Change ParentFieldSubFetchPhase to create doc values iterator once
  per segment
- Change VersionFetchSubPhase to create doc values iterator once per
  segment
- Change ScriptFieldsFetchSubPhase to create search scripts once per
  segment
- Make sure SortBuilders rewrite inner nested sorts
- Extend testing of build method in ScriptSortBuilder
- Accept an array of field names and boosts in the
  index.query.default_field setting
- Reject IPv6-mapped IPv4 addresses when using the CIDR notation.
- Rewrite range queries with open bounds to exists query

Sequence IDs::
- Only fsync global checkpoint if needed
- Log primary-replica resync failures
- Lazy initialize checkpoint tracker bit sets
- Returns the current primary_term for Get/MultiGet requests

Settings::
- Allow affix settings to specify dependencies
- Represent lists as actual lists inside Settings
- Remove Settings#getAsMap()
- Replace group map settings with affix setting
- Throw exception if setting isn't recognized
- Settings: Move keystore creation to plugin installation

Snapshot/Restore::
- Remove XContentType auto detection in BlobStoreRepository
- Snapshot: Migrate TransportRequestHandler to
  TransportMasterNodeAction
- Fix toString of class SnapshotStatus (#26851)

Stats::
- Adds average document size to DocsStats
- Stats to record how often the ClusterState diff mechanism is used
  successfully
- Expose adaptive replica selection stats in /_nodes/stats API
- Add cgroup memory usage/limit to OS stats on Linux
- Add segment attributes to the `_segments` API.

Suggesters::
- Improve error message for parse failures of completion fields
- Support 'AND' operation for context query in context suggester



=== Bug fixes

Aggregations::
- Disable the "low cardinality" optimization of terms aggregations.
- scripted_metric _agg parameter disappears if params are provided

Cluster::
- Properly format IndexGraveyard deletion date as date
-  Remove optimisations to reuse objects when applying a new
   `ClusterState`

Core::
- Do not set data paths on no local storage required
- Ensure threadcontext is preserved when refresh listeners are invoked
- Ensure logging is configured for CLI commands
- Protect shard splitting from illegal target shards
- Avoid NPE when getting build information
- Fix `ShardSplittingQuery` to respect nested documents.
- When building Settings do not set SecureSettings if empty

Engine::
- Reset LiveVersionMap on sync commit
- Carry over version map size to prevent excessive resizing

Geo::
- Correct two equality checks on incomparable types
- [GEO] fix pointsOnly bug for MULTIPOINT

Index Templates::
- Prevent constructing an index template without index patterns

Ingest::
- Add pipeline support for REST API bulk upsert
- Fixing Grok pattern for Apache 2.4

Inner Hits::
- Return an empty _source for nested inner hit when filtering on a
  field that doesn't exist

Internal::
- When checking if key exists in ThreadContextStruct:putHeaders()
  method, should put requestHeaders in map first
- Adding a refresh listener to a recovering shard should be a noop

Java High Level REST Client::
- Register ip_range aggregation with the high level client
- add top hits as a parsed aggregation to the rest high level client

Mapping::
- Fix dynamic mapping update generation.
- Fix merging of _meta field
- Fixed rounding of bounds in scaled float comparison

Nested Docs::
- Ensure nested documents have consistent version and seq_ids
- Prevent duplicate fields when mixing parent and root nested includes

Network::
- Throw UOE from compressible bytes stream reset
- Bubble exceptions when closing compressible streams
- Do not set SO_LINGER on server channels
- Do not set SO_LINGER to 0 when not shutting down
- Close TcpTransport on RST in some Spots to Prevent Leaking TIME_WAIT
  Sockets

Packaging::
- Removes minimum master nodes default number
- setgid on /etc/elasticearch on package install

Percolator::
- Avoid TooManyClauses exception if number of terms / ranges is
  exactly equal to 1024

Plugin Analysis ICU::
- Catch InvalidPathException in IcuCollationTokenFilterFactory

Plugin Lang Painless::
- Painless: Fix variable scoping issue in lambdas
- Painless: Fix errors allowing void to be assigned to def.

Plugin Repository GCS::
- Create new handlers for every new request in
  GoogleCloudStorageService

Recovery::
- Flush old indices on primary promotion and relocation

Reindex API::
- Reindex: Fix headers in reindex action

Scroll::
- Fix scroll query with a sort that is a prefix of the index sort

Search::
- Fix profiling naming issues
- Fix max score tracking with field collapsing
- Apply missing request options to the expand phase
- Calculate and cache result when advanceExact is called
- Filter unsupported relation for RangeQueryBuilder
- Handle leniency for phrase query on a field indexed without
  positions

Sequence IDs::
- Obey translog durability in global checkpoint sync
- Fix resync request serialization

Settings::
- Allow index settings to be reset by wildcards

Snapshot/Restore::
- Do not swallow exception in ChecksumBlobStoreFormat.writeAtomic()
- Delete shard store files before restoring a snapshot
- Fix snapshot getting stuck in INIT state
- Fix default value of ignore_unavailable for snapshot REST API
- Do not create directory on readonly repository (#21495)

Stats::
- Include internal refreshes in refresh stats
- Make Segment statistics aware of segments hold by internal readers
- Ensure `doc_stats` are changing even if refresh is disabled



=== Upgrades

Core::
- Upgrade to Jackson 2.8.10
- Upgrade to Lucene 7.1

Plugin Discovery EC2::
- Upgrade AWS SDK Jackson Databind to 2.6.7.1

Plugin Discovery GCE::
- Update Google SDK to version 1.23.0

Plugin Lang Painless::
- Upgrade Painless from ANTLR 4.5.1-1 to  ANTLR 4.5.3.




== 6.0.1 Release Notes

=== Breaking changes

Scroll::
- Fail queries with scroll that explicitely set request_cache



=== Enhancements

Core::
- Fix classes that can exit

Discovery::
- Stop responding to ping requests before master abdication

Plugin Repository S3::
- Remove S3 output stream
- Update to AWS SDK 1.11.223

Search::
- fix unnecessary logger creation

Sequence IDs::
- Log primary-replica resync failures

Snapshot/Restore::
- Remove XContentType auto detection in BlobStoreRepository



=== Bug fixes

Cluster::
- Properly format IndexGraveyard deletion date as date

Core::
- Do not set data paths on no local storage required
- Ensure threadcontext is preserved when refresh listeners are invoked
- Avoid NPE when getting build information
- When building Settings do not set SecureSettings if empty

Engine::
- Reset LiveVersionMap on sync commit
- Carry over version map size to prevent excessive resizing

Inner Hits::
- Return an empty _source for nested inner hit when filtering on a
  field that doesn't exist

Mapping::
- Fix dynamic mapping update generation.
- Fixed rounding of bounds in scaled float comparison

Nested Docs::
- Ensure nested documents have consistent version and seq_ids

Network::
- Throw UOE from compressible bytes stream reset
- Bubble exceptions when closing compressible streams

Plugin Lang Painless::
- Painless: Fix errors allowing void to be assigned to def.

Plugin Repository GCS::
- Create new handlers for every new request in
  GoogleCloudStorageService

Recovery::
- Flush old indices on primary promotion and relocation

Reindex API::
- Reindex: Fix headers in reindex action

Search::
- Fix profiling naming issues

Sequence IDs::
- Fix resync request serialization

Snapshot/Restore::
- Do not swallow exception in ChecksumBlobStoreFormat.writeAtomic()
- Delete shard store files before restoring a snapshot
- Fix snapshot getting stuck in INIT state
- Fix default value of ignore_unavailable for snapshot REST API
  (#25359)
- Do not create directory on readonly repository (#21495)



=== Upgrades

Plugin Discovery EC2::
- Upgrade AWS SDK Jackson Databind to 2.6.7.1

Plugin Discovery GCE::
- Update Google SDK to version 1.23.0
2017-12-18 14:27:37 +00:00
fhajny
bf5e1bedb1 Update databases/elasticsearch to 6.0.1
=== Breaking changes

Scroll::
- Fail queries with scroll that explicitely set request_cache


=== Enhancements

Core::
- Fix classes that can exit

Discovery::
- Stop responding to ping requests before master abdication

Plugin Repository S3::
- Remove S3 output stream
- Update to AWS SDK 1.11.223

Search::
- fix unnecessary logger creation

Sequence IDs::
- Log primary-replica resync failures

Snapshot/Restore::
- Remove XContentType auto detection in BlobStoreRepository


=== Bug fixes

Cluster::
- Properly format IndexGraveyard deletion date as date

Core::
- Do not set data paths on no local storage required
- Ensure threadcontext is preserved when refresh listeners are invoked
- Avoid NPE when getting build information
- When building Settings do not set SecureSettings if empty

Engine::
- Reset LiveVersionMap on sync commit
- Carry over version map size to prevent excessive resizing

Inner Hits::
- Return an empty _source for nested inner hit when filtering on a
  field that doesn't exist

Mapping::
- Fix dynamic mapping update generation.
- Fixed rounding of bounds in scaled float comparison

Nested Docs::
- Ensure nested documents have consistent version and seq_ids

Network::
- Throw UOE from compressible bytes stream reset
- Bubble exceptions when closing compressible streams

Plugin Lang Painless::
- Painless: Fix errors allowing void to be assigned to def.

Plugin Repository GCS::
- Create new handlers for every new request in
  GoogleCloudStorageService

Recovery::
- Flush old indices on primary promotion and relocation

Reindex API::
- Reindex: Fix headers in reindex action

Search::
- Fix profiling naming issues

Sequence IDs::
- Fix resync request serialization

Snapshot/Restore::
- Do not swallow exception in ChecksumBlobStoreFormat.writeAtomic()
- Delete shard store files before restoring a snapshot
- Fix snapshot getting stuck in INIT state
- Fix default value of ignore_unavailable for snapshot REST API
- Do not create directory on readonly repository


=== Upgrades

Plugin Discovery EC2::
- Upgrade AWS SDK Jackson Databind to 2.6.7.1

Plugin Discovery GCE::
- Update Google SDK to version 1.23.0
2017-12-13 12:53:45 +00:00
fhajny
cf01a91652 databases/elasticsearch: Commit forgotten updates to patches. 2017-11-30 17:50:30 +00:00
fhajny
ba0f5d2acb Update databases/elasticsearch to 6.0.0.
=== Breaking changes

Aggregations::
- Change parsing of numeric `to` and `from` parameters in `date_range`
  aggregation

Aliases::
- Wrong behavior deleting alias

Allocation::
- Remove `cluster.routing.allocation.snapshot.relocation_enabled`
  setting

Analysis::
- Do not allow custom analyzers to have the same names as built-in
  analyzers
- Removing query-string parameters in `_analyze` API

CAT API::
- Write -1 on unbounded queue in cat thread pool

CRUD::
- Disallow `VersionType.FORCE` for GetRequest
- Disallow `VersionType.FORCE` versioning for 6.x indices
- If the index does not exist, delete document will not auto create it

Cluster::
- Disallow : in cluster and index/alias names
- No longer allow cluster name in data path

Core::
- Simplify file store
- Make boolean conversion strict
- Remove the `default` store type.
- Remove store throttling.

Geo::
- Remove deprecated geo search features
- Reduce GeoDistance Insanity

Highlighting::
- Remove the postings highlighter and make unified the default
  highlighter choice

Index APIs::
- Remove (deprecated) support for '+' in index expressions
- Delete index API to work only against concrete indices
- Open/Close index api to allow_no_indices by default
- Remove support for controversial `ignore_unavailable` and
  `allow_no_indices` from indices exists api

Index Templates::
- Allows multiple patterns to be specified for index templates

Indexed Scripts/Templates::
- Scripting: Remove search template actions

Ingest::
- update ingest-user-agent regexes.yml
- remove ingest.new_date_format

Inner Hits::
- Return the _source of inner hit nested as is without wrapping it
  into its full path context

Java API::
- Enforce Content-Type requirement on the rest layer and remove
  deprecated methods

Java REST Client::
- Remove deprecated created and found from index, delete and bulk

Mapping::
- Reject out of range numbers for float, double and half_float
- Enforce at most one type.
- Disallow `include_in_all` for 6.0+ indices
- Disable _all by default, disallow configuring _all on 6.0+ indices
- Throw an exception on unrecognized "match_mapping_type"

Network::
- Remove unused Netty-related settings
- Remove blocking TCP clients and servers
- Remove `modules/transport_netty_3` in favor of `netty_4`
- Remove LocalTransport in favor of MockTcpTransport

Packaging::
- Configure heap dump path out of the box
- Remove support for ES_INCLUDE
- Setup: Change default heap to 1G
- Use config directory to find jvm.options
- Remove implicit 32-bit support
- Remove default path settings
- Remove path.conf setting
- Honor masking of systemd-sysctl.service
- Rename CONF_DIR to ES_PATH_CONF
- Remove customization of ES_USER and ES_GROUP

Percolator::
- Remove deprecated percolate and mpercolate apis

Plugin Analysis ICU::
- Upgrade icu4j for the ICU analysis plugin to 59.1
- Upgrade icu4j to latest version

Plugin Delete By Query::
- Require explicit query in _delete_by_query API

Plugin Discovery Azure Classic::
- Remove `discovery.type` BWC layer from the EC2/Azure/GCE plugins

Plugin Discovery EC2::
- Ec2 Discovery: Cleanup deprecated settings
- Discovery EC2: Remove region setting
- AWS Plugins: Remove signer type setting

Plugin Lang JS::
- Remove lang-python and lang-javascript

Plugin Mapper Attachment::
- Remove mapper attachments plugin

Plugin Repository Azure::
- Remove global `repositories.azure` settings
- Remove auto creation of container for azure repository

Plugin Repository GCS::
- GCS Repository: Remove specifying credential file on disk

Plugin Repository S3::
- S3 Repository: Cleanup deprecated settings
- S3 Repository: Remove region setting
- S3 Repository: Remove bucket auto create
- S3 Repository: Remove env var and sysprop credentials support
- Remove deprecated S3 settings

Plugins::
- Make plugin loading stricter

Query DSL::
- Remove deprecated `type` and `slop` field in `match` query
- Remove several parse field deprecations in query builders
- Remove deprecated parameters from `ids_query`
- Refactor QueryStringQuery for 6.0
- Change `split_on_whitespace` default to false
- Remove deprecated template query
- Throw exception in scroll requests using `from`
- Remove deprecated `minimum_number_should_match` in BoolQueryBuilder
- Remove support for empty queries
- Remove deprecated query names: in, geo_bbox, mlt, fuzzy_match and
  match_fuzzy
- The `terms` query should always map to a Lucene `TermsQuery`.
- Be strict when parsing values searching for booleans
- Remove collect payloads parameter

REST::
- IndexClosedException to return 400 rather than 403
- Remove comma-separated feature parsing for GetIndicesAction
- Improve REST error handling when endpoint does not support HTTP
  verb, add OPTIONS support
- Remove ldjson support and document ndjson for bulk/msearch
- Enable strict duplicate checks for all XContent types
- Enable strict duplicate checks for JSON content
- Remove lenient stats parsing
- Remove allow unquoted JSON
- Remove FORCE version_type

Scripting::
- remove lang url parameter from stored script requests
- Disallow lang to be used with Stored Scripts
- Remove Deprecated Script Settings
- Scripting: Remove native scripts
- Scripting: Remove file scripts
- Make dates be ReadableDateTimes in scripts
- Remove groovy scripting language
- Remove script access to term statistics

Search::
- Make `index` in TermsLookup mandatory
- Removes FieldStats API
- Remove deprecated fielddata_fields from search request
- Removes deprecated fielddata_fields
- ProfileResult and CollectorResult should print machine readable
  timing information
- Remove indices query
- Remove ignored type parameter in search_shards api

Sequence IDs::
- Change certain replica failures not to fail the replica shard

Settings::
- Settings: Remove shared setting property
- Settings: Remove support for yaml and json config files

Shadow Replicas::
- Remove shadow replicas

Similarities::
- Similarity should accept dynamic settings when possible



=== Breaking Java changes

Aggregations::
- Remove the unused SignificantTerms.compareTerm() method
- Make SignificantTerms.Bucket an interface rather than an abstract
  class
- Fix NPE when `values` is omitted on percentile_ranks agg
- Make Terms.Bucket an interface rather than an abstract class
- Compound order for histogram aggregations

Internal::
- Collapses package structure for some bucket aggs

Java API::
- Remove deprecated IdsQueryBuilder ctor
- Removing unneeded getTookInMillis method
- Java api: ActionRequestBuilder#execute to return a PlainActionFuture

Java High Level REST Client::
- Unify the result interfaces from get and search in Java client
- Allow RestHighLevelClient to use plugins

Java REST Client::
- Rename client artifacts

Network::
- Simplify TransportAddress

Plugin Delete By Query::
- Move DeleteByQuery and Reindex requests into core

Plugins::
- Drop name from TokenizerFactory

Query DSL::
- Remove QueryParseContext
- Remove QueryParseContext from parsing QueryBuilders

REST::
- Return index name and empty map for `/{index}/_alias` with no
  aliases



=== Deprecations

Index APIs::
- Deprecated use of + in index expressions

Index Templates::
- Restore deprecation warning for invalid match_mapping_type values

Indexed Scripts/Templates::
- Scripting: Deprecate stored search template apis

Internal::
- Deprecate XContentType auto detection methods in XContentFactory

Percolator::
- Deprecate percolate query's document_type parameter.

Plugins::
- Plugins: Add backcompat for sha1 checksums

Scripting::
- Scripting: Change keys for inline/stored scripts to source/id
- Scripting: Deprecate native scripts
- Scripting: Deprecate index lookup
- Deprecate Fine Grain Settings for Scripts
- Scripting: Deprecate file script settings
- Scripting: Deprecate file scripts

Settings::
- Settings: Update settings deprecation from yml to yaml
- Deprecate settings in .yml and .json

Tribe Node::
- Deprecate tribe service



=== New features

Aggregations::
- SignificantText aggregation - like significant_terms, but for text

Analysis::
- Expose simplepattern and simplepatternsplit tokenizers
- Parse synonyms with the same analysis chain

Core::
- Enable index-time sorting

Internal::
- Automatically adjust search threadpool queue_size

Mapping::
- Add new ip_range field type

Parent/Child::
- Move parent_id query to the parent-join module
- Introduce ParentJoinFieldMapper, a field mapper that creates
  parent/child relation within documents of the same index

Plugin Analysis ICU::
- Add ICUCollationFieldMapper

Search::
- Automatically early terminate search query based on index sorting

Sequence IDs::
- Add a scheduled translog retention check
- Initialize sequence numbers on a shrunken index
- Initialize primary term for shrunk indices
- Introduce translog size and age based retention policies

Stats::
- Adds nodes usage API to monitor usages of actions

Task Manager::
- Task Management

Upgrade API::
- TemplateUpgraders should be called during rolling restart



=== Enhancements

Aggregations::
- Add strict parsing of aggregation ranges
- Adds rewrite phase to aggregations
- Tweak AggregatorBase.addRequestCircuitBreakerBytes
- Add superset size to Significant Term REST response
- Add document count to Matrix Stats aggregation response
- Adds an implementation of LogLogBeta for the cardinality aggregation
- Support distance units in GeoHashGrid aggregation precision
- Reject multiple methods in `percentiles` aggregation
- Use `global_ordinals_hash` execution mode when sorting by sub
  aggregations.
- Add a specialized deferring collector for terms aggregator
- Agg builder accessibility fixes
- Remove support for the include/pattern syntax.
- Promote longs to doubles when a terms agg mixes decimal and
  non-decimal numbers

Allocation::
- Adjust status on bad allocation explain requests
- Promote replica on the highest version node

Analysis::
- [Analysis] Support normalizer in request param
- Enforce validation for PathHierarchy tokenizer
- [analysis-icu] Allow setting unicodeSetFilter
- Match- and MultiMatchQueryBuilder should only allow setting analyzer
  on string values

Bulk::
- Simplify bulk request execution

CAT API::
- expand `/_cat/nodes` to return information about hard drive

CRUD::
- Added validation for upsert request

Circuit Breakers::
- ScriptService: Replace max compilation per minute setting with max
  compilation rate

Cluster::
- Validate a joining node's version with version of existing cluster
  nodes
- Switch indices read-only if a node runs out of disk space
- Add a cluster block that allows to delete indices that are read-only
- Separate publishing from applying cluster states
- Adds cluster state size to /_cluster/state response

Core::
- Allow `InputStreamStreamInput` array size validation where
  applicable
- Refactor bootstrap check results and error messages
- Add BootstrapContext to expose settings and recovered state to
  bootstrap checks
- Unit testable index creation task on MetaDataCreateIndexService
- Ignore .DS_Store files on macOS
- Add max file size bootstrap check
- Add compatibility versions to main action response
- Index ids in binary form.
- Explicitly reject duplicate data paths
- Use SPI in High Level Rest Client to load XContent parsers
- Upgrade to lucene-7.0.0-snapshot-a0aef2f
- Speed up PK lookups at index time.
- Use Java 9 FilePermission model
- Add friendlier message on bad keystore permissions
- Epoch millis and second formats accept float implicitly
- Remove connect SocketPermissions from core
- Add repository-url module and move URLRepository
- Remove accept SocketPermissions from core
- Move IfConfig.logIfNecessary call into bootstrap
- Remove artificial default processors limit
- Simplify write failure handling
- Improve bootstrap checks error messages

Discovery::
- Allow plugins to validate cluster-state on join

Engine::
- Add refresh stats tracking for realtime get
- Introducing a translog deletion policy
- Fill missing sequence IDs up to max sequence ID when recovering from
  store
- Use sequence numbers to identify out of order delivery in replicas &
  recovery
- Add replica ops with version conflict to translog
- Clarify global checkpoint recovery
- Move the IndexDeletionPolicy to be engine internal

Exceptions::
- IllegalStateException: Only duplicated jar instead of classpath

Highlighting::
- Picks offset source for the unified highlighter directly from the es
  mapping

Index APIs::
- Let primary own its replication group
- Create index request should return the index name

Index Templates::
- Fix error message for a put index template request without
  index_patterns

Ingest::
- Add Ingest-Processor specific Rest Endpoints & Add Grok endpoint
- Port support for commercial GeoIP2 databases from Logstash.
- add `exclude_keys` option to KeyValueProcessor
- Allow removing multiple fields in ingest processor
- Add target_field parameter to ingest processors

Inner Hits::
- Reuse inner hit query weight

Internal::
- TemplateUpgradeService should only run on the master
- Cleanup IndexFieldData visibility
- Bump the min compat version to 5.6.0
- "shard started" should show index and shard ID
- Break out clear scroll logic from TransportClearScrollAction
- Add helper methods to TransportActionProxy to identify proxy actions
  and requests
- Add remote cluster infrastructure to fetch discovery nodes.
- Add the ability to set eager_global_ordinals in the new parent-join
  field
- Disallow multiple parent-join fields per mapping
- Remove the need for _UNRELEASED suffix in versions
- Optimize the order of bytes in uuids for better compression.
- Prevent cluster internal `ClusterState.Custom` impls to leak to a
  client
- Use holder pattern for lazy deprecation loggers
- Allow `ClusterState.Custom` to be created on initial cluster states
- Try to convince the JVM not to lose stacktraces
- Make document write requests immutable
- Add assertions enabled helper

Java API::
- Always Accumulate Transport Exceptions

Java High Level REST Client::
- [DOCS] restructure java clients docs pages
- Use SPI in High Level Rest Client to load XContent parsers
- Add support for clear scroll to high level REST client
- Add search scroll method to high level REST client
- Add search method to high level REST client
- Make RestHighLevelClient Closeable and simplify its creation
- Add info method to High Level Rest client
- Add support for named xcontent parsers to high level REST client
- Add BulkRequest support to High Level Rest client
- Add UpdateRequest support to High Level Rest client
- Add delete API to the High Level Rest Client
- Add Index API to High Level Rest Client
- Add get/exists method to RestHighLevelClient
- Add fromxcontent methods to delete response
- Add REST high level client gradle submodule and first simple method
- Add doc_count to ParsedMatrixStats
- Add fromXContent method to ClearScrollResponse
- ClearScrollRequest to implement ToXContentObject
- SearchScrollRequest to implement ToXContentObject
- Add aggs parsers for high level REST Client

Java REST Client::
- Shade external dependencies in the rest client jar
- RestClient uses system properties and system default SSLContext
- Wrap rest httpclient with doPrivileged blocks

Logging::
- Prevent excessive disk consumption by log files
- Use LRU set to reduce repeat deprecation messages

Mapping::
- More efficient encoding of range fields.
- Don't detect source's XContentType in DocumentParser.parseDocument()
- Better validation of `copy_to`.
- Optimize `terms` queries on `ip` addresses to use a
  `PointInSetQuery` whenever possible.
- Loosen the restrictions on disabling _all in 6.x
- Date detection should not rely on a hardcoded set of characters.
- Identify documents by their `_id`.

Network::
- Add additional low-level logging handler
- Unwrap causes when maybe dying
- Move TransportStats accounting into TcpTransport
- Simplify connection closing and cleanups in TcpTransport
- Disable the Netty recycler in the client
- Remove Netty logging hack
- Isolate SocketPermissions to Netty
- Wrap netty accept/connect ops with doPrivileged
- Replace Socket, ServerSocket, and HttpServer usages in tests with
  mocksocket versions

Packaging::
- Remove memlock suggestion from systemd service
- Set address space limit in systemd service file
- Version option should display if snapshot
- Ignore JVM options before checking Java version
- Also skip JAVA_TOOL_OPTIONS on Windows
- Introduce elasticsearch-env for Windows
- Introduce elasticsearch-env
- Stop exporting HOSTNAME from scripts
- Set number of processes in systemd unit file

Parent/Child::
- Remove ParentJoinFieldSubFetchPhase
- Support parent id being specified as number in the _source

Percolator::
- Store the QueryBuilder's Writable representation instead of its
  XContent representation
- Add support for selecting percolator query candidate matches
  containing wildcard / prefix queries

Plugin Discovery EC2::
- Read ec2 discovery address from aws instance tags

Plugin Lang Painless::
- Allow Custom Whitelists in Painless
- Update Painless to Allow Augmentation from Any Class
- Add Needs Methods to Painless Script Context Factories
- Support Script Context Stateful Factory in Painless
- Generate Painless Factory for Creating Script Instances
- Update Painless to Use New Script Contexts
- Optimize instance creation in LambdaBootstrap
- Make Painless Compiler Use an Instance Per Context
- Make PainlessScript An Interface

Plugin Repository GCS::
- GCS Repository: Add secure storage of credentials

Plugin Repository HDFS::
- Add permission checks before reading from HDFS stream
- Add doPrivilege blocks for socket connect ops in repository-hdfs
- Add Kerberos support for Repo HDFS plugin

Plugin Repository S3::
- S3 Repository: Add back repository level credentials

Plugins::
- Adjust SHA-512 supported format on plugin install
- Move tribe to a module
- Plugins can register pre-configured char filters
- Add purge option to remove plugin CLI
- Allow plugins to register pre-configured tokenizers
- Move ReindexAction class to core
- Make PreConfiguredTokenFilter harder to misuse
- Plugins: Remove leniency for missing plugins dir
- Add doPrivilege blocks for socket connect operations in plugins

Query DSL::
- Make slop optional when parsing `span_near` query
- Require a field when a `seed` is provided to the `random_score`
  function.
- Add support for auto_generate_synonyms_phrase_query in match_query,
  multi_match_query, query_string and simple_query_string

REST::
- Cat shards bytes
- Refactor PathTrie and RestController to use a single trie for all
  methods
- Make ObjectParser support string to boolean conversion

Recovery::
- Introduce a History UUID as a requirement for ops based recovery
- Goodbye, Translog Views
- Disallow multiple concurrent recovery attempts for same target shard
- Live primary-replica resync (no rollback)
- Peer Recovery: remove maxUnsafeAutoIdTimestamp hand off
- Introduce sequence-number-based recovery

Scripting::
- Scripting: Rename SearchScript.needsScores to needs_score
- Scripting: Add optional context parameter to put stored script
  requests
- Add New Security Script Settings
- Add StatefulFactoryType as optional intermediate factory in script
  contexts
- Make contexts available to ScriptEngine construction
- Make ScriptEngine.compile generic on the script context
- Add instance and compiled classes to script contexts

Search::
- Add soft limit on allowed number of script fields in request
- Add a soft limit for the number of requested doc-value fields
- Rewrite search requests on the coordinating nodes
- Ensure query resources are fetched asynchronously during rewrite
- Introduce a new Rewriteable interface to streamline rewriting
- Reduce the scope of `QueryRewriteContext`
- Reduce the overhead of timeouts and low-level search cancellation.
- Reduce profiling overhead.
- Prevent `can_match` requests from sending to incompatible nodes
- Add a shard filter search phase to pre-filter shards based on query
  rewriting
- Ensure we rewrite common queries to `match_none` if possible
- Limit the number of concurrent shard requests per search request
- Add cluster name validation to RemoteClusterConnection
- Speed up sorted scroll when the index sort matches the search sort
- Leverage scorerSupplier when applicable.
- Add Cross Cluster Search support for scroll searches
- Track EWMA[1] of task execution time in search threadpool executor
- Query range fields by doc values when they are expected to be more
  efficient than points
- Search: Fairer balancing when routing searches by session ID
-  Add parsing from xContent to Suggest
- Add parsing from xContent to ShardSearchFailure
- Eliminate array access in tight loops when profiling is enabled.
- Support Multiple Inner Hits on a Field Collapse Request
- Expand cross cluster search indices for search requests to the
  concrete index or to it's aliases

Search Templates::
- Add max concurrent searches to multi template search

Sequence IDs::
- Roll translog generation on primary promotion
- Restoring from snapshot should force generation of a new history
  uuid
- Add global checkpoint tracking on the primary
- Introduce global checkpoint background sync
- Move `UNASSIGNED_SEQ_NO` and `NO_OPS_PERFORMED` to SequenceNumbers`
- Move primary term from ReplicationRequest to ConcreteShardRequest
- Add reason to global checkpoint updates on replica
- Introduce primary/replica mode for GlobalCheckPointTracker
- Throw back replica local checkpoint on new primary
- Update global checkpoint when increasing primary term on replica
- Enable a long translog retention policy by default
- Introduce primary context
- Block older operations on primary term transition
- Block global checkpoint advances when recovering
- Add primary term to doc write response
- Preserve multiple translog generations
- Introduce translog generation rolling
- Replicate write failures
- Introduce sequence-number-aware translog
- Introduce translog no-op
- Tighten sequence numbers recovery
- Add BWC layer to seq no infra and enable BWC tests
- Add internal _primary_term doc values field, fix _seq_no indexing
- Add global checkpoint to translog checkpoints
- Sequence numbers commit data for Lucene uses Iterable interface
- Simplify GlobalCheckpointService and properly hook it for cluster
  state updates
- Fill gaps on primary promotion
- Introduce clean transition on primary promotion
- Guarantee that translog generations are seqNo conflict free
- Inline global checkpoints

Settings::
- Add disk threshold settings validation
- Enable cross-setting validation
- Validate `transport.profiles.*` settings
- Cleanup network / transport related settings
- Emit settings deprecation logging at most once
- IndexMetaData: Introduce internal format index setting
- Persist created keystore on startup unless keystore is present
- Settings: Add keystore.seed auto generated secure setting
- Settings: Add keystore creation to add commands

Snapshot/Restore::
- Fixed references to Multi Index Syntax
- Improves snapshot logging and snapshot deletion error handling
- Enhances get snapshots API to allow retrieving repository index only

Stats::
- Update `IndexShard#refreshMetric` via a
  `ReferenceManager.RefreshListener`
- Expose disk usage estimates in nodes stats

Store::
- Remote support for lucene versions without checksums

Suggesters::
- Remove deprecated _suggest endpoint

Task Manager::
- Add descriptions to bulk tasks

Translog::
- Translog file recovery should not rely on lucene commits



=== Bug fixes

Aggregations::
- Do not delegate a null scorer to LeafBucketCollectors
- Create weights lazily in filter and filters aggregation
- Fix IndexOutOfBoundsException in histograms for NaN doubles (#26787)
- Scripted_metric _agg parameter disappears if params are provided
- Fixes array out of bounds for value count agg
- Aggregations bug: Significant_text fails on arrays of text.
- Check bucket metric ages point to a multi bucket agg
- Terms aggregation should remap global ordinal buckets when a
  sub-aggregator is used to sort the terms
- Correctly set doc_count when MovAvg "predicts" values on existing
  buckets
- DateHistogram: Fix `extended_bounds` with `offset`
- Fix ArrayIndexOutOfBoundsException when no ranges are specified in
  the query

Aliases::
- mget with an alias shouldn't ignore alias routing
- GET aliases should 404 if aliases are missing

Allocation::
- Fix DiskThresholdMonitor flood warning
- Allow wildcards for shard IP filtering

Analysis::
- Pre-configured shingle filter should disable graph analysis
- PatternAnalyzer should lowercase wildcard queries when `lowercase`
  is true.

CAT API::
- Fix NPE for /_cat/indices when no primary shard

CRUD::
- Serialize and expose timeout of acknowledged requests in REST layer
- Fix silent loss of last command to _bulk and _msearch due to missing
  newline

Cache::
- Reduce the default number of cached queries.
- fix bug of weight computation

Circuit Breakers::
- Checks the circuit breaker before allocating bytes for a new big
  array

Cluster::
- Register setting `cluster.indices.tombstones.size`

Core::
- Correctly encode warning headers
- Fix cache compute if absent for expired entries
- Timed runnable should delegate to abstract runnable
- Stop invoking non-existent syscall
- MetaData Builder doesn't properly prevent an alias with the same
  name as an index
- Release operation permit on thread-pool rejection
- Node should start up despite of a lingering `.es_temp_file`
- Fix cache expire after access

Dates::
- Fix typo in date format

Discovery::
- MasterNodeChangePredicate should use the node instance to detect
  master change

Engine::
- Die with dignity while merging
- Engine - do not index operations with seq# lower than the local
  checkpoint into lucene

Geo::
- Fix typo in GeoUtils#isValidLongitude

Highlighting::
- Fix percolator highlight sub fetch phase to not highlight query
  twice
- FastVectorHighlighter should not cache the field query globally
- Higlighters: Fix MultiPhrasePrefixQuery rewriting
- Fix nested query highlighting

Index APIs::
- Shrink API should ignore templates
- Rollover max docs should only count primaries
- Validates updated settings on closed indices

Ingest::
- date processor should not fail if timestamp is specified as json
  number
- date_index_name processor should not fail if timestamp is specified
  as json number
- Sort Processor does not have proper behavior with targetField
- fix grok's pattern parsing to validate pattern names in expression
- Remove support for Visio and potm files
- Fix floating-point error when DateProcessor parses UNIX
- add option for _ingest.timestamp to use new ZonedDateTime (5.x
  backport)

Inner Hits::
- Do not allow inner hits that fetch _source and have a non nested
  object field as parent
- When fetching nested inner hits only access stored fields when
  needed
- If size / offset are out of bounds just do a plain count
- Fix Source filtering in new field collapsing feature

Internal::
- Bump version to 6.0.1
- `IndexShard.routingEntry` should only be updated once all internal
  state is ready
- Catch exceptions and inform handler in
  RemoteClusterConnection#collectNodes
- Internal: Add versionless alias for rest client codebase in policy
  files
- Upgrade Lucene to version 7.0.1
- Fix BytesReferenceStreamInput#skip with offset
- Fix race condition in RemoteClusterConnection node supplier
- Initialise empty lists in BaseTaskResponse constructor
- Extract a common base class for scroll executions
- Obey lock order if working with store to get metadata snapshots
- Fix Version based BWC and set correct minCompatVersion
- Fix `_field_caps` serialization in order to support cross cluster
  search
- Avoid race when shutting down controller processes
- Fix handling of document failure exception in InternalEngine
- Ensure remote cluster is connected before fetching `_field_caps`

Java API::
- BulkProcessor flush runnable preserves the thread context from
  creation time

Java High Level REST Client::
- Make RestHighLevelClient's Request class public
- Forbid direct usage of ContentType.create() methods
- Make ShardSearchTarget optional when parsing ShardSearchFailure

Java REST Client::
- Better message text for ResponseException
- rest-client-sniffer: configurable threadfactory

Logging::
- Allow not configure logging without config

Mapping::
- Allow copying from a field to another field that belongs to the same
  nested object.
- Fixed bug that mapper_parsing_exception is thrown for numeric field
  with ignore_malformed=true when inserting "NaN"
- Coerce decimal strings for whole number types by truncating the
  decimal part
- Fix parsing of ip range queries.
- Disable date field mapping changing
- Correctly enable _all for older 5.x indices
- token_count datatype should handle null value
- keep _parent field while updating child type mapping
- ICUCollationKeywordFieldMapper use SortedSetDocValuesField
- Fix serialization of the `_all` field.

More Like This::
- Pass over _routing value with more_like_this items to be retrieved

NOT CLASSIFIED::
- DocumentMissingException during Logstash scripted upsert
- An assertion trips when master opens an index from before 5.x

Nested Docs::
- In case of a single type the _id field should be added to the nested
  document instead of _uid field
- Inner hits source filtering not working

Network::
- Fixed ByteBuf leaking in
  org.elasticsearch.http.netty4.Netty4HttpRequestHandler
- Check for closed connection while opening
- Ensure pending transport handlers are invoked for all channel
  failures
- Notify onConnectionClosed rather than onNodeDisconnect to prune
  transport handlers
- Release pipelined http responses on close
- Fix error message if an incompatible node connects

Packaging::
- Fix handling of Windows paths containing parentheses
- Exit Windows scripts promptly on failure
- Pass config path as a system property
- ES_HOME needs to be made absolute before attempt at traversal
- Fix elasticsearch-keystore handling of path.conf
- Stop disabling explicit GC
- Avoid failing install if system-sysctl is masked
- Get short path name for native controllers
- When stopping via systemd only kill the JVM, not its control group
- remove remaining references to scripts directory
- Handle parentheses in batch file path
- Detect modified keystore on package removal
- Create keystore on RPM and Debian package install
- Add safer empty variable checking for Windows
- Export HOSTNAME environment variable
- Fix daemonization command status test
- Set RuntimeDirectory in systemd service

Parent/Child::
- The default _parent field should not try to load global ordinals

Percolator::
- Also support query extraction for queries wrapped inside a
  ESToParentBlockJoinQuery
- Fix range queries with date range based on current time in
  percolator queries.

Plugin Analysis Kuromoji::
- Fix kuromoji default stoptags

Plugin Analysis Phonetic::
- Fix beidermorse phonetic token filter for unspecified `languageset`

Plugin Discovery File::
- Fix discovery-file plugin to use custom config path

Plugin Ingest Attachment::
- Add missing mime4j library

Plugin Lang Painless::
- Painless: allow doubles to be casted to longs.

Plugin Repository Azure::
- Azure snapshots can not be restored anymore
- Snapshot : azure module - accelerate the listing of files (used in
  delete snapshot)
- Use Azure upload method instead of our own implementation
- Make calls to CloudBlobContainer#exists privileged

Plugin Repository GCS::
- Ensure that gcs client creation is privileged

Plugin Repository HDFS::
- Add Log4j to SLF4J binding for repository-hdfs
- Upgrading HDFS Repository Plugin to use HDFS 2.8.1 Client

Plugin Repository S3::
- Avoid SecurityException in repository-S3 on
  DefaultS3OutputStream.flush()
- Wrap getCredentials() in a doPrivileged() block

Plugins::
- X-Pack plugin download fails on Windows desktop
- Fix plugin installation permissions

Query DSL::
- Fixed incomplete JSON body on count request making
  org.elasticsearch.rest.action.RestActions#parseTopLevelQueryBuilder
go into endless loop
- SpanNearQueryBuilder should return the inner clause when a single
  clause is provided
- Refactor field expansion for match, multi_match and query_string
  query
- WrapperQueryBuilder should also rewrite the parsed query

REST::
- Rest test fixes
- Fix inconsistencies in the rest api specs for cat.snapshots
- Fix inconsistencies in the rest api specs for *_script
- exists template needs a template name
- Fix handling of invalid error trace parameter
- Fix handling of exceptions thrown on HEAD requests
- Fixed NPEs caused by requests without content.
- Fix get mappings HEAD requests

Recovery::
- Close translog view after primary-replica resync

Reindex API::
- Fix update_by_query's default size parameter
- Reindex: don't duplicate _source parameter
- Add qa module that tests reindex-from-remote against pre-5.0
  versions of Elasticsearch

Scroll::
- Fix single shard scroll within a cluster with nodes in version `>=
  5.3` and `<= 5.3`

Search::
- Fail query when a sort is provided in conjunction with rescorers
- Let search phases override max concurrent requests
- Avoid stack overflow on search phases
- Fix search_after with geo distance sorting
- Fix serialization errors when cross cluster search goes to a single
  shard
- Early termination with index sorting should not set terminated_early
  in the response
- Format doc values fields.
- Fix term(s) query for range field
- Caching a MinDocQuery can lead to wrong results.
- Fix random score generation when no seed is provided.
- Merge FunctionScoreQuery and FiltersFunctionScoreQuery
- Respect cluster alias in `_index` aggs and queries
- First increment shard stats before notifying and potentially sending
  response
- Remove assertion about deviation when casting to a float.
- Prevent skipping shards if a suggest builder is present
- Ensure remote cluster alias is preserved in inner hits aggs
- Do not search locally if remote index pattern resolves to no indices
- Adds check for negative search request size
- Make sure range queries are correctly profiled.
- Fix RangeFieldMapper rangeQuery to properly handle relations
- Fix ExpandSearchPhase when response contains no hits
- Refactor simple_query_string to handle text part like multi_match
  and query_string
- Fix `_exists_` in query_string on empty indices.
- Fix script field sort returning Double.MAX_VALUE for all documents
- Compute the took time of the query after the expand phase of field
  collapsing

Sequence IDs::
- Fire global checkpoint sync under system context
- Fix pre-6.0 response to unknown replication actions
- Track local checkpoint on primary immediately
- Initialize max unsafe auto ID timestamp on shrink
- Use correct primary term for replicating NOOPs
- Handle already closed while filling gaps
- TranslogWriter.assertNoSeqNumberConflict failure
- Avoid losing ops in file-based recovery
- Handle primary failure handling replica response

Settings::
- Emit settings deprecation logging on empty update
- Fix filtering for ListSetting
- Fix settings serialization to not serialize secure settings or not
  take the total size into account
- Keystore CLI should use the AddFileKeyStoreCommand for files
- Allow resetting settings that use an IP validator
- Updating an unrecognized setting should error out with that reason
- Settings: Fix setting groups to include secure settings

Similarities::
- Add boolean similarity to built in similarity types

Snapshot/Restore::
- Snapshot/Restore: better handle incorrect chunk_size settings in FS
  repo
- Snapshot/Restore: Ensure that shard failure reasons are correctly
  stored in CS
- Output all empty snapshot info fields if in verbose mode
- Remove redundant and broken MD5 checksum from repository-s3
- Consolidates the logic for cleaning up snapshots on master election
- Removes completed snapshot from cluster state on master change
- Keep snapshot restore state and routing table in sync
- Master failover during snapshotting could leave the snapshot
  incomplete
- Fix inefficient (worst case exponential) loading of snapshot
  repository

Stats::
- Fix RestGetAction name typo
- Keep cumulative elapsed scroll time in microseconds
- _nodes/stats should not fail due to concurrent
  AlreadyClosedException
- Avoid double decrement on current query counter
- Adjust available and free bytes to be non-negative on huge FSes

Suggesters::
- Fix division by zero in phrase suggester that causes assertion to
  fail
- Context suggester should filter doc values field
- Fix context suggester to read values from keyword type field

Templates::
- Tests: Fix FullClusterRestartIT.testSnapshotRestore test failing in
  6.x

Translog::
- Fix Translog.Delete serialization for sequence numbers

Upgrade API::
- Upgrade API: fix excessive logging and unnecessary template updates



=== Regressions

Bulk::
- Only re-parse operation if a mapping update was needed

Highlighting::
- Fix Fast Vector Highlighter NPE on match phrase prefix

Search::
- Always use DisjunctionMaxQuery to build cross fields disjunction

Sequence IDs::
- Indexing performance degradation in 6.0.0-beta1



=== Upgrades

Core::
- Upgrade to Lucene 7.0.0

Logging::
- Upgrade to Log4j 2.9.1

Network::
- Upgrade to Netty 4.1.13.Final

Plugin Ingest Attachment::
- Update to Tika 1.14

Upgrade API::
- Improve stability and logging of TemplateUpgradeServiceIT tests
2017-11-20 15:36:47 +00:00
fhajny
c520c041c9 databases/elasticsearch: PKG_JAVA_HOME needs quoting on at least Darwin 2017-10-30 11:27:32 +00:00
fhajny
d2eb8225d2 Update databases/elasticsearch to 5.6.3.
=== Enhancements

Network::
* Add additional low-level logging handler
* Unwrap exception causes when checking if  dying


=== Bug fixes

Aggregations::
* Fix IndexOutOfBoundsException in histograms for NaN doubles

Core::
* MetaData Builder doesn't properly prevent an alias with the same
* name as an index

Packaging::
* Fix default paths for Windows service

Plugin Repository Azure::
* Use Azure upload method instead of our own implementation

Search::
* Fix serialization errors when cross cluster search goes to a single
* shard
2017-10-17 11:27:04 +00:00
fhajny
4ae175ad18 Update databases/elasticsearch to 5.6.2.
== 5.6.2 Release Notes

=== Bug fixes

Aggregations::
- Do not delegate a null scorer to LeafBucketCollectors

Inner Hits::
- Do not allow inner hits that fetch _source and have a non nested
  object field as parent

Internal::
- Catch exceptions and inform handler in
  RemoteClusterConnection#collectNodes

Java API::
- BulkProcessor flush runnable preserves the thread context from
  creation time

Java High Level REST Client::
- Make RestHighLevelClient's Request class public

Plugin Analysis Kuromoji::
- Fix kuromoji default stoptags

Plugin Repository HDFS::
- Fix permission errors when using Read Only HDFS Repository

Query DSL::
-  Fixed incomplete JSON body on count request making
   org.elasticsearch.rest.action.RestActions#parseTopLevelQueryBuilder
   go into endless loop

Scripting::
- Add missing script contexts and types allowed settings

Upgrade API::
- Upgrade API: fix excessive logging and unnecessary template updates

=== Upgrades

Logging::
- Upgrade to Log4j 2.9.1


== 5.6.1 Release Notes

=== Bug fixes

Highlighting::
- Fix percolator highlight sub fetch phase to not highlight query twice

Mapping::
- Fix unmapped_type creation for indices created in 2.x

Similarities::
- Add boolean similarity to built in similarity types

=== Upgrades

Core::
- Upgrade to Lucene-6.6.1.


== 5.6.0 Release Notes

=== Breaking Java changes

Java High Level REST Client::
- Allow RestHighLevelClient to use plugins

Java REST Client::
- Rename client artifacts

=== Deprecations

Highlighting::
- Postings highlighter deprecation

Indexed Scripts/Templates::
- Scripting: Deprecate stored search template apis

Mapping::
- Add deprecation logging when _all is enabled

Query DSL::
- Deprecate omitting terms lookup index name in 5.6

Scripting::
- Scripting: Deprecate scripts.max_compilation_per_minute setting
- Scripting: Change keys for inline/stored scripts to source/id

Tribe Node::
- Deprecate tribe service

=== New features

Java High Level REST Client::
- Backport high level REST client

Parent/Child::
- Typeless parent child backport
- Move parent_id query to the parent-join module
- Introduce ParentJoinFieldMapper, a field mapper that creates
  parent/child relation within documents of the same index

Upgrade API::
- TemplateUpgraders should be called during rolling restart

=== Enhancements

Allocation::
- Adjust status on bad allocation explain requests
- Promote replica on the highest version node

Analysis::
- [analysis-icu] Allow setting unicodeSetFilter

CAT API::
- expand `/_cat/nodes` to return information about hard drive

Cluster::
- Validate a joining node's version with version of existing cluster
  nodes

Core::
- Add max file size bootstrap check
- Explicitly reject duplicate data paths

Highlighting::
- Picks offset source for the unified highlighter directly from the es
  mapping

Index APIs::
- Create index request should return the index name

Ingest::
- Add Ingest-Processor specific Rest Endpoints & Add Grok endpoint
- Port support for commercial GeoIP2 databases from Logstash.
- Allow removing multiple fields in ingest processor
- Add target_field parameter to ingest processors

Internal::
- Use holder pattern for lazy deprecation loggers
- "shard started" should show index and shard ID
- Break out clear scroll logic from TransportClearScrollAction
- Add helper methods to TransportActionProxy to identify proxy actions
  and requests
- Add remote cluster infrastructure to fetch discovery nodes.
- Disallow multiple parent-join fields per mapping

Java High Level REST Client::
- [DOCS] restructure java clients docs pages
- Use SPI in High Level Rest Client to load XContent parsers

Java REST Client::
- Shade external dependencies in the rest client jar
- RestClient uses system properties and system default SSLContext

Logging::
- Use LRU set to reduce repeat deprecation messages

Mapping::
- Optimize `terms` queries on `ip` addresses to use a `PointInSetQuery`
  whenever possible.

Network::
- Simplify connection closing and cleanups in TcpTransport

Packaging::
- Remove memlock suggestion from systemd service
- Set address space limit in systemd service file

Parent/Child::
- Remove ParentJoinFieldSubFetchPhase
- Support parent id being specified as number in the _source

Query DSL::
- Make slop optional when parsing `span_near` query

Search::
- Reduce the overhead of timeouts and low-level search cancellation.
- Reduce profiling overhead.
- Backport `can_match` endpoint to 5.6 to allow 6.0 to use the
  optimization in mixed version
- Add a shard filter search phase to pre-filter shards based on query
  rewriting
- Ensure we rewrite common queries to `match_none` if possible
- Limit the number of concurrent shard requests per search request
- Add cluster name validation to RemoteClusterConnection
- Leverage scorerSupplier when applicable.
- Add Cross Cluster Search support for scroll searches

Sequence IDs::
- 5.x - Move primary term from ReplicationRequest to
  ConcreteShardRequest
- Forward compatibility for primary context handoff on 6.x

Settings::
- Emit settings deprecation logging at most once
- IndexMetaData: Introduce internal format index setting

Snapshot/Restore::
- Improves snapshot logging and snapshot deletion error handling

Stats::
- Update `IndexShard#refreshMetric` via a
  `ReferenceManager.RefreshListener`

=== Bug fixes

Aggregations::
- Fixes array out of bounds for value count agg

Aliases::
- mget with an alias shouldn't ignore alias routing

Allocation::
- Allow wildcards for shard IP filtering

Analysis::
- Pre-configured shingle filter should disable graph analysis

CRUD::
- Serialize and expose timeout of acknowledged requests in REST layer
  (ES 5.6)

Cluster::
- Register setting `cluster.indices.tombstones.size`

Core::
- Release operation permit on thread-pool rejection
- Node should start up despite of a lingering `.es_temp_file`

Discovery::
- MasterNodeChangePredicate should use the node instance to detect
  master change

Engine::
- Engine - Do not store operations that are not index into lucene in the
  translog (5.x only)

Geo::
- Fix GeoPoint FieldStats ternary logic bug

Highlighting::
- Fix nested query highlighting
- FastVectorHighlighter should not cache the field query globally

Index APIs::
- Shrink API should ignore templates
- Rollover max docs should only count primaries

Ingest::
- Sort Processor does not have proper behavior with targetField

Inner Hits::
- Fix inner hits to work with queries wrapped in an indices query
- When fetching nested inner hits only access stored fields when needed

Internal::
- Fix BytesReferenceStreamInput#skip with offset
- Fix race condition in RemoteClusterConnection node supplier
- Initialise empty lists in BaseTaskResponse constructor

Java High Level REST Client::
- Register ip_range aggregation with the high level client
- add top hits as a parsed aggregation to the rest high level client

Logging::
- Lazy initialize deprecation logger in parser
- Allow not configure logging without config
- Declare XContent deprecation logger as static

Mapping::
- ICUCollationKeywordFieldMapper use SortedSetDocValuesField
- Fixed bug that mapper_parsing_exception is thrown for numeric field
  with ignore_malformed=true when inserting "NaN"
- Coerce decimal strings for whole number types by truncating the
  decimal part
- Fix parsing of ip range queries.
- Remove `fielddata:false` from mappings of non-analyzed strings.
- Disable date field mapping changing
- token_count datatype should handle null value
- keep _parent field while updating child type mapping

Nested Docs::
- In case of a single type the _id field should be added to the nested
  document instead of _uid field

Network::
- Release pipelined http responses on close
- Ensure pending transport handlers are invoked for all channel failures

Packaging::
- setgid on /etc/elasticearch on package install
- Stop disabling explicit GC
- Avoid failing install if system-sysctl is masked
- Get short path name for native controllers
- When stopping via systemd only kill the JVM, not its control group

Parent/Child::
- The default _parent field should not try to load global ordinals

Plugin Lang Painless::
- Painless: allow doubles to be casted to longs.

Plugin Repository HDFS::
- Upgrading HDFS Repository Plugin to use HDFS 2.8.1 Client

Query DSL::
- Parse "*" in query_string_query as MatchAllDocsQuery
- SpanNearQueryBuilder should return the inner clause when a single
  clause is provided
- WrapperQueryBuilder should also rewrite the parsed query

REST::
- Fix handling of exceptions thrown on HEAD requests

Search::
- Fix term(s) query for range field
- Caching a MinDocQuery can lead to wrong results.
- First increment shard stats before notifying and potentially sending
  response
- Remove assertion about deviation when casting to a float.
- Prevent skipping shards if a suggest builder is present
- Ensure remote cluster alias is preserved in inner hits aggs
- Do not search locally if remote index pattern resolves to no indices

Settings::
- Fix settings serialization to not serialize secure settings or not
  take the total size into account
- Keystore CLI should use the AddFileKeyStoreCommand for files

Snapshot/Restore::
- Snapshot/Restore: fix NPE while handling null failure reasons
- Snapshot/Restore: Ensure that shard failure reasons are correctly
  stored in CS
- Output all empty snapshot info fields if in verbose mode

Stats::
- _nodes/stats should not fail due to concurrent AlreadyClosedException

Suggesters::
- Context suggester should filter doc values field

=== Upgrades

Network::
- Upgrade to Netty 4.1.13.Final

Upgrade API::
- Improve stability and logging of TemplateUpgradeServiceIT tests


== 5.5.3 Release Notes

=== Deprecations

Mapping::
- Add deprecation logging when _all is enabled

=== Bug fixes

Packaging::
- setgid on /etc/elasticearch on package install
2017-09-27 12:33:36 +00:00
fhajny
807670d84a elasticsearch 5.5.2
======================================================================

=== Bug fixes

Aggregations::
- Fixes array out of bounds for value count agg

Core::
- Release operation permit on thread-pool rejection

Inner Hits::
- Fix inner hits to work with queries wrapped in an indices query
- When fetching nested inner hits only access stored fields when needed

Logging::
- Declare XContent deprecation logger as static

Query DSL::
- Parse "*" in query_string_query as MatchAllDocsQuery



elasticsearch 5.5.1
======================================================================

=== Bug fixes

Aliases::
- mget with an alias shouldn't ignore alias routing

Engine::
- Engine - Do not store operations that are not index into lucene in the
  translog (5.x only)

Internal::
- Fix BytesReferenceStreamInput#skip with offset

Packaging::
- Stop disabling explicit GC
- Avoid failing install if system-sysctl is masked
- Get short path name for native controllers

Query DSL::
- WrapperQueryBuilder should also rewrite the parsed query



elasticsearch 5.5.0
======================================================================

=== Breaking changes

Plugins::
- Remove hidden file leniency from spawner

Settings::
- Remove support for default settings

=== Breaking Java changes

Aggregations::
- Remove the unused SignificantTerms.compareTerm() method
- Make SignificantTerms.Bucket an interface rather than an abstract
  class
- Make Terms.Bucket an interface rather than an abstract class

Plugin Delete By Query::
- Move DeleteByQuery and Reindex requests into core


=== Deprecations

Index APIs::
- Deprecated use of + in index expressions

Packaging::
- Add deprecation warnings for $ES_USER and $ES_GROUP

Plugin Repository S3::
- S3 Repository: Deprecate remaining `repositories.s3.*` settings

REST::
- Add deprecation logging for comma-separated feature parsing

Scripting::
- Scripting: Deprecate native scripts
- Scripting: Deprecate index lookup
- Deprecate Fine Grain Settings for Scripts
- Scripting: Deprecate file script settings
- Scripting: Deprecate file scripts

Settings::
- Settings: Update settings deprecation from yml to yaml
- Deprecate settings in .yml and .json

Tribe Node::
- Deprecate tribe service


=== New features

Mapping::
- Add new ip_range field type

Plugin Analysis ICU::
- Add ICUCollationFieldMapper


=== Enhancements

Aggregations::
- Add superset size to Significant Term REST response
- Add document count to Matrix Stats aggregation response
-  Share XContent rendering code in significant terms aggregations
- Add `count` to rest output of `geo_centroid`
- Allow scripted metric agg to access `_score`

Aliases::
- Handle multiple aliases in _cat/aliases api

Circuit Breakers::
- Closing a ReleasableBytesStreamOutput closes the underlying BigArray

Cluster::
- Add a cluster block that allows to delete indices that are read-only
- Extract a common base class to allow services to listen to remote
  cluster config updates

Core::
- Explicitly reject duplicate data paths
- Use SPI in High Level Rest Client to load XContent parsers
- Improve bootstrap checks error messages
- Regex upgrades
- Detect remnants of path.data/default.path.data bug

Engine::
- Add refresh stats tracking for realtime get
- Engine: store maxUnsafeAutoIdTimestamp in commit

Exceptions::
- IllegalStateException: Only duplicated jar instead of classpath

Index APIs::
- Open and close index to honour allow_no_indices option

Ingest::
- add `exclude_keys` option to KeyValueProcessor

Inner Hits::
- Reuse inner hit query weight

Internal::
- "shard started" should show index and shard ID
- Add the ability to set eager_global_ordinals in the new parent-join
  field
- Add assertions enabled helper
- Add cross cluster support to `_field_caps`
- Log JVM arguments on startup
- Preserve cluster alias throughout search execution to lookup nodes by
  cluster and ID
- Move RemoteClusterService into TransportService
- Enum related performance additions.

Java API::
- Always Accumulate Transport Exceptions

Java High Level REST Client::
- Add doc_count to ParsedMatrixStats
- Add fromXContent method to ClearScrollResponse
- ClearScrollRequest to implement ToXContentObject
- SearchScrollRequest to implement ToXContentObject
- Backport aggs parsers for high level REST Client
- Add utility method to parse named XContent objects with typed prefix

Logging::
- Warn on not enough masters during election

Mapping::
- Do not index `_type` when there is at most one type.
- Only allow one type on 6.0 indices
- token_count type : add an option to count tokens (fix #23227)

Network::
- Disable the Netty recycler in the client
- Remove Netty logging hack
- Set available processors for Netty

Packaging::
- Set number of processes in systemd unit file

Plugin Lang Painless::
- Optimize instance creation in LambdaBootstrap
- Allow painless to load stored fields

Plugin Repository GCS::
- GCS Repository: Add secure storage of credentials

Plugins::
- Add purge option to remove plugin CLI
- Move ReindexAction class to core
- Plugins: Add support for platform specific plugins

REST::
- Make ObjectParser support string to boolean conversion
- Allow passing single scrollID in clear scroll API body

Scripting::
- Add Ability to Specify No Types/Contexts Allowed For Scripts
- Add New Security Script Settings

Search::
- Eliminate array access in tight loops when profiling is enabled.
- Support Multiple Inner Hits on a Field Collapse Request
- Expand cross cluster search indices for search requests to the
  concrete index or to it's aliases
- Remove leniency when merging fetched hits in a search response phase

Search Templates::
- Add max concurrent searches to multi template search

Settings::
- Emit settings deprecation logging at most once

Snapshot/Restore::
- Improves snapshot logging and snapshot deletion error handling
- Enhances get snapshots API to allow retrieving repository index only
- Ensure every repository has an incompatible-snapshots blob
- Change snapshot status error to use generic SnapshotException

Stats::
- Show JVM arguments

Suggesters::
- Provide informative error message in case of unknown suggestion
  context.
- Allow different data types for category in Context suggester

Upgrade API::
- Allow plugins to upgrade templates and index metadata on startup


=== Bug fixes

Aggregations::
- Terms aggregation should remap global ordinal buckets when a
  sub-aggregator is used to sort the terms
- Correctly set doc_count when MovAvg "predicts" values on existing
  buckets
- InternalPercentilesBucket should not rely on ordered percents array
- Align behavior HDR percentiles iterator with percentile() method
- DateHistogram: Fix `extended_bounds` with `offset`
- Fix ArrayIndexOutOfBoundsException when no ranges are specified in the
  query

Aliases::
- GET aliases should 404 if aliases are missing

Allocation::
- Discard stale node responses from async shard fetching

Analysis::
- PatternAnalyzer should lowercase wildcard queries when `lowercase` is
  true.

Bulk::
- Reject empty IDs

Cache::
- fix bug of weight computation

Circuit Breakers::
- Checks the circuit breaker before allocating bytes for a new big array

Core::
- Fix cache expire after access
- Check for default.path.data included in path.data

Geo::
- Fix GeoPoint FieldStats ternary logic bug
- Fix GeoDistance Ordinal for BWC

Highlighting::
- Higlighters: Fix MultiPhrasePrefixQuery rewriting

Index APIs::
- Rollover max docs should only count primaries
- Fix legacy GeoPointField decoding in FieldStats
- Validates updated settings on closed indices
- Fixes restore of a shrunken index when initial recovery node is gone

Ingest::
- fix grok's pattern parsing to validate pattern names in expression
- Fix floating-point error when DateProcessor parses UNIX
- add option for _ingest.timestamp to use new ZonedDateTime (5.x
  backport)

Inner Hits::
- Fix Source filtering in new field collapsing feature

Internal::
- Fix race condition in RemoteClusterConnection node supplier
- Initialise empty lists in BaseTaskResponse constructor
- Extract a common base class for scroll executions
- Ensure remote cluster is connected before fetching `_field_caps`
- Obey lock order if working with store to get metadata snapshots
- Remove `_UNRELEASED` from Version constants for released versions
- Fix `_field_caps` serialization in order to support cross cluster
  search
- Avoid race when shutting down controller processes
- Fix NPE if field caps request has a field that exists not in all
  indices

More Like This::
- Pass over _routing value with more_like_this items to be retrieved

Nested Docs::
- In case of a single type the _id field should be added to the nested
  document instead of _uid field

Network::
- Ensure pending transport handlers are invoked for all channel failures
- Notify onConnectionClosed rather than onNodeDisconnect to prune
  transport handlers
- SniffNodesSampler should close connection after handling responses

Packaging::
- When stopping via systemd only kill the JVM, not its control group
- Handle parentheses in batch file path

Percolator::
- Fix range queries with date range based on current time in percolator
  queries.
- For legacy indices rewrite percolator query upon percolation time
- Fix memory leak when percolator uses bitset or field data cache

Plugin Lang Painless::
- painless: Fix method references to ctor with the new LambdaBootstrap
  and cleanup code
- Fix Painless Lambdas for Java 9

Plugins::
- X-Pack plugin download fails on Windows desktop
- Fix plugin installation permissions
- Fix delete of plugin directory on remove plugin
- Use a marker file when removing a plugin
- Remove hidden file leniency from plugin service

Query DSL::
- Thread falls into infinite loop when processing Indices query

REST::
- Fix handling of exceptions thrown on HEAD requests
- Fixed NPEs caused by requests without content.
- Fix get mappings HEAD requests

Recovery::
- Provide target allocation id as part of start recovery request

Reindex API::
- Reindex: don't duplicate _source parameter
- Add qa module that tests reindex-from-remote against pre-5.0 versions
  of Elasticsearch

Scroll::
- Fix single shard scroll within a cluster with nodes in version `>=
  5.3` and `<= 5.3`

Search::
- Adds check for negative search request size
- Do not search locally if remote index pattern resolves to no indices
- Make sure range queries are correctly profiled.
- Compute the took time of the query after the expand phase of field
  collapsing
- Fix RangeFieldMapper rangeQuery to properly handle relations
- Fix ExpandSearchPhase when response contains no hits
- Include all aliases including non-filtering in  `_search_shards`
  response
- Cross Cluster Search: propagate original indices per cluster

Search Templates::
- No longer add illegal content type option to stored search templates

Settings::
- Keystore CLI should use the AddFileKeyStoreCommand for files
- Settings: Fix setting groups to include secure settings
- Allow resetting settings that use an IP validator
- Do not set path.data in environment if not set

Snapshot/Restore::
- Output all empty snapshot info fields if in verbose mode
- Remove redundant and broken MD5 checksum from repository-s3
- Consolidates the logic for cleaning up snapshots on master election
- Removes completed snapshot from cluster state on master change
- Fix inefficient (worst case exponential) loading of snapshot
  repository
- Fixes maintaining the shards a snapshot is waiting on

Stats::
- _nodes/stats should not fail due to concurrent AlreadyClosedException
- Avoid double decrement on current query counter

Suggesters::
- Fix context suggester to read values from keyword type field

Task Manager::
- Task Management: Make TaskInfo parsing forwards compatible


=== Regressions

Highlighting::
- Fix Fast Vector Highlighter NPE on match phrase prefix


=== Upgrades

Core::
- Upgrade to Lucene 6.5.1

Network::
- Upgrade to Netty 4.1.11.Final
- Upgrade Netty to 4.1.10.Final
2017-08-18 09:03:08 +00:00
fhajny
c7bc5f4529 Update databases/elasticsearch to 5.4.3.
Snapshot/Restore::
* Improves snapshot logging and snapshot deletion error handling

Snapshot/Restore::
* Remove redundant and broken MD5 checksum from repository-s3
2017-07-04 14:19:48 +00:00
fhajny
023bb63256 Update databases/elasticsearch to 5.4.2
=== Enhancements

Core::
* Explicitly reject duplicate data paths

Packaging::
* Set number of processes in systemd unit file


=== Bug fixes

Aggregations::
* Terms aggregation should remap global ordinal buckets when a
* sub-aggregator is used to sort the terms

Analysis::
* PatternAnalyzer should lowercase wildcard queries when `lowercase`
* is true.

Circuit Breakers::
* Checks the circuit breaker before allocating bytes for a new big
* array

Geo::
* Fix GeoPoint FieldStats ternary logic bug
* Fix GeoDistance Ordinal for BWC

Index APIs::
* Rollover max docs should only count primaries

Nested Docs::
* Fix the `max` score mode.

Network::
* Ensure pending transport handlers are invoked for all channel
* failures

Packaging::
* When stopping via systemd only kill the JVM, not its control group

Suggesters::
* Fix context suggester to read values from keyword type field
2017-06-21 13:35:52 +00:00
fhajny
93e565a146 Update databases/elasticsearch to 5.4.1.
=== Enhancements

Aggregations::
- Allow scripted metric agg to access `_score`

Core::
- Improve bootstrap checks error messages

Internal::
- Log JVM arguments on startup

Network::
- Disable the Netty recycler in the client
- Remove Netty logging hack
- Set available processors for Netty

Snapshot/Restore::
- Ensure every repository has an incompatible-snapshots blob

Stats::
- Show JVM arguments


=== Bug fixes

Aggregations::
- Fix ArrayIndexOutOfBoundsException when no ranges are specified in
  the query

Allocation::
- Discard stale node responses from async shard fetching

Core::
- Fix cache expire after access

Index APIs::
- Fix legacy GeoPointField decoding in FieldStats
- Validates updated settings on closed indices

Internal::
- Remove `_UNRELEASED` from Version constants for released versions
- Avoid race when shutting down controller processes
- Fix NPE if field caps request has a field that exists not in all
  indices

More Like This::
- Pass over _routing value with more_like_this items to be retrieved

Network::
- Notify onConnectionClosed rather than onNodeDisconnect to prune
  transport handlers
- SniffNodesSampler should close connection after handling responses

Packaging::
- Handle parentheses in batch file path

Percolator::
- Fix range queries with date range based on current time in
  percolator queries.

Plugin Repository HDFS::
- Fixing permission errors for `KERBEROS` security mode for HDFS
  Repository

Plugins::
- X-Pack plugin download fails on Windows desktop [ISSUE]
- Fix plugin installation permissions

Reindex API::
- Reindex: don't duplicate _source parameter
- Add qa module that tests reindex-from-remote against pre-5.0
  versions of Elasticsearch

Scroll::
- Fix single shard scroll within a cluster with nodes in version `>=
  5.3` and `<= 5.3`

Search::
- Fix ExpandSearchPhase when response contains no hits
- Include all aliases including non-filtering in  `_search_shards`
  response

Settings::
- Allow resetting settings that use an IP validator

Snapshot/Restore::
- Removes completed snapshot from cluster state on master change
- Fix inefficient (worst case exponential) loading of snapshot
  repository


=== Upgrades

Core::
- Upgrade to Lucene 6.5.1

Network::
- Upgrade to Netty 4.1.11.Final
- Upgrade Netty to 4.1.10.Final
2017-06-14 13:49:35 +00:00
fhajny
a3dc0123ed Update databases/elasticsearch to 5.4.0.
=== Breaking changes

Settings::
- Remove support for default settings


=== Breaking Java changes

Aggregations::
- Move getProperty method out of MultiBucketsAggregation.Bucket
  interface
- Remove getProperty method from Aggregations interface and impl
- Move getProperty method out of Aggregation interface

Java API::
- Fold InternalSearchHits and friends into their interfaces


=== Deprecations

Aggregations::
- Deprecate Stats#getCountAsString

Java API::
- Add BulkProcessor methods with XContentType parameter

Network::
- Deprecate Netty 3

Packaging::
- Add deprecation warnings for $ES_USER and $ES_GROUP

Plugin Delete By Query::
- Deprecate delete_by_query requests without an explicit query

Plugin Repository Azure::
- Deprecate global `repositories.azure` settings

Plugin Repository S3::
- Deprecate repositories.s3 settings

REST::
- Deprecate ldjson support and document ndjson for bulk/msearch

Stats::
- Deprecate `_field_stats` endpoint


=== New features

Analysis::
- Adds pattern keyword marker filter support
- Expose WordDelimiterGraphTokenFilter

Index APIs::
- Add FieldCapabilities (`_field_caps`) API

Search::
- Introduce incremental reduction of TopDocs

Similarities::
- Adds boolean similarity to Elasticsearch


=== Enhancements

Aggregations::
- Add BucketMetricValue interface
- Move aggs CommonFields and TYPED_KEYS_DELIMITER from
  InternalAggregation to Aggregation
- Use ParseField for aggs CommonFields rather than String
- Share XContent rendering code in terms aggs
- Add unit tests for ParentToChildAggregator
- First step towards incremental reduction of query responses

Allocation::
- Trigger replica recovery restarts by master when primary relocation
  completes
- Makes the same_shard host dynamically updatable

Analysis::
- Support Keyword type in Analyze API

Cluster::
- Prevent nodes from joining if newer indices exist in the cluster

Core::
- Detect remnants of path.data/default.path.data bug
- Await termination after shutting down executors
- Add early-access check
- Adapter action future should restore interrupts
- Disable bootstrap checks for single-node discovery
- Enable explicitly enforcing bootstrap checks
- Add equals/hashcode method to ReplicationResponse

Dates::
- Improve error handling for epoch format parser with time zone
  (#22621)

Discovery::
- Introduce single-node discovery
- UnicastZenPing shouldn't ping the address of the local node
- MasterFaultDetection can start after the initial cluster state has
  been processed

Highlighting::
- Add support for fragment_length in the unified highlighter
- Add BreakIteratorBoundaryScanner support

Index APIs::
- Wildcard cluster names for cross cluster search

Ingest::
- Lazy load the geoip databases

Internal::
- Add a dedicated TransportRemoteInfoAction for consistency
- Simplify sorted top docs merging in SearchPhaseController
- Synchronized CollapseTopFieldDocs with lucenes relatives
- Cleanup SearchPhaseController interface
- Do not create String instances in 'Strings' methods accepting
  StringBuilder

Java API::
- Added types options to DeleteByQueryRequest

Java High Level REST Client::
- Convert suggestion response parsing to use NamedXContentRegistry
- UpdateRequest implements ToXContent
- Add javadoc for DocWriteResponse.Builders
- Expose WriteRequest.RefreshPolicy string representation
- Use `typed_keys` parameter to prefix suggester names by type in
  search responses
- Add parsing methods to BulkItemResponse

Logging::
- Warn on not enough masters during election

Mapping::
- Improve error message for ipv6 on legacy ip fields

Nested Docs::
- Avoid adding unnecessary nested filters when ranges are used.

Network::
- Adjust default Netty receive predictor size to 64k
- Keep the pipeline handler queue small initially
- Set network receive predictor size to 32kb
- TransportService.connectToNode should validate remote node ID

Packaging::
- Introduce Java version check
- Cleanup some things after removal of joda-time hack

Percolator::
- Allowing range queries with now ranges inside percolator queries
- Add term extraction support for MultiPhraseQuery

Plugin Discovery EC2::
- Settings: Migrate ec2 discovery sensitive settings to elasticsearch
  keystore

Plugin Lang Painless::
- Allow painless to load stored fields
- Start on custom whitelists for Painless
- Fix Painless's implementation of interfaces returning primitives
- Allow painless to implement more interfaces

Plugin Repository Azure::
- Add Backoff policy to azure repository

Plugin Repository S3::
- Removes the retry mechanism from the S3 blob store
- S3 Repository: Eagerly load static settings

Plugins::
- Modify permissions dialog for plugins
- Plugins: Add plugin cli specific exit codes
- Plugins: Output better error message when existing plugin is
  incompatible

Query DSL::
- Make it possible to validate a query on all shards instead of a
  single random shard

REST::
- Validate top-level keys when parsing mget requests
- Cluster stats should not render empty http/transport types
- Add parameter to prefix aggs name with type in search responses

Search::
- Set shard count limit to unlimited
- Streamline shard index availability in all SearchPhaseResults
- Search took time should use a relative clock
- Prevent negative `from` parameter in SearchSourceBuilder
- Remove unnecessary result sorting in SearchPhaseController
- Expose `batched_reduce_size` via `_search`
- Adding fromXContent to Suggest and Suggestion class
- Adding fromXContent to Suggestion.Entry and subclasses
- Add CollapseSearchPhase as a successor for the FetchSearchPhase
- Integrate IndexOrDocValuesQuery.
- Detach SearchPhases from AbstractSearchAsyncAction
- Fix GraphQuery expectation after Lucene upgrade to 6.5
- Nested queries should avoid adding unnecessary filters when
  possible.
- Add xcontent parsing to completion suggestion option
- Add xcontent parsing to suggestion options
- Separate reduce (aggs, suggest and profile) from merging fetched
  hits

Settings::
- Add secure file setting to keystore
- Add a setting which specifies a list of setting
- Add a property to mark setting as final
- Remove obsolete index setting `index.version.minimum_compatible`.
- Provide a method to retrieve a closeable char[] from a SecureString
- Update indices settings api to support CBOR and SMILE format
- Improve setting deprecation message

Snapshot/Restore::
- Change snapshot status error to use generic SnapshotException

Stats::
- Add cross-cluster search remote cluster info API

Task Manager::
- Allow task to be unregistered by ClusterStateApplier
- Limit IndexRequest toString() length


=== Bug fixes

Aggregations::
- Align behavior HDR percentiles iterator with percentile() method
- The `filter` and `significant_terms` aggregations should parse the
  `filter` as a filter, not a query.
- Completion suggestion should also consider text if prefix/regex is
  missing
- Fixes the per term error in the terms aggregation
- Fixes terms error count for multiple reduce phases
- Restore support for the `include/pattern` syntax.

Bulk::
- Reject empty IDs

CRUD::
- Fix backport executing ops as single item bulk

Cluster::
- Don't set local node on cluster state used for node join validation
- Allow a cluster state applier to create an observer and wait for a
  better state
- Cluster allocation explain to never return empty response body

Core::
- Check for default.path.data included in path.data
- Improve performance of extracting warning value
- Reject duplicate settings on the command line
- Restrict build info loading to ES jar, not any jar

Discovery::
- ZenDiscovery - only validate min_master_nodes values if local node
  is master

Index APIs::
- Fixes restore of a shrunken index when initial recovery node is gone
- Honor update request timeout

Ingest::
- Improve missing ingest processor error
- update _ingest.timestamp to use new ZonedDateTime

Inner Hits::
- Replace NestedChildrenQuery with ParentChildrenBlockJoinQuery
- Changed DisMaxQueryBuilder to extract inner hits from leaf queries

Internal::
- Add infrastructure to mark contexts as system contexts
- Always restore the ThreadContext for operations delayed due to a
  block

Java High Level REST Client::
- Correctly parse BulkItemResponse.Failure's status

Java REST Client::
- Make buffer limit configurable in HeapBufferedConsumerFactory
- RestClient asynchronous execution should not throw exceptions

Mapping::
- Preserve response headers when creating an index
- Improves disabled fielddata error message
- Switch include_in_all in multifield to warning
- Fix MapperService StackOverflowError
- Fix NPE with scaled floats stats when field is not indexed

Network::
- Fix possible hang in local transport when nodes get concurrently
  disconnected
- Respect promises on pipelined responses
- Ensure that releasing listener is called

Packaging::
- Fall back to non-atomic move when removing plugins

Percolator::
- Fix memory leak when percolator uses bitset or field data cache

Plugin Ingest Attachment::
- Remove support for Visio and potm files

Plugin Lang Painless::
- Fix painless's regex lexer and error messages
- Replace Painless's Cast with casting strategies
- Fix Bad Casts In Painless

Plugin Repository Azure::
- Azure blob store's readBlob() method first checks if the blob exists

Plugin Repository S3::
- Handle BlobPath's trailing separator case. Add test cases to
  BlobPathTests.java

Plugins::
- Fix delete of plugin directory on remove plugin
- Use a marker file when removing a plugin

Query DSL::
- FuzzyQueryBuilder should error when parsing array of values

REST::
- [API] change wait_for_completion default according to docs
- Deprecate request_cache for clear-cache
- HTTP transport stashes the ThreadContext instead of the
  RestController
- Ensure we try to autodetect content type for handlers that support
  plain text
- Fix date format in warning headers
- Align REST specs for HEAD requests
- Correct warning header to be compliant
- Fix get HEAD requests
- Fix search scroll request with a plain text body
- Handle bad HTTP requests
- Fix get source HEAD requests
- Properly encode location header
- Fix template HEAD requests
- Fix index HEAD requests
- Fix alias HEAD requests

Recovery::
- Provide target allocation id as part of start recovery request

Reindex API::
- Fix throttled reindex_from_remote
- Fix reindex with a remote source on a version before 2.0.0
- Make reindex wait for cleanup before responding

Scripting::
- Remove unnecessary Groovy deprecation logging
- Convert script/template objects to json format internally
- Script: Fix value of `ctx._now` to be current epoch time in
  milliseconds

Search::
- Cross Cluster Search: propagate original indices per cluster
- Query string default field
- Speed up parsing of large `terms` queries.
- IndicesQueryCache should delegate the scorerSupplier method.
- Fork LRUQueryCache from Lucene to work around LUCENE-7749
- Disable graph analysis at query time for shingle and cjk filters
  producing tokens of different size
- Fix cross-cluster remote node gateway attributes
- Use a fixed seed for computing term hashCode in TermsSliceQuery
- Honor max concurrent searches in multi-search
- Avoid stack overflow in multi-search
- Fix query_string_query to transform "foo:*" in an exists query on
  the field name
- Factor out filling of TopDocs in SearchPhaseController
- Replace blocking calls in ExpandCollapseSearchResponseListener by
  asynchronous requests

Search Templates::
- No longer add illegal content type option to stored search templates

Settings::
- Do not set path.data in environment if not set
- Correct handling of default and array settings
- Fix merge scheduler config settings
- Settings: Fix keystore cli prompting for yes/no to handle console
  returning null

Similarities::
- Fix similarity upgrade when "default" similarity is overridden

Snapshot/Restore::
- Fixes maintaining the shards a snapshot is waiting on
- Fixes snapshot status on failed snapshots
- Fixes snapshot deletion handling on in-progress snapshot failure
- Prioritize listing index-N blobs over index.latest in reading
  snapshots

Stats::
- Avoid overflow when computing total FS stats
- Handle existence of cgroup version 2 hierarchy
- Handle long overflow when adding paths' totals
- Fix control group pattern
- Fix total disk bytes returning negative value


=== Regressions

Bulk::
- Fix _bulk response when it can't create an index


=== Upgrades

Aggregations::
- Upgrade HDRHistogram to 2.1.9

Core::
- Upgrade to Lucene 6.5.0
- Upgrade from JNA 4.2.2 to JNA 4.4.0
- Upgrade to lucene-6.5.0-snapshot-d00c5ca
- Upgrade to lucene-6.5.0-snapshot-f919485.

Logging::
- Upgrade to Log4j 2.8.2

Network::
- Upgrade to Netty 4.1.9
- Upgrade to Netty 4.1.8

Plugin Repository Azure::
- Update to Azure Storage 5.0.0
2017-05-11 08:36:30 +00:00
fhajny
948589eeb0 Update databases/elasticsearch to 5.3.1
=== Breaking changes

Settings::
- Remove support for default settings


=== Enhancements

Core::
- Detect remnants of path.data/default.path.data bug

Network::
- Adjust default Netty receive predictor size to 64k

REST::
- Cluster stats should not render empty http/transport types


=== Bug fixes

Aggregations::
- The `filter` and `significant_terms` aggregations should parse the
  `filter` as a filter, not a query.
- Restore support for the `include/pattern` syntax.

Bulk::
- Reject empty IDs

Core::
- Improve performance of extracting warning value
- Restrict build info loading to ES jar, not any jar

Discovery::
- ZenDiscovery - only validate min_master_nodes values if local node
  is master

Index APIs::
- Honor update request timeout

Inner Hits::
- Replace `NestedChildrenQuery` with `ParentChildrenBlockJoinQuery`

Internal::
- Add infrastructure to mark contexts as system contexts

Java REST Client::
- Make buffer limit configurable in HeapBufferedConsumerFactory

Mapping::
- Preserve response headers when creating an index
- Fix NPE with scaled floats stats when field is not indexed

Network::
- Fix possible hang in local transport when nodes get concurrently
  disconnected

Plugin Repository Azure::
- Azure blob store's readBlob() method first checks if the blob exists

Reindex API::
- Fix reindex with a remote source on a version before 2.0.0

Search::
- Disable graph analysis at query time for shingle and cjk filters
  producing tokens of different size
- Fix cross-cluster remote node gateway attributes
- Use a fixed seed for computing term hashCode in TermsSliceQuery

Settings::
- Do not set path.data in environment if not set
- Correct handling of default and array settings

Stats::
- Handle existence of cgroup version 2 hierarchy


=== Upgrades

Internal::
- upgrade to Lucene 6.4.2
2017-04-22 17:20:54 +00:00
fhajny
adfd2aa080 Update databases/elasticsearch to 5.3.0
=== Breaking changes

Query DSL::
- Fix name of `enabled_position_increments`

Search::
- Remove DFS_QUERY_AND_FETCH as a search type


=== Breaking Java changes

CRUD::
- Make index and delete operation execute as single bulk item
  (backport of #21964)

Internal::
- Replace SearchExtRegistry with namedObject
- Replace Suggesters with namedObject

Network::
- Remove HttpServer and HttpServerAdapter in favor of a simple
  dispatch method

Plugins::
- Deguice rest handlers

Search::
- Remove QUERY_AND_FETCH search type


=== Deprecations

Core::
- Deprecate lenient booleans

Geo::
- Geo distance range deprecation

Java API::
- Add BulkProcessor methods with XContentType parameter

Mapping::
- Deprecate the include_in_all mapping parameter

Network::
- Deprecate Netty 3
- Deprecate Netty 3

Plugin Repository Azure::
- Deprecate auto creation of container for azure repository

Plugin Repository S3::
- S3 Repository: Deprecate specifying region
- S3 Repository: Deprecate auto creation of s3 bucket for repository
- Deprecate specifying credentials through env vars, sys props, and
  remove profile files

REST::
- Deprecate ldjson support and document ndjson for bulk/msearch
- Optionally require a valid content type for all rest requests with
  content

Scripting::
- Change Namespace for Stored Script to Only Use Id


=== New features

Aggregations::
- Initial version of an adjacency matrix using the Filters aggregation

CRUD::
- Allow an index to be partitioned with custom routing

Highlighting::
- Integrate UnifiedHighlighter

Search::
- Add federated cross cluster search capabilities
- Add field collapsing for search request

Settings::
- Add infrastructure for elasticsearch keystore


=== Enhancements

Allocation::
- Include stale replica shard info when explaining an unassigned
  primary

Analysis::
- Analyze API Position Length Support

CRUD::
- Make index and delete operation execute as a single bulk item

Circuit Breakers::
- Add used memory amount to CircuitBreakingException message (#22521)

Cluster::
- Connect to new nodes concurrently

Core::
- Simplify write failure handling (backport of #19105)
- Simplify ElasticsearchException rendering as a XContent
- Remove setLocalNode from ClusterService and TransportService

Engine::
- Replace EngineClosedException with AlreadyClosedExcpetion

Index APIs::
- Indexing: Add shard id to indexing operation listener
- Better error when can't auto create index

Ingest::
- Lazy load the geoip databases

Internal::
- Improve connection closing in `RemoteClusterConnection`
- Remove some more usages of ParseFieldMatcher
- Introduce ToXContentObject interface

Java API::
- prevent NPE when trying to uncompress a null BytesReference

Java High Level REST Client::
- Add parsing from xContent to MainResponse
- Parse elasticsearch exception's root causes
- Add parsing method to BytesRestResponse's error
- Add parsing method for
  ElasticsearchException.generateThrowableXContent()
- Add fromxcontent methods to delete response
- Add parsing methods for UpdateResponse
- Add parsing from xContent to InternalSearchHit and
  InternalSearchHits
- Add fromxcontent methods to index response

Java REST Client::
- move ignore parameter support from yaml test client to low level
  rest client
- Support Preemptive Authentication with RestClient

Logging::
- Expose logs base path

Mapping::
- Improve error message for ipv6 on legacy ip fields

Network::
- Keep the pipeline handler queue small initially

Packaging::
- Introduce Java version check

Plugin Discovery EC2::
- Read ec2 discovery address from aws instance tags

Plugin Lang Painless::
- Generate reference links for painless API
- Painless: Add augmentation to String for base 64

Plugin Repository S3::
- S3 repository: Add named configurations

Plugins::
- Add the ability to define search response listeners in search plugin

Query DSL::
- QueryString and SimpleQueryString Graph Support
- Additional Graph Support in Match Query
- RangeQuery WITHIN case now normalises query

Reindex API::
- Increase visibility of doExecute so it can be used directly
- Improve error message when reindex-from-remote gets bad json

Scripting::
- Expose multi-valued dates to scripts and document painless's date
  functions

Search::
- Add a setting to disable remote cluster connections on a node
- First step towards separating individual search phases
- Add parsing from xContent to SearchProfileShardResults and nested
  classes
- ProfileResult and CollectorResult should print machine readable
  timing information

Settings::
- Improve setting deprecation message
- Add secure settings validation on startup
- Allow comma delimited array settings to have a space after each
  entry
- Allow affix settings to be dynamic / updatable
- Allow affix settings to delegate to actual settings
- Make s3 repository sensitive settings use secure settings

Snapshot/Restore::
- Duplicate snapshot name throws InvalidSnapshotNameException
- Use general cluster state batching mechanism for snapshot state
  updates

Stats::
- Add geo_point to FieldStats


=== Bug fixes

CRUD::
- Fix backport executing ops as single item bulk

Cache::
- Invalidate cached query results if query timed out

Cluster::
- Don't set local node on cluster state used for node join validation
- Allow a cluster state applier to create an observer and wait for a
  better state
- Cluster allocation explain to never return empty response body

Exceptions::
- Stop returning "es." internal exception headers as http response
  headers

Ingest::
- Improve missing ingest processor error
- fix date-processor to a new default year for every new pipeline
  execution

Internal::
- Always restore the ThreadContext for operations delayed due to a
  block
- Fix handling of document failure exception in InternalEngine
  (backport #22718)

Java REST Client::
- RestClient asynchronous execution should not throw exceptions

Mapping::
- Switch include_in_all in multifield to warning
- Fix MapperService StackOverflowError
- Range types causing `GetFieldMappingsIndexRequest` to fail due to
  `NullPointerException` in `RangeFieldMapper.doXContentBody` when
`include_defaults=true` is on the query string
- Disallow introducing illegal object mappings (double '..')

Network::
- Respect promises on pipelined responses
- Ensure that releasing listener is called

Packaging::
- Fall back to non-atomic move when removing plugins

Parent/Child::
- Add null check in case of orphan child document

Plugin Ingest Attachment::
- Remove support for Visio and potm files
- Add missing mime4j library

Plugin Lang Painless::
- Fix Bad Casts In Painless
- Don't allow casting from void to def in painless
- Fix def invoked qualified method refs

Plugins::
- Add check for null pluginName in remove command

Query DSL::
- Fix parsing for `max_determinized_states`

REST::
- [API] change wait_for_completion default according to docs
- HTTP transport stashes the ThreadContext instead of the
  RestController
- Ensure we try to autodetect content type for handlers that support
  plain text
- Fix date format in warning headers
- Correct warning header to be compliant
- Fix search scroll request with a plain text body
- Handle bad HTTP requests
- Properly encode location header

Reindex API::
- Reindex: do not log when can't clear old scroll
- Fix reindex-from-remote from <2.0

Scripting::
- Remove unnecessary Groovy deprecation logging
- Script: Fix value of `ctx._now` to be current epoch time in
  milliseconds

Search::
- Honor max concurrent searches in multi-search
- Avoid stack overflow in multi-search
- Replace blocking calls in ExpandCollapseSearchResponseListener by
  asynchronous requests
- Ensure fixed serialization order of InnerHitBuilder

Settings::
- Fix merge scheduler config settings
- Settings: Fix keystore cli prompting for yes/no to handle console
  returning null
- Expose `search.highlight.term_vector_multi_value` as a node level
  setting
- NPE when no setting name passed to elasticsearch-keystore

Similarities::
- Fix similarity upgrade when "default" similarity is overridden

Stats::
- Avoid overflow when computing total FS stats
- Handle long overflow when adding paths' totals
- Fix control group pattern
- Fix total disk bytes returning negative value

Task Manager::
- Fix hanging cancelling task with no children
- Fix broken TaskInfo.toString()


=== Regressions

Core::
- Source filtering: only accept array items if the previous include
  pattern matches


=== Upgrades

Internal::
- Upgrade to Lucene 6.4.1.
2017-03-30 15:23:49 +00:00
fhajny
3f2489df49 Update databases/elasticsearch to 5.2.2.
5.2.2

- The request circuit breaker, which track the size of in-flight
  requests, was not decrementing its counter when the connection was
  closed by the client before the response could be returned. This could
  result in no further requests being accepted until the node has been
  restarted. All users should upgrade to take advantage of this bug fix.
- The cgroup functionality (for reading OS stats for containers) had a
  bug in the regex for parsing /proc/self/cgroup which prevented nodes
  with multiple hierarchies from starting up.
- Requests which have been delayed by a shard lock might be executed
  later on a different thread which lacks the request context, resulting
  in the requests being incorrectly rejected as unauthorised.
- Removal of an undocumented syntax for include/exclude parameters in
  the terms aggregation broke certain aggregations in Kibana.

5.2.1

- When stored fields are configured with best_compression, we rely on
  JVM garbage collection to reclaim Deflater/Inflater instances. However
  these classes use little JVM memory but may use significant native
  memory, so if may happen that the OS runs out of native memory before
  the JVM collects these unreachable Deflater/Inflater instances.
- Certain queries can hold a reference to the IndexReader that was used
  to build them. When these queries are cached, this reference causes
  Lucene to hold onto segments long after they should have been deleted.
2017-03-01 14:19:27 +00:00
fhajny
f476b45f22 Update databases/elasticsearch to 5.2.0.
=== Breaking changes

Core::
- Add system call filter bootstrap check



=== Breaking Java changes

Allocation::
- Cluster Explain API uses the allocation process to explain shard
  allocation decisions

Cluster::
- Remove PROTO-based custom cluster state components

Ingest::
- Change type of ingest doc meta-data field 'TIMESTAMP' to `Date`

Internal::
- Consolidate the last easy parser construction
- Introduce XContentParser#namedObject

Plugins::
- Plugins: Replace Rest filters with RestHandler wrapper

Query DSL::
- Resolve index names in indices_boost

Search::
- Cluster search shards improvements: expose ShardId, adjust visibility
  of some members



=== Deprecations

Java API::
- Deprecate and remove "minimumNumberShouldMatch" in BoolQueryBuilder

Shadow Replicas::
- Add a deprecation notice to shadow replicas



=== New features

Analysis::
- Synonym Graph Support (LUCENE-6664)

Ingest::
- introduce KV Processor in Ingest Node

Mapping::
- Add the ability to set a normalizer on keyword fields.
- Add RangeFieldMapper for numeric and date range types



=== Enhancements

Aggregations::
- `value_type` is useful regardless of scripting.
- Support for partitioning set of terms

Allocation::
- Adds setting level to allocation decider explanations
- Improves allocation decider decision explanation messages
- Prepares allocator decision objects for use with the allocation
  explain API

Analysis::
- Expose FlattenGraphTokenFilter

CRUD::
- Use correct block levels for TRA subclasses

Cluster::
- Keep NodeConnectionsService in sync with current nodes in the cluster
  state
- Add a generic way of checking version before serializing custom
  cluster object
- Add validation for supported index version on node join, restore,
  upgrade & open index
- Let ClusterStateObserver only hold onto state that's needed for change
  detection
- Remove mutable status field from cluster state

Core::
- Rename bootstrap.seccomp to bootstrap.system_call_filter
- Cleanup random stats serialization code
- Avoid corruption when deserializing booleans
- Reduce memory pressure when sending large terms queries.

Discovery::
- Simplify Unicast Zen Ping
- Prefer joining node with conflicting transport address when becoming
  master

Ingest::
- add `ignore_missing` flag to ingest plugins
- Added ability to remove pipelines via wildcards (#22149)
- Enables the ability to inject serialized json fields into root of
  document
- compile ScriptProcessor inline scripts when creating ingest pipelines

Internal::
- Remove some more usages of ParseFieldMatcher
- Remove some more usages of ParseFieldMatcher
- Remove some ParseFieldMatcher usages
- Add infrastructure to manage network connections outside of
  Transport/TransportService
- Replace strict parsing mode with response headers assertions
- Start using `ObjectParser` for aggs.
- Don't output null source node in RecoveryFailedException
- ClusterService should expose "applied" cluster states (i.e., remove
  ClusterStateStatus)

Java High Level REST Client::
- Add fromxcontent methods to index response
- Add fromXContent() methods for ReplicationResponse
- Add parsing method for ElasticsearchException
- Add fromXContent method to GetResponse

Java REST Client::
- Warn log deprecation warnings received from server

Logging::
- Log deleting indices at info level
- Log failure to connect to node at info instead of debug

Mapping::
- Atomic mapping updates across types
- Only update DocumentMapper if field type changes
- Better error message when `_parent` isn't an object

Network::
- Disable the Netty recycler
- Tell Netty not to be unsafe in transport client
- Introduce a low level protocol handshake
- Detach handshake from connect to node
- Reduce number of connections per node depending on the nodes role
- Add a connect timeout to the ConnectionProfile to allow per node
  connect timeouts
- Grant Netty permission to read system somaxconn
- Remove connectToNodeLight and replace it with a connection profile

Packaging::
- Improve the out-of-the-box experience

Plugin Discovery EC2::
- Add support for ca-central-1 region to EC2 and S3 plugins
- Support for eu-west-2 (London) cloud-aws plugin
- Add us-east-2 AWS region
- Add setting to set read timeout for EC2 discovery and S3 repository
  plugins

Plugin Ingest GeoIp::
- Cache results of geoip lookups

Plugin Lang Painless::
- Improve painless's ScriptException generation

Plugins::
- Pass ThreadContext to transport interceptors to allow header
  modification
- Provide helpful error message if a plugin exists
- Add shutdown hook for closing CLI commands
- Allow plugins to install bootstrap checks

Query DSL::
- Un-deprecate fuzzy query
- support numeric bounds with decimal parts for long/integer/short/byte
  datatypes

Reindex API::
- Reindex: Better error message for pipeline in wrong place
- Timeout improvements for rest client and reindex

Scripting::
- Wrap VerifyError in ScriptException
- Log ScriptException's xcontent if file script compilation fails

Search::
- Move SearchTransportService and SearchPhaseController creation outside
  of TransportSearchAction constructor
- Don't carry ShardRouting around when not needed in
  AbstractSearchAsyncAction
- ShardSearchRequest to take ShardId constructor argument rather than
  the whole ShardRouting
- Use index uuid as key in the alias filter map rather than the index
  name

Settings::
- Speed up filter and prefix settings operations

Snapshot/Restore::
- Fixes retrieval of the latest snapshot index blob
- Synchronize snapshot deletions on the cluster state

Stats::
- Include unindexed field in FieldStats response

Task Manager::
- Improve the error message if task and node isn't found
- Add descriptions to create snapshot and restore snapshot tasks.
- Add proper descriptions to reindex, update-by-query and
  delete-by-query tasks.



=== Bug fixes

Aggregations::
- Fix scaled_float numeric type in aggregations
- Allow terms aggregations on pure boolean scripts.
- Fix numeric terms aggregations with includes/excludes and
  minDocCount=0
- Fix `missing` on aggs on `boolean` fields.
- IP range masks exclude the maximum address of the range.
- Fix `other_bucket` on the `filters` agg to be enabled if a key is set.

Allocation::
- Cannot force allocate primary to a node where the shard already exists
- Promote shadow replica to primary when initializing primary fails
- Trim in-sync allocations set only when it grows

Analysis::
- AsciiFoldingFilter's multi-term component should never preserve the
  original token.
- Pre-built analysis factories do not implement MultiTermAware
  correctly.

CRUD::
- Reject external versioning and explicit version numbers on create

Cluster::
- IndicesService handles all exceptions during index deletion

Core::
- Streamline foreign stored context restore and allow to perserve
  response headers
- Support negative numbers in readVLong

Discovery::
- Close InputStream when receiving cluster state in
  PublishClusterStateAction
- Do not reply to pings from another cluster

Engine::
- Close and flush refresh listeners on shard close

Exceptions::
- Fixing shard recovery error message to report the number of docs
  correctly for each node

Highlighting::
- Fix FiltersFunctionScoreQuery highlighting

Index APIs::
- Ensure shrunk indices carry over version information from its source

Ingest::
- fix index out of bounds error in KV Processor
- Fixes GrokProcessor's ignorance of named-captures with same name.

Inner Hits::
- Inner hits and ignore unmapped

Internal::
- Index creation and setting update may not return deprecation logging

Java API::
- Don't output empty ext object in SearchSourceBuilder#toXContent

Java REST Client::
- Don't use null charset in RequestLogger

Mapping::
- The `_all` default mapper is not completely configured.
- Fix MapperService.allEnabled().
- Dynamic `date` fields should use the `format` that was used to detect
  it is a date.
- Sub-fields should not accept `include_in_all` parameter
- Mappings: Fix get mapping when no indexes exist to not fail in
  response generation

Nested Docs::
- Fix bug in query builder rewrite that ignores the ignore_unmapped
  option

Network::
- Pass `forceExecution` flag to transport interceptor
- Ensure new connections won't be opened if transport is closed or
  closing
- Prevent open channel leaks if handshake times out or is interrupted
- Execute low level handshake in #openConnection
- Properly configure Netty 3 ClientBootstrap when using custom
  connection profile
- Handle connection close / reset events gracefully during handshake
- Do not lose host information when pinging
- DiscoveryNode and TransportAddress should preserve host information

Packaging::
- Another fix for handling of paths on Windows
- Fix handling of spaces in Windows paths
- Add option to skip kernel parameters on install

Percolator::
- Fix NPE in percolator's 'now' range check for percolator queries with
  range queries

Plugin Analysis Stempel::
- Fix thread safety of Stempel's token filter factory

Plugin Lang Painless::
- Whitelist some ScriptDocValues in painless
- Update Painless Loop Counter to be Higher
- Fix some issues with painless's strings
- Test fix for def equals in Painless
- Fix a VerifyError bug in Painless

Plugin Mapper Attachment::
- NPE is raised when defining a non existing type within attachments
  type

Plugin Repository Azure::
- Fixes default chunk size for Azure repositories
- readonly on azure repository must be taken into account

Query DSL::
- Fix script score function that combines `_score` and weight

REST::
- Adds percent-encoding for Location headers

Recovery::
- Fix primary relocation for shadow replicas
- Don't close store under CancellableThreads
- Use a fresh recovery id when retrying recoveries
- Allow flush/force_merge/upgrade on shard marked as relocated

Reindex API::
- Fix reindex from remote clearing scroll
- Fix source filtering in reindex-from-remote
- Remove content type detection from reindex-from-remote
- Don't close rest client from its callback
- Keep context during reindex's retries

Scripting::
- Expose `ip` fields as strings in scripts.

Search::
- Improve concurrency of ShardCoreKeyMap.
- Make `-0` compare less than `+0` consistently.
- Fix boost_mode propagation when the function score query builder is
  rewritten
- FiltersAggregationBuilder: rewriting filter queries, the same way as
  in FilterAggregationBuilder
- Fix cross_fields type on multi_match query with synonyms

Search Templates::
- SearchTemplateRequest to implement CompositeIndicesRequest

Settings::
- Handle spaces in `action.auto_create_index` gracefully
- Fix settings diff generation for affix and group settings

Snapshot/Restore::
- Gracefully handles pre 2.x compressed snapshots
- URLRepository should throw NoSuchFileException to correctly adhere to
  readBlob contract
- Fixes shard level snapshot metadata loading when index-N file is
  missing

Stats::
- Implement stats for geo_point and geo_shape field
- Use reader for doc stats
- Avoid NPE in NodeService#stats if HTTP is disabled
- Add support for "include_segment_file_sizes" in indices stats REST
  handler

Term Vectors::
- Fix `_termvectors` with preference to not hit NPE
- Return correct term statistics when a field is not found in a shard



=== Regressions

Core::
- Source filtering: only accept array items if the previous include
  pattern matches

Logging::
- Restores the original default format of search slow log

Search::
- Handle specialized term queries in MappedFieldType.extractTerm(Query)



=== Upgrades

Core::
- Upgrade to Lucene 6.4.0
- Update Jackson to 2.8.6
- Upgrade to lucene-6.4.0-snapshot-084f7a0.
- Upgrade to lucene-6.4.0-snapshot-ec38570
2017-02-14 10:36:03 +00:00
fhajny
2e606260ce Update databases/elasticsearch to 5.1.2.
Aggregations::
- Allow terms aggregations on pure boolean scripts.
- IP range masks exclude the maximum address of the range.
- Fix `other_bucket` on the `filters` agg to be enabled if a key is set.

Allocation::
- Promote shadow replica to primary when initializing primary fails
- Trim in-sync allocations set only when it grows

Analysis::
- Pre-built analysis factories do not implement MultiTermAware
  correctly.

CRUD::
- Reject external versioning and explicit version numbers on create

Core::
- Support negative numbers in readVLong

Exceptions::
- Fixing shard recovery error message to report the number of docs
  correctly for each node

Index APIs::
- Ensure shrunk indices carry over version information from its source

Internal::
- Don't output null source node in RecoveryFailedException

Java REST Client::
- Don't use null charset in RequestLogger

Logging::
- Restores the original default format of search slow log

Mapping::
- Only update DocumentMapper if field type changes
- The `_all` default mapper is not completely configured.
- Fix MapperService.allEnabled().

Network::
- Disable the Netty recycler
- Tell Netty not to be unsafe in transport client

Nested Docs::
- Fix bug in query builder rewrite that ignores the ignore_unmapped
  option

Packaging::
- Another fix for handling of paths on Windows

Percolator::
- Fix NPE in percolator's 'now' range check for percolator queries with
  range queries

Plugins::
- Provide helpful error message if a plugin exists
- Add shutdown hook for closing CLI commands

Plugin Lang Painless::
- Update Painless Loop Counter to be Higher

Plugin Repository Azure::
- readonly on azure repository must be taken into account

Recovery::
- Fix primary relocation for shadow replicas
- Don't close store under CancellableThreads
- Use a fresh recovery id when retrying recoveries
- Allow flush/force_merge/upgrade on shard marked as relocated

Reindex API::
- Don't close rest client from its callback

Search::
- Improve concurrency of ShardCoreKeyMap.
- Make `-0` compare less than `+0` consistently.
- FiltersAggregationBuilder: rewriting filter queries, the same way as
  in FilterAggregationBuilder

Stats::
- Implement stats for geo_point and geo_shape field
- Use reader for doc stats
- Avoid NPE in NodeService#stats if HTTP is disabled
- Add support for "include_segment_file_sizes" in indices stats REST
  handler

Term Vectors::
- Fix _termvectors with preference to not hit NPE
- Return correct term statistics when a field is not found in a shard
2017-01-17 17:34:15 +00:00
fhajny
902c37c64e Update databases/elasticsearch to 5.1.1.
== 5.1.1 Release Notes

=== Breaking changes

Aliases::
- Validate alias names the same as index names

REST::
- Remove lenient stats parsing 5.x


=== Breaking Java changes

Discovery::
- Remove pluggability of ElectMasterService

Exceptions::
- Remove `IndexTemplateAlreadyExistsException` and
  `IndexShardAlreadyExistsException`
- Replace IndexAlreadyExistsException with
  ResourceAlreadyExistsException
- Backport: Replace IndexAlreadyExistsException with
  ResourceAlreadyExistsException

Internal::
- Pass executor name to request interceptor to support async intercept
  calls

Network::
- Unguice Transport and friends

Plugins::
- Plugins: Remove support for onModule


=== Deprecations

Analysis::
- Deprecating request parameters of _analyze API in 5.x

CRUD::
- Deprecate VersionType.FORCE

Core::
- Add deprecation logging for users that explicitly opt in for the
  `default` fs type.

Mapping::
- Deprecate `timestamp` and `ttl` on index requests.

Query DSL::
- Add deprecation logging for lenient boolean queries
- Add deprecation logging message for 'fuzzy' query

Search::
- Deprecate ignored type parameter in search_shards api

Settings::
- Add deprecation logging for the case that store throttling is used.


=== New features

Analysis::
- Expose Lucenes Ukrainian analyzer

CAT API::
- Provides a cat api endpoint for templates.

Query DSL::
- Add "all fields" execution mode to simple_query_string query
- Add support for `quote_field_suffix` to `simple_query_string`.
- Add "all field" execution mode to query_string query

Reindex API::
- Add automatic parallelization support to reindex and friends


=== Enhancements

Aggregations::
- Rescorer should be applied in the TopHits aggregation

Allocation::
- Balance step in BalancedShardsAllocator for a single shard
- Process more expensive allocation deciders last
- Separates decision making from decision application in
  BalancedShardsAllocator
- Split allocator decision making from decision application

Analysis::
- Remove AnalysisService and reduce it to a simple name to analyzer
  mapping

CAT API::
- Adding built-in sorting capability to _cat apis.
- Add health status parameter to cat indices API

Cache::
- Do not cache term queries.
- Parse alias filters on the coordinating node

Cluster::
- Cache successful shard deletion checks

Core::
- Reduce memory pressure when sending large terms queries.
- Install a security manager on startup
- Log node ID on startup
- Ensure source filtering automatons are only compiled once
- Improve scheduling fairness when batching cluster state changes with
  equal priority
- Do not log full bootstrap checks exception

Exceptions::
- Add BWC layer for Exceptions

Geo::
- Optimize geo-distance sorting.

Ingest::
- add `ignore_missing` option to SplitProcessor

Internal::
- Rename ClusterState#lookupPrototypeSafe to `lookupPrototype` and
  remove "unsafe" unused variant
- ShardActiveResponseHandler shouldn't hold to an entire cluster state
- Remove unused ClusterService dependency from SearchPhaseController
- Remove special case in case no action filters are registered
- Use TimveValue instead of long for CacheBuilder methods
- Remove SearchContext#current and all it's threadlocals

Java REST Client::
- Provide error message when rest request path is null

Logging::
- Log failure to connect to node at info instead of debug
- Truncate log messages from the end
- Logging shutdown hack
- Disable console logging

Mapping::
- Create the QueryShardContext lazily in DocumentMapperParser.

Network::
- Grant Netty permission to read system somaxconn
- Lazy resolve unicast hosts
- Fix handler name on message not fully read
- Handle rejected pings on shutdown gracefully

Packaging::
- Add empty plugins dir for archive distributions
- Make explicit missing settings for Windows service
- Change permissions on config files

Plugin Lang Painless::
- Add Debug.explain to painless
- Implement the ?: operator in painless
- In painless suggest a long constant if int won't do
- Support decimal constants with trailing [dD] in painless
- Implement reading from null safe dereferences
- Painless negative offsets

Plugin Repository S3::
- Make the default S3 buffer size depend on the available memory.

Plugins::
- Clarify that plugins can be closed
- Plugins: Convert custom discovery to pull based plugin
- Removing plugin that isn't installed shouldn't trigger usage
  information
- Remove pluggability of ZenPing
- Make UnicastHostsProvider extension pull based

Query DSL::
- Using ObjectParser in MatchAllQueryBuilder and IdsQueryBuilder
- Expose splitOnWhitespace in `Query String Query`
- Throw error if query element doesn't end with END_OBJECT
- Remove `lowercase_expanded_terms` and `locale` from query-parser
  options.

Reindex API::
- Make reindex-from-remote ignore unknown fields

Scripting::
- Wrap VerifyError in ScriptException
- Support binary field type in script values
- Mustache: Add
- Expose `ctx._now` in update scripts

Search::
- Add indices and filter information to search shards api output
- remove pointless catch exception in TransportSearchAction
- Optimize query with types filter in the URL (t/t/_search)
- Makes search action cancelable by task management API

Search Templates::
- Add profile and explain parameters to template API

Snapshot/Restore::
- Abort snapshots on a node that leaves the cluster

Stats::
- Remove load average leniency
- Strengthen handling of unavailable cgroup stats
- Add basic cgroup CPU metrics

Task Manager::
- Add search task descriptions

Tribe Node::
- Add support for merging custom meta data in tribe node


=== Bug fixes

Aggregations::
- Rewrite Queries/Filter in FilterAggregationBuilder and ensure client
  usage marks query as non-cachable
- Percentiles bucket fails for 100th percentile
- Thread safety for scripted significance heuristics

Allocation::
- Allow master to assign primary shard to node that has shard store
  locked during shard state fetching

Analysis::
- Can load non-PreBuiltTokenFilter in Analyze API

CAT API::
- Consume `full_id` request parameter early

Cache::
- Fix the request cache keys to not hold references to the
  SearchContext.

Circuit Breakers::
- ClusterState publishing shouldn't trigger circuit breakers

Cluster::
- Remove cluster update task when task times out

Core::
- Add a StreamInput#readArraySize method that ensures sane array sizes
- Use a buffer to do character to byte conversion in
  StreamOutput#writeString
- Fix ShardInfo#toString
- Protect BytesStreamOutput against overflows of the current number of
  written bytes.
- Return target index name even if _rollover conditions are not met
- .es_temp_file remains after system crash, causing it not to start
  again

Dates::
- Fix time zone rounding edge case for DST overlaps

Engine::
- Die with dignity on the Lucene layer
- Fix `InternalEngine#isThrottled` to not always return `false`.
- Retrying replication requests on replica doesn't call `onRetry`

Highlighting::
- Fix FiltersFunctionScoreQuery highlighting
- Fix highlighting on a stored keyword field

Index APIs::
- Validate the `_rollover` target index name early to also fail if
  dry_run=true

Index Templates::
- Fix integer overflows when dealing with templates.

Ingest::
- fix trace_match behavior for when there is only one grok pattern
- Stored scripts and ingest node configurations should be included into
  a snapshot

Inner Hits::
- Skip adding a parent field to nested documents.

Internal::
- Rethrow ExecutionException from the loader to concurrent callers of
  Cache#computeIfAbsent
- Restore thread's original context before returning to the ThreadPool
- Fix NPE in SearchContext.toString()
- Source filtering should treat dots in field names as sub objects.

Java API::
- Transport client: Fix remove address to actually work
- Add a HostFailureListener to notify client code if a node got
  disconnected
- Fix InternalSearchHit#hasSource to return the proper boolean value
- Null checked for source when calling sourceRef
- ClusterAdminClient.prepareDeletePipeline method should accept pipeline
  id to delete

Java REST Client::
- Rest client: don't reuse the same HttpAsyncResponseConsumer across
  multiple retries

Logging::
- Do not prematurely shutdown Log4j
- Assert status logger does not warn on Log4j usage
- Fix logger names for Netty

Mapping::
- Fail to index fields with dots in field names when one of the
  intermediate objects is nested.
- Uncommitted mapping updates should not efect existing indices

Network::
- DiscoveryNode and TransportAddress should preserve host information
- Die with dignity on the network layer
- Prevent double release in TcpTransport if send listener throws an
  exception

Packaging::
- Set vm.max_map_count on systemd package install
- Export ES_JVM_OPTIONS for SysV init
- Debian: configure start-stop-daemon to not go into background
- Generate POM files with non-wildcard excludes

Plugin Lang Painless::
- Test fix for def equals in Painless
- Fix a VerifyError bug in Painless
- Fix Lambdas in Painless to be Able to Use Top-Level Variables Such as
  params and doc

Plugin Mapper Attachment::
- NPE is raised when defining a non existing type within attachments
  type

Query DSL::
- Fixes date range query using epoch with timezone
- Allow overriding all-field leniency when `lenient` option is specified
- Max score should be updated when a rescorer is used

REST::
- Strict level parsing for indices stats
- The routing query string param is supported by mget but was missing
  from the rest spec
- fix thread_pool_patterns path variable definition
- ensure the XContentBuilder is always closed in RestBuilderListener
- XContentBuilder: Avoid building self-referencing objects

Reindex API::
- Ignore IllegalArgumentException with assertVersionSerializable
- Bump reindex-from-remote's buffer to 200mb
- Fix reindex-from-remote for parent/child from <2.0

Search::
- Fix match_phrase_prefix on boosted fields
- Respect default search timeout
- Remove LateParsingQuery to prevent timestamp access after context is
  frozen

Search Templates::
- SearchTemplateRequest to implement CompositeIndicesRequest

Settings::
- Handle spaces in `action.auto_create_index` gracefully
- Fix settings diff generation for affix and group settings
- Don't reset non-dynamic settings unless explicitly requested

Snapshot/Restore::
- Fixes shard level snapshot metadata loading when index-N file is
  missing
- Ensures cleanup of temporary index-* generational blobs during
  snapshotting
- Fixes get snapshot duplicates when asking for _all
- Keep snapshot restore state and routing table in sync (5.x backport)

Task Manager::
- Task cancellation command should wait for all child nodes to receive
  cancellation request before returning

Tribe Node::
- Add socket permissions for tribe nodes


=== Upgrades

Core::
- Upgrade to lucene-6.3.0.

Dates::
- Update Joda Time to version 2.9.5

Logging::
- Upgrade Log4j 2 to version 2.7

Network::
- Upgrade to Netty 4.1.6

Plugin Ingest Attachment::
- Update to Tika 1.14



== 5.0.2 Release Notes

=== Enhancements

Core::
- Install a security manager on startup

Exceptions::
- Add BWC layer for Exceptions

Logging::
- Truncate log messages from the end

Scripting::
- Wrap VerifyError in ScriptException

Snapshot/Restore::
- Abort snapshots on a node that leaves the cluster


=== Bug fixes

Allocation::
- Allow master to assign primary shard to node that has shard store
  locked during shard state fetching

Cluster::
- Remove cluster update task when task times out

Core::
- Add a StreamInput#readArraySize method that ensures sane array sizes
- Use a buffer to do character to byte conversion in
  StreamOutput#writeString

Engine::
- Die with dignity on the Lucene layer
- Fix `InternalEngine#isThrottled` to not always return `false`.

Index Templates::
- Fix integer overflows when dealing with templates.

Ingest::
- fix trace_match behavior for when there is only one grok pattern

Internal::
- Rethrow ExecutionException from the loader to concurrent callers of
  Cache#computeIfAbsent
- Fixes potential NullPointerException on shard closing

Java API::
- Transport client: Fix remove address to actually work
- Add a HostFailureListener to notify client code if a node got
  disconnected

Logging::
- Do not prematurely shutdown Log4j

Network::
- Die with dignity on the network layer

Plugin Lang Painless::
- Fix a VerifyError bug in Painless
- Fix Lambdas in Painless to be Able to Use Top-Level Variables Such as
  params and doc

Search::
- Respect default search timeout

Settings::
- Don't reset non-dynamic settings unless explicitly requested

Tribe Node::
- Add socket permissions for tribe nodes
2017-01-03 09:05:33 +00:00
fhajny
de86622b18 Update databases/elasticsearch to 5.0.2
5.0.2
=====

Allocation::
- Allow master to assign primary shard to node that has shard store
  locked during shard state fetching

Cluster::
- Remove cluster update task when task times out

Core::
- Install a security manager on startup
- Add a StreamInput#readArraySize method that ensures sane array sizes
- Use a buffer to do character to byte conversion in
  StreamOutput#writeString

Engine::
- Die with dignity on the Lucene layer
- Fix `InternalEngine#isThrottled` to not always return `false`.

Exceptions::
- Add BWC layer for Exceptions

Engine::
- Die with dignity on the Lucene layer
- Fix `InternalEngine#isThrottled` to not always return `false`.

Index Templates::
- Fix integer overflows when dealing with templates.

Ingest::
- fix trace_match behavior for when there is only one grok pattern

Internal::
- Rethrow ExecutionException from the loader to concurrent callers of
  Cache#computeIfAbsent
- Fixes potential NullPointerException on shard closing

Java API::
- Transport client: Fix remove address to actually work
- Add a HostFailureListener to notify client code if a node got
  disconnected

Logging::
- Do not prematurely shutdown Log4j
- Truncate log messages from the end

Network::
- Die with dignity on the network layer

Plugin Lang Painless::
- Fix a VerifyError bug in Painless
- Fix Lambdas in Painless to be Able to Use Top-Level Variables Such as
  params and doc

Scripting::
- Wrap VerifyError in ScriptException

Search::
- Respect default search timeout

Settings::
- Don't reset non-dynamic settings unless explicitly requested

Snapshot/Restore::
- Abort snapshots on a node that leaves the cluster

Tribe Node::
- Add socket permissions for tribe nodes


5.0.1
=====

Aggregations::
- Rescorer should be applied in the TopHits aggregation
- Rewrite Queries/Filter in FilterAggregationBuilder and ensure client
  usage marks query as non-cachable
- Thread safety for scripted significance heuristics
- `ip_range` aggregation should accept null bounds.

CAT API::
- Consume `full_id` request parameter early

CRUD::
- Deprecate VersionType.FORCE

Cache::
- Fix the request cache keys to not hold references to the
  SearchContext.

Circuit Breakers::
- ClusterState publishing shouldn't trigger circuit breakers

Core::
- Fix ShardInfo#toString
- Protect BytesStreamOutput against overflows of the current number of
  written bytes.
- Return target index name even if _rollover conditions are not met
- Upgrade to Lucene 6.2.1

Dates::
- Update Joda Time to version 2.9.5

Engine::
- Retrying replication requests on replica doesn't call `onRetry`

Index APIs::
- Validate the `_rollover` target index name early to also fail if
  dry_run=true

Ingest::
- Stored scripts and ingest node configurations should be included into
  a snapshot

Internal::
- Restore thread's original context before returning to the ThreadPool
- ShardActiveResponseHandler shouldn't hold to an entire cluster state

Java API::
- Fix InternalSearchHit#hasSource to return the proper boolean value
- Null checked for source when calling sourceRef
- ClusterAdminClient.prepareDeletePipeline method should accept pipeline
  id to delete

Java REST Client::
- Rest client: don't reuse the same HttpAsyncResponseConsumer across
  multiple retries

Logging::
- Assert status logger does not warn on Log4j usage
- Fix logger names for Netty

Network::
- Fix handler name on message not fully read

Packaging::
- Set vm.max_map_count on systemd package install
- Export ES_JVM_OPTIONS for SysV init
- Debian: configure start-stop-daemon to not go into background
- Generate POM files with non-wildcard excludes

Query DSL::
- Max score should be updated when a rescorer is used

Packaging::
- Add empty plugins dir for archive distributions
- Make explicit missing settings for Windows service
- Change permissions on config files

REST::
- The routing query string param is supported by mget but was missing
  from the rest spec
- fix thread_pool_patterns path variable definition
- ensure the XContentBuilder is always closed in RestBuilderListener

Reindex API::
- Bump reindex-from-remote's buffer to 200mb
- Fix reindex-from-remote for parent/child from <2.0

Search::
- Fixes cachability problems with fetching TTL values when searching
- Optimize query with types filter in the URL (t/t/_search)
- Remove LateParsingQuery to prevent timestamp access after context is
  frozen

Snapshot/Restore::
- Ensures cleanup of temporary index-* generational blobs during
  snapshotting
- Fixes get snapshot duplicates when asking for _all
2016-12-05 10:51:03 +00:00
fhajny
0d3b766c6d Update databases/elasticsearch to 5.0.0.
* Now requires JDK 8.0.
* Use a different installation layout as some location are now impossible to
  change without patching the Java sources.

=== Breaking changes in 5.0 ===

Migration Plugin
- The elasticsearch-migration plugin (compatible with Elasticsearch 2.3.0
  and above) will help you to find issues that need to be addressed when
  upgrading to Elasticsearch 5.0.

Indices created before 5.0
- Elasticsearch 5.0 can read indices created in version 2.0 or above. An
  Elasticsearch 5.0 node will not start in the presence of indices created
  in a version of Elasticsearch before 2.0.
- Indices created in Elasticsearch 1.x or before will need to be reindexed
  with Elasticsearch 2.x in order to be readable by Elasticsearch 5.x. It is
  not sufficient to use the upgrade API.


=== Breaking changes

Aggregations::
- Remove size 0 options in aggregations

Aliases::
- make get alias expand to open and closed indices by default
- Remove deprecated indices.get_aliases

Allocation::
- Remove DisableAllocationDecider

Analysis::
- Remove `token_filter` in _analyze API
- Removes support for adding aliases to analyzers
- Analyze API : Rename filters/token_filters/char_filter in Analyze API in
  master

CAT API::
- Improve cat thread pool API
- Row-centric output for _cat/fielddata
- Add raw recovery progress to cat recovery API
- Remove host from cat nodes API
- Using the accept header in the request instead of content-type in _cat
  API.

CRUD::
- Fixed naming inconsistency for fields/stored_fields in the APIs
- Disallow creating indices starting with '-' or '+'
- Wait for changes to be visible by search
- Remove object notation for core types.

Cache::
- Remove deprecated query cache settings

Cluster::
- Persistent Node Ids
- Remove validation errors from cluster health response
- Remove memory section

Core::
- Remove ignore system bootstrap checks
- Remove minimum master nodes bootstrap check
- Keep input time unit when parsing TimeValues
- Remove cluster name from data path
- Add max number of processes check
- Add mlockall bootstrap check
- One log

Engine::
- Optimize indexing for the autogenerated ID append-only case
- Remove `index.compound_on_flush` setting and default to `true`

Exceptions::
- Die with dignity

Fielddata::
- Remove "uninverted" and "binary" fielddata support for numeric and boolean
  fields.

Geo::
- Deprecate GeoDistance enums and remove geo distance script helpers

Index APIs::
- Removes write consistency level across replication action APIs in favor of
  wait_for_active_shards
- Remove `GET` option for /_forcemerge
- Remove /_optimize REST API endpoint

Indexed Scripts/Templates::
- Store indexed scripts in the cluster state instead of the `.scripts` index

Inner Hits::
- Also do not serialize `_index` key in search response for parent/child
  inner hits
- Don't include `_id`, `_type` and `_index` keys in search response for
  inner hits
- Nested inner hits shouldn't use relative paths
- Drop top level inner hits in favour of inner hits defined in the query dsl

Internal::
- `_flush` should block by default
- Actually bound the generic thread pool
- Remove support for pre 2.0 indices

Logging::
- Introduce Log4j 2

Mapping::
- Remove `_timestamp` and `_ttl` on 5.x indices.
- Add a soft limit on the mapping depth.
- Disable fielddata on text fields by defaults.
- Add limit to total number of fields in mapping
- Change the field mapping index time boost into a query time boost.
- Deprecate string in favor of text/keyword.
- Term vector APIs should no longer update mappings
- Remove the `format` option of the `_source` field.
- Remove transform

Packaging::
- Rename service.bat to elasticsearch-service.bat
- Remove -D handling in args for windows plugin script
- Set default min heap equal to default max heap
- Remove allow running as root
- Require /bin/bash in packaging
- Remove plugin script parsing of system properties
- Add JVM options configuration file

Parent/Child::
- Removed `total` score mode in favour for `sum` score mode.
- Removed pre 2.x parent child implementation

Percolator::
- Remove `.percolator` type in favour of `percolator` field type
- Change the percolate api to not dynamically add fields to mapping

Plugin Delete By Query::
- Remove Delete-By-Query plugin

Plugin Lang Painless::
- Remove all date 'now' methods from Painless
- Make Painless the Default Language

Plugins::
- Plugins cleanup
- Rename bin/plugin in bin/elasticsearch-plugin
- Change the inner structure of the plugins zip
- Remove multicast plugin
- Plugins: Remove site plugins

Query DSL::
- Lessen leniency of the query dsl.
- Function score query: remove deprecated support for boost_factor
- Remove support for deprecated queries.

REST::
- Change separator for shards preference
- Parameter improvements to Cluster Health API wait for shards
- Switch indices.exists_type from `{index}/{type}` to
  `{index}/_mapping/{type}`.
- Only use `PUT` for index creation, not POST.
- Remove camelCase support
- Remove 'case' parameter from rest apis
- Disallow unquoted field names
- Limit the accepted length of the _id

Scripting::
- Hardcode painless as the default scripting lang and add legacy script
  default for stored scripts
- Remove deprecated 1.x script and template syntax
- Allow only a single extension for a scripting engine
- Remove 'sandbox' option for script settings, allow only registering a
  single language.

Search::
- Rename `fields` to `stored_fields` and add `docvalue_fields`
- Remove only node preference
- Add search preference to prefer multiple nodes
- Add a soft limit on the number of shards that can be queried in a single
  search request.
- Remove deprecated reverse option from sorting
- Remove some deprecations
- Remove search exists api
- Remove the scan and count search types.

Search Refactoring::
- Remove deprecated parameter from field sort builder.
- Remove "query" query and fix related parsing bugs

Settings::
- Default max local storage nodes to one
- Persistent Node Names
- Remove support for properties
- Rename boostrap.mlockall to bootstrap.memory_lock
- Register `indices.query.bool.max_clause_count` setting
- Remove settings and system properties entanglement
- Remove `action.get.realtime` setting
- Remove ability to specify arbitrary node attributes with `node.` prefix
- Enforce `discovery.zen.minimum_master_nodes` is set when bound to a public
  ip
- Prevent index level setting from being configured on a node level
- Remove support for node.client setting
- Remove es.max-open-files flag
- Enforce node level limits if node is started in production env
- Make settings validation strict
- Remove the ability to fsync on every operation and only schedule fsync
  task if really needed
- Script settings
- Remove index.flush_on_close entirely
- Restore chunksize of 512kb on recovery and remove configurability
- Remove ancient deprecated and alternative recovery settings

Similarities::
- Renames `default` similarity into `classic`

Snapshot/Restore::
- Change the default of `include_global_state` from true to false for
  snapshot restores
- Fail closing or deleting indices during a full snapshot

Stats::
- Modify load average format
- Reintroduce five-minute and fifteen-minute load averages on Linux
- Add system CPU percent to OS stats

Term Vectors::
- Remove DFS support from TermVector API

Translog::
- Drop support for simple translog and hard-wire buffer to 8kb
- Simplify translog-based flush settings

Warmers::
- Remove query warmers and the warmer API.


=== Breaking Java changes

Aggregations::
- getKeyAsString and key_as_string should be the same for terms aggregation
  on boolean field

Allocation::
- Move parsing of allocation commands into REST and remove support for
  plugins to register allocation commands
- Simplify shard balancer interface

Analysis::
- Simplify Analysis registration and configuration

CRUD::
- Removing isCreated and isFound from the Java API

Cache::
- Refactor IndicesRequestCache to make it testable.
- Fold IndexCacheModule into IndexModule

Core::
- Remove ability to plug-in TransportService
- Register thread pool settings
- Bootstrap does not set system properties
- Remove es.useLinkedTransferQueue

Discovery::
- Introduce node handshake
- Include pings from client nodes in master election

Highlighting::
- Register Highlighter instances instead of classes

Internal::
- Remove TransportService#registerRequestHandler leniency
- Consolidate search parser registries
- Move all FetchSubPhases to o.e.search.fetch.subphase
- Squash the rest of o.e.rest.action
- Clean up BytesReference
- Cleanup ClusterService dependencies and detached from Guice
- Simplify SubFetchPhase interface
- Simplify FetchSubPhase registration and detach it from Guice
- Remove duplicate getters from DiscoveryNode and DiscoveryNodes
- Cli: Switch to jopt-simple
- Replace ContextAndHeaders with a ThreadPool based ThreadLocal
  implementation
- Remove NodeBuilder
- Fix IndexSearcherWrapper interface to not depend on the EngineConfig
- Cleanup query parsing and remove IndexQueryParserService
- Remove circular dependency between IndicesService and IndicesStore
- Remove guice injection from IndexStore and friends
- Replace IndicesLifecycle with a per-index IndexEventListener
- Simplify similarity module and friends
- Refactor SearchRequest to be parsed on the coordinating node

Java API::
- Add a dedicated client/transport project for transport-client
- Remove setRefresh
- Remove the count api
- IdsQueryBuilder to accept only non null ids and types

Mapping::
- [Mapping] Several MappingService cleanups

Network::
- Factor out abstract TCPTransport* classes to reduce the netty footprint
- Remove ability to disable Netty gathering writes

Parent/Child::
- Cleanup ParentFieldMapper
- Several other parent/child cleanups

Percolator::
- Move the percolator from core to its own module
- Remove percolator cache

Plugins::
- Cleanup sub fetch phase extension point
- Remove IndexTemplateFilter
- Switch custom ShardsAllocators to pull based model
- Make custom allocation deciders use pull based extensions
- Migrate query registration from push to pull
- Add components getter as bridge between guice and new plugin init world
- Remove CustomNodeAttributes extension point
- Add RepositoryPlugin interface for registering snapshot repositories
- Simplified repository api for snapshot/restore
- Switch most search extensions from push to pull
- Move RestHandler registration to ActionModule and ActionPlugin
- Pull actions from plugins
- Switch analysis from push to pull
- Remove guice from Mapper plugins
- Fail to start if plugin tries broken onModule
- Simplify ScriptModule and script registration
- Cut over settings registration to a pull model
- Enforce isolated mode for all plugins
- Don't use guice for QueryParsers
- Remove guice from the index level
- Remove shard-level injector

Query DSL::
- Remove the MissingQueryBuilder which was deprecated in 2.2.0.
- Remove NotQueryBuilder

Scripting::
- Remove o.e.script.Template class and move template query to lang-mustache
  module
- Move search template to lang-mustache module
- Remove LeafSearchScript.runAsFloat(): Nothing calls it.

Search::
- Remove FetchSubPhaseParseElement
- Refactor of query profile classes to make way for other profile
  implementations
- Query refactoring: split parse phase into fromXContent and toQuery for all
  queries

Search Refactoring::
- Refactored inner hits parsing and intoduced InnerHitBuilder
- Remove support for query_binary and filter_binary
- Validate query api: move query parsing to the coordinating node

Settings::
- Remove `node.mode` and `node.local` settings
- Remove Settings.settingsBuilder.
- Move remaining settings in NettyHttpServerTransport to the new infra
- Replace IndexSettings annotation with a full-fledged class
- Fix ping timeout settings inconsistencies

Snapshot/Restore::
- Removes extra writeBlob method in BlobContainer

Store::
- Standardize state format type for global and index level metadata

Suggesters::
- Remove suggest threadpool
- Remove suggest transport action


=== Deprecations

CRUD::
- Deprecate found and created in delete and index rest responses

Plugin Discovery Azure Classic::
- Deprecate discovery-azure and rename it to discovery-azure-classic

Plugin Mapper Attachment::
- Deprecate mapper-attachments plugin

Query DSL::
- Deprecate Indices query
- Deprecate mlt, in and geo_bbox query name shortcuts

Query Refactoring::
- Splits `phrase` and `phrase_prefix` in match query into
  `MatchPhraseQueryBuilder` and `MatchPhrasePrefixQueryBuilder`

Scripting::
- Deprecate Groovy, Python, and Javascript

Search::
- Deprecate fuzzy query

Templates::
- Deprecate template query


=== New features

Aggregations::
- Split regular histograms from date histograms.
- Adds aggregation profiling to the profile API
- New Matrix Stats Aggregation module

Aliases::
- Add an alias action to delete an index

Allocation::
- Add API to explain why a shard is or isn't assigned

Analysis::
- Exposing lucene 6.x minhash filter.
- Add `fingerprint` token filter and `fingerprint` analyzer

Circuit Breakers::
- Circuit break on aggregation bucket numbers with request breaker

Discovery::
- Add two phased commit to Cluster State publishing

Geo::
- Cut over geo_point field and queries to new LatLonPoint type

Index APIs::
- Add rollover API to switch index aliases given some predicates

Ingest::
- ingest-useragent plugin
- Add a Sort ingest processor
- Add date_index_name processor
- Merge feature/ingest branch into master branch

Java REST Client::
- Introduce async performRequest method
- Low level Rest Client

Mapping::
- Add `scaled_float`.
- Expose half-floats.
- Add a text field.
- Add a new `keyword` field.

Percolator::
- index the query terms from the percolator query

Plugin Analysis ICU::
- Adding support for customizing the rule file in ICU tokenizer

Plugin Discovery File::
- File-based discovery plugin

Plugin Ingest Attachment::
- Ingest: Add attachment processor

Plugin Mapper Attachment::
- Migrate mapper attachments plugin to main repository

Plugin Repository HDFS::
- HDFS Snapshot/Restore plugin

Plugin Repository S3::
- Add support for path_style_access

Query DSL::
- Adds a rewrite phase to queries on the shard level

Reindex API::
- Reindex from remote
- Port Delete By Query to Reindex infrastructure
- Merge reindex to master

Scripting::
- Exceptions and Infinite Loop Checking
- Added a new scripting language (PlanA)

Scroll::
- Add the ability to partition a scroll in multiple slices.

Search::
- Add the ability to disable the retrieval of the stored fields entirely
- Add `search_after` parameter in the SearchAPI

Settings::
- Add infrastructure to transactionally apply and reset dynamic settings

Snapshot/Restore::
- Add Google Cloud Storage repository plugin

Stats::
- Extend field stats to report searchable/aggregatable fields
- API for listing index file sizes

Store::
- Expose MMapDirectory.preLoad().
- Add primitive to shrink an index into a single shard

Suggesters::
- Add support for returning documents with completion suggester
- Add document-oriented completion suggester

Task Manager::
- Add task cancellation mechanism
- Make the Task object available to the action caller
- Task Management: Add framework for registering and communicating with
  tasks

Translog::
- Add `elasticsearch-translog` CLI tool with `truncate` command


=== Enhancements

Aggregations::
- Make the heuristic to compute the default shard size less aggressive.
- Add _bucket_count option to buckets_path
- Remove AggregationStreams
- Migrate serial_diff aggregation to NamedWriteable
- Migrate most remaining pipeline aggregations to NamedWriteable
- Migrate moving_avg pipeline aggregation to NamedWriteable
- Migrate matrix_stats to NamedWriteable
- Migrate derivative pipeline aggregation to NamedWriteable
- Migrate top_hits, histogram, and ip_range aggregations to NamedWriteable
- Migrate nested, reverse_nested, and children aggregations to
  NamedWriteable
- Migrate geohash_grid and geo_bounds aggregations to NamedWriteable
- Clean up significant terms aggregation results
- Migrate range, date_range, and geo_distance aggregations to NamedWriteable
- Migrate terms aggregation to NamedWriteable
- Migrate sampler and missing aggregations to NamedWriteable
- Migrate global, filter, and filters aggregation to NamedWriteable
- Migrate the cardinality, scripted_metric, and geo_centroid aggregations to
  NamedWriteable
- Use a static default precision for the cardinality aggregation.
- Migrate more aggregations to NamedWriteable
- Migrate stats and extended stats to NamedWriteable
- Migrate sum, min, and max aggregations over to NamedWriteable
- Start migration away from aggregation streams
- Automatically set the collection mode to breadth_first in the terms
  aggregation when the cardinality of the field is unknown or smaller than
  the requested size.
- Rename PipelineAggregatorBuilder to PipelineAggregationBuilder.
- AggregatorBuilder and PipelineAggregatorBuilder do not need generics.
- Rename AggregatorBuilder to AggregationBuilder
- Add the ability to use the breadth_first mode with nested aggregations
  (such as `top_hits`) which require access to score information.
- Make significant terms work on fields that are indexed with points.
- Add tests and documentation for using `time_zone` in date range
  aggregation
- Fixes serialisation of Ranges

Allocation::
- Verify AllocationIDs in replication actions
- Mark shard as stale on non-replicated write, not on node shutdown
- Add routing changes API to RoutingAllocation
- Primary shard allocator observes limits in forcing allocation
- Use primary terms as authority to fail shards
- Add recovery source to ShardRouting
- Allow `_shrink` to N shards if source shards is a multiple of N
- Only filter intial recovery (post API) when shrinking an index
- Estimate shard size for shrinked indices
- Only fail relocation target shard if failing source shard is a primary
- Simplify delayed shard allocation
- Limit retries of failed allocations per index
- Immutable ShardRouting
- Add the shard's store status to the explain API
- Write shard state metadata as soon as shard is created / initializing
- Reuse existing allocation id for primary shard allocation
- Remove version in ShardRouting (now obsolete)
- Prefer nodes that previously held primary shard for primary shard
  allocation
- Extend reroute with an option to force assign stale primary shard copies
- Allocate primary shards based on allocation IDs
- Persist currently started allocation IDs to index metadata
- Use ObjectParser to parse AllocationID
- Persist allocation ID with shard state metadata on nodes

Analysis::
- Stop using cached component in _analyze API
- Specify custom char_filters/tokenizer/token_filters in the analyze API
- Add a MultiTermAwareComponent marker interface to analysis factories.
- Add Flags Parameter for Char Filter
- Core: better error message when analyzer created without tokenizer or…
- Move AsciiFolding earlier in FingerprintAnalyzer filter chain
- Improve error message if resource files have illegal encoding

Benchmark::
- Add client-benchmark-noop-api-plugin to stress clients even more in
  benchmarks

CAT API::
- Add health status parameter to cat indices API
- Includes the index UUID in the _cat/indices API
- Add node name to Cat Recovery
- Add support for documented byte/size units and for micros as a time unit
  in _cat API
- Add _cat/tasks
- Cat health supports ts=0 option
- Expose http address in cat/nodes
- [cat/recovery] Make recovery time a TimeValue()
- :CAT API: remove space at the end of a line

CRUD::
- Renaming operation to result and reworking responses
- Adding _operation field to index, update, delete response.
- CRUD: Allow to get and set ttl as a time value/string

Cache::
- Enable option to use request cache for size > 0
- Cache FieldStats in the request cache
- Allow the query cache to be disabled.
- Enable the indices request cache by default

Circuit Breakers::
- Cluster Settings Updates should not trigger circuit breakers.
- Circuit break the number of inline scripts compiled per minute

Cluster::
- Add clusterUUID to RestMainAction output
- Batch process node left and node failure
- Index creation waits for write consistency shards
- Inline reroute with process of node join/master election
- Index creation does not cause the cluster health to go RED
- Cluster Health class improvements
- Adds tombstones to cluster state for index deletions
- Enable acked indexing
- Cluster Health should run on applied states, even if waitFor=0
- Resolve index names to Index instances early
- Remove DiscoveryNode#shouldConnectTo method
- Fail demoted primary shards and retry request
- Illegal shard failure requests
- Shard failure requests for non-existent shards
- Add handling of channel failures when starting a shard
- Wait for new master when failing shard
- Master should wait on cluster state publication when failing a shard
- Split cluster state update tasks into roles
- Add timeout mechanism for sending shard failures
- Add listener mechanism for failures to send shard failed

Core::
- Add production warning for pre-release builds
- Add serial collector bootstrap check
- Rename Netty TCP transports thread factories from http_* to transport_*
- Do not log full bootstrap checks exception
- Mark halting the virtual machine as privileged
- Makes index creation more friendly
- Clearer error when handling fractional time values
- Read Elasticsearch manifest via URL
- Throw if the local node is not set
- Bootstrap check for OnOutOfMemoryError and seccomp
- Log OS and JVM on startup
- Add GC overhead logging
- Refactor JvmGcMonitorService for testing
- Default to server VM and add client VM check
- Add system bootstrap checks escape hatch
- Avoid sliced locked contention in internal engine
- Add heap size bootstrap check
- Remove hostname from NetworkAddress.format
- Bootstrapping bootstrap checks
- Add max map count check
- Remove PROTOTYPE from BulkItemResponse.Failure
- Throw an exception if Writeable.Reader reads null
- Remove PROTOTYPE from RescorerBuilders
- Port Primary Terms to master
- Use index UUID to lookup indices on IndicesService
- Add -XX+AlwaysPreTouch JVM flag
- Add max size virtual memory check
- Use and test relative time in TransportBulkAction
- Bump Elasticsearch version to 5.0.0-SNAPSHOT
- Assert that we can write in all data-path on startup
- Add G1GC check on startup
- Shards with heavy indexing should get more of the indexing buffer
- Remove and ban ImmutableMap
- Finish banning ImmutableSet
- Removes and bans ImmutableSet
- Remove and ban ImmutableMap#entrySet
- Forbid ForwardingSet

Dates::
- Improve TimeZoneRoundingTests error messages
- Support full range of Java Long for epoch DateTime

Discovery::
- Do not log cluster service errors at after joining a master
- Log warning if minimum_master_nodes set to less than quorum
- Add a dedicate queue for incoming ClusterStates

Engine::
- Only try to read new segments info if we really flushed the index
- Use _refresh instead of reading from Translog in the RT GET case
- Remove writeLockTimeout from InternalEngine
- Don't guard IndexShard#refresh calls by a check to isRefreshNeeded
- Never call a listerner under lock in InternalEngine
- Use System.nanoTime() to initialize Engine.lastWriteNanos
- Flush big merges automatically if shard is inactive
- Remove Engine.Create
- Remove the disabled autogenerated id optimization from InternalEngine

Exceptions::
- Improve startup exception
- Make NotMasterException a first class citizen
- Do not catch throwable
- Make the index-too-old exception more explicit
- Add index name in IndexAlreadyExistsException default message
- Fix typos in exception/assert/log messages in core module.
- Add field names to several mapping errors
- Add serialization support for more important IOExceptions
- Adds exception objects to log messages.
- Add stack traces to logged exceptions where missing
- Remove reflection hacks from ElasticsearchException
- Rename QueryParsingException to a more generic ParsingException
- Add *Exception(Throwable cause) constructors/ call where appropriate

Expressions::
- improve date api for expressions/painless fields
- Support geo_point fields in lucene expressions
- Add support for .empty to expressions, and some docs improvements

Geo::
- GeoBoundingBoxQueryBuilder should throw IAE when topLeft and bottomRight
  are the same coordinate
- Enhanced lat/long error handling
- Fix a potential parsing problem in GeoDistanceSortParser
- Geo: Add validation of shapes to ShapeBuilders
- Make remaining ShapeBuilders implement Writeable
- Geo: Remove internal `translated` flag from LineStringBuilder
- Make PointBuilder, CircleBuilder & EnvelopeBuilder implement Writable
- Merging BaseLineString and BasePolygonBuilder with subclass
- Moving static factory methods to ShapeBuilders
- Remove InternalLineStringBuilder and InternalPolygonBuilder

Highlighting::
- Switch Highlighting to ObjectParser
- Use HighlightBuilder in SearchSourceBuilder
- Joint parsing of common global Hightlighter and subfield parameters
- Enable HighlightBuilder to create SearchContextHighlight
-  Add fromXContent method to HighlightBuilder

Index APIs::
- Add date-math support to `_rollover`
- Add Shrink request source parser to parse create index request body
- Fail hot_threads in a better way if unsupported by JDK

Index Templates::
- Add "version" field to Templates
- Parse and validate mappings on index template creation

Ingest::
- Add "version" field to Pipelines
- Make it possible for Ingest Processors to access AnalysisRegistry
- add ignore_missing option to convert,trim,lowercase,uppercase,grok,rename
- Add support for parameters to the script ingest processor
- introduce the JSON Processor
- Allow rename processor to turn leaf fields into branch fields
- remove ability to set field value in script-processor configuration
- Add REST _ingest/pipeline to get all pipelines
- Show ignored errors in verbose simulate result
- update foreach processor to only support one applied processor.
- Skip the execution of an empty pipeline
- Add `ignore_failure` option to all ingest processors
- new ScriptProcessor for Ingest
- Expose underlying processor to blame for thrown exception within
  CompoundProcessor
- Avoid string concatentation in IngestDocument.FieldPath
- add ability to specify multiple grok patterns
- add ability to disable ability to override values of existing fields in
  set processor
- Streamline option naming for several processors
- add automatic type conversion support to ConvertProcessor
- Give the foreach processor access to the rest of the document
- Added ingest statistics to node stats API
- Add `ingest_took` to bulk response
- Add ingest info to node info API, which contains a list of available
  processors
- Use diffs for ingest metadata in cluster state
- hide null-valued metadata fields from WriteableIngestDocument#toXContent
- Ingest: use bulk thread pool for bulk request processing (was index
  before)
- Add foreach processor
- revert PipelineFactoryError handling with throwing
  ElasticsearchParseException in ingest pipeline creation
- Add processor tags to on_failure metadata in ingest pipeline
- catch processor/pipeline factory exceptions and return structured error
  responses
- Ingest: move get/put/delete pipeline methods to ClusterAdminClient
- Geoip processor: remove redundant latitude and longitude fields and make
  location an object with lat and lon subfields

Inner Hits::
- Change scriptFields member in InnerHitBuilder to set

Internal::
- Remove poor-mans compression in InternalSearchHit and friends
- Don't register SearchTransportService handlers more than once
- Unguice SearchModule
- Deguice SearchService and friends
- NodeStats classes to implement Writeable rather then Streamable
- More info classes to implement Writeable rather than Streamable
- Internal: Split disk threshold monitoring from decider
- Switching LockObtainFailedException over to ShardLockObtainFailedException
- update and delete by query requests to implement
  IndicesRequest.Replaceable
- VersionFetchSubPhase should not use Versions#loadDocIdAndVersion
- Remove useless PK lookup in IndicesTTLService
- ignore some docker craziness in seccomp environment checks
- Make Priority an enum
- Snapshot UUIDs in blob names
- Add RestController method for deprecating in one step
- Tighten ensure atomic move cleanup
- Enable checkstyle ModifierOrder
- Expose task information from NodeClient
- Changed rest handler interface to take NodeClient
- Deprecate ExceptionsHelper.detailedMessage
- Factor out ChannelBuffer from BytesReference
- Cleanup Compressor interface
- Hot methods redux
- Remove forked joda time BaseDateTime class
- Support optional ctor args in ConstructingObjectParser
- Remove thread pool from page cache recycler
- Do not automatically close XContent objects/arrays
- Remove use of a Fields class in snapshot responses
- Removes multiple toXContent entry points for SnapshotInfo
- Removes unused methods in the o/e/common/Strings class
- Determine content length eagerly in HttpServer
- Consolidate query generation in QueryShardContext
- Make reset in QueryShardContext private
- Remove Strings#splitStringToArray
- Add toString() to GetResponse
- ConstructingObjectParser adapts ObjectParser for ctor args
- Makes Script type writeable
- FiltersAggregatorBuilder: Don't create new context for inner parsing
- Clean up serialization on some stats
- 	Normalize registration for SignificanceHeuristics
- Make (read|write)NamedWriteable public
- Use try-with-resource when creating new parser instances where possible
- Don't pass XContentParser to ParseFieldRegistry#lookup
- Internal: Remove threadlocal from document parser
- Cut range aggregations to registerAggregation
- Remove ParseFieldMatcher from AbstractXContentParser
- Remove parser argument from methods where we already pass in a parse
  context
- Switch SearchAfterBuilder to writeGenericValue
- Remove StreamableReader
- Cleanup nested, has_child & has_parent query builders for inner hits
  construction
- Make AllocationCommands NamedWriteables
- Isolate StreamableReader
- Create registration methods for aggregations similar to those for queries
- Remove PROTOTYPEs from QueryBuilders
- Remove registerQueryParser
- ParseField#getAllNamesIncludedDeprecated to not return duplicate names
- Rework a query parser and improve registration
- Clean up QueryParseContext and don't hold it inside
  QueryRewrite/ShardContext
- Remove PROTOTYPE from MLT.Item
- Remove PROTOTYPE from VersionType
- Remove PROTOTYPEs from highlighting
- Remove PROTOTYPEs from ingest
- Start to rework query registration
- Factor out slow logs into Search and IndexingOperationListeners
- Remove PROTOTYPE from Suggesters
- Remove PROTOTYPE from SortBuilders
- Remove PROTOTYPE from ShapeBuilders
- Replace FieldStatsProvider with a method on MappedFieldType.
- Stop using PROTOTYPE in NamedWriteableRegistry
- Support scheduled commands in current context
- Thread limits
- Remove leniency from segments info integrity checks
- Rename SearchServiceTransportAction to SearchTransportService
- Decouple the TransportService and ClusterService
- Refactor bootstrap checks
- Add LifecycleRunnable
- Hot inlined methods in your area
- Move IndicesQueryCache and IndicesRequestCache into IndicesService
- Forbid use of java.security.MessageDigest#clone()
- Make IndicesWarmer a private class of IndexService
- Simplify IndicesFieldDataCache and detach from guice
- Uppercase ells ('L') in long literals
- ShardId equality and hash code inconsistency
- Ensure all resources are closed on Node#close()
- Make index uuid available in Index, ShardRouting & ShardId
- Move RefreshTask into IndexService and use since task per index
- Make IndexingMemoryController private to IndicesService
- Cleanup IndexingOperationListeners infrastructure
- Remove and forbid use of j.u.c.ThreadLocalRandom
- Fix IntelliJ query builder type inference issues
- Remove and forbid use of Collections#shuffle(List) and Random#<init>()
- Remove and forbid use of the type-unsafe empty Collections fields
- Move IndicesService.canDeleteShardContent to use IndexSettings
- Simplify MonitorService construction and detach from guice
- Use Supplier for StreamInput#readOptionalStreamable
- Add variable-length long encoding
- Extend usage of IndexSetting class
- Fold SimilarityModule into IndexModule
- Move to lucene BoostQuery
- Use built-in method for computing hash code of longs
- Refactor ShardFailure listener infrastructure
- Add methods for variable-length encoding integral arrays
- Fold IndexAliasesService into IndexService
- Remove unneeded Module abstractions
- Query refactoring: simplify IndexQueryParserService parse methods
- Remove and forbid use of com.google.common.collect.Iterators
- Remove and forbid use of com.google.common.collect.ImmutableCollection
- Remove and forbid use of com.google.common.io.Resources
- Remove and forbid use of com.google.common.hash.*
- Remove and forbid use of com.google.common.net.InetAddresses
- Remove and forbid use of com.google.common.collect.EvictingQueue
- Replace Guava cache with simple concurrent LRU cache
- Remove ClusterSerivce and IndexSettingsService dependency from IndexShard
- Start making RecoverySourceHandler unittestable
- Remove IndexService dep. from IndexShard
- Remove ES internal deletion policies in favour of Lucenes implementations
- Move ShardTermVectorService to be on indices level as TermVectorService
- Move ShardPercolateService creation into IndexShard
- Remove `ExpressionScriptCompilationException` and
  `ExpressionScriptExecutionException`
- Reduced the number of ClusterStateUpdateTask variants
- Add a BaseParser helper for stream parsing
- Remove and forbid use of com.google.common.primitives.Ints
- Remove and forbid use of com.google.common.math.LongMath
- Remove and forbid use of com.google.common.base.Joiner
- Replace and ban next batch of Guava classes
- Remove and forbid use of com.google.common.collect.Iterables
- Replace LoadingCache usage with a simple ConcurrentHashMap
- Use Supplier instead of Reflection
- Remove and forbid use of com.google.common.base.Preconditions
- Remove and forbid use of guava Function, Charsets, Collections2
- Remove and forbid use of com.google.common.collect.ImmutableSortedMap
- Remove and forbid use of several com.google.common.util. classes
- Cleanup SearchRequest & SearchRequestBuilder
- Remove and forbid use of com.google.common.collect.Queues
- Remove and forbid use of com.google.common.base.Preconditions#checkNotNull
- Remove and forbid use of com.google.common.collect.Sets
- Remove and forbid use of com.google.common.collect.Maps
- Remove use of underscore as an identifier
- Remove and forbid the use of com.google.common.base.Predicate(s)?
- This commit removes com.google.common.io

Java API::
- Ensure PutMappingRequest.buildFromSimplifiedDef input are pairs
- Start from a random node number so that clients do not overload the first
  node configured
- Switch QueryBuilders to new MatchPhraseQueryBuilder
- Improve adding clauses to `span_near` and `span_or` query
- QueryBuilder does not need generics.
- Remove copy constructors from request classes and TransportMessage type

Java REST Client::
- Add support for a RestClient path prefix
- Add "Async" to the end of each Async RestClient method
- Allow RestClient to send array-based headers
- Add response body to ResponseException error message
- Simplify Sniffer initialization and automatically create the default
  HostsSniffer
- Remove duplicate dependency declaration for http client
- Add callback to customize http client settings
- Rest Client: add short performRequest method variants without params
  and/or body

Logging::
- Ensure logging is initialized in CLI tools
- Give useful error message if log config is missing
- Complete Elasticsearch logger names
- Add node name to decider trace logging
- Logging shutdown hack
- Disable console logging
- Skip loading of jansi from log4j2
- Configure AWS SDK logging configuration
- Warn if unsupported logging configuration present
- Size limit deprecation logs
- Increase visibility of deprecation logger
- Add log message about enforcing bootstrap checks
- Improve logging for batched cluster state updates
- Send HTTP Warning Header(s) for any Deprecation Usage from a REST request
- Throw IllegalStateException when handshake fails due to version or cluster
  mismatch

Mapping::
- Automatically downgrade text and keyword to string on indexes imported
  from 2.x
- Do not parse numbers as both strings and numbers when not included in
  `_all`.
- Don't index the `_version` field
- The root object mapper should support updating `numeric_detection`,
  `date_detection` and `dynamic_date_formats`.
- Automatically upgrade analyzed string fields that have `index_options` or
  `position_increment_gap` set.
- Mappings: Support dots in field names in mapping parsing
- Save one utf8 conversion in KeywordFieldMapper.
- Do not parse the created version from the settings every time a field is
  parsed.
- Elasticsearch should reject dynamic templates with unknown
  `match_mapping_type`.
- Upgrade `string` fields to `text`/`keyword` even if `include_in_all` is
  set.
- Adds a methods to find (and dynamically create) the mappers for the
  parents of a field with dots in the field name
- Automatically upgrade analyzed strings with an analyzer to `text`.
- Support dots in field names when mapping already exists
- Use the new points API to index numeric fields.
- Simplify AllEntries, AllField and AllFieldMapper:
- Make `parseMultiField` part of `parseField`.
- Automatically add a sub keyword field to string dynamic mappings.
- Remove friction from the mapping changes in 5.0.
- Rework norms parameters for 5.0.
- Moved dynamic field handling in doc parsing to end of parsing
- Remove the MapperBuilders utility class.
- Make the `index` property a boolean.
- Remove the ability to enable doc values with the `fielddata.format`
  setting.
- Be stricter about parsing boolean values in mappings.
- Fix default doc values to be enabled when a field is not indexed.
- Dynamically map floating-point numbers as floats instead of doubles.
- Simplify MetaDataMappingService.
- Remove MergeMappingException.

Network::
- Avoid early initializing Netty
- Network: Allow to listen on virtual interfaces.
- Explicitly tell Netty to not use unsafe
- Enable Netty 4 extensions
- Modularize netty
- Simplify TcpTransport interface by reducing send code to a single send
  method
- Do not start scheduled pings until transport start

Packaging::
- Add quiet option to disable console logging
- Explicitly disable Netty key set replacement
- Remove explicit parallel new GC flag
- Use JAVA_HOME or java.exe in PATH like the Linux scripts do
- Don't mkdir directly in deb init script
- Increase default heap size to 2g
- Switch init.d scripts to use bash
- Switch scripts to use bash
- Further simplifications of plugin script
- Pass ES_JAVA_OPTS to JVM for plugins script
- Remove unnecessary sleep from init script restart
- Explicitly set packaging permissions
- rpm uses non-portable `--system` flag to `useradd`
- Adding JAVA_HOME to documents and env config file
- Added RPM metadata
- Elasticsearch ownership for data, logs, and configs
- Fail early on JDK with compiler bug
- Make security non-optional
- Remove RuntimePermission("accessDeclaredMembers")
- Remove Guava as a dependency
- Remove Guava as a dependency

Percolator::
- Also support query term extract for queries wrapped inside a
  FunctionScoreQuery
- Add support for synonym query to percolator query term extraction
- Add percolator query extraction support for dismax query
- Improve percolate query performance by not verifying certain candidate
  matches
- Improve percolator query term extraction
- PercolatorQueryBuilder cleanup by using MemoryIndex#fromDocument(...)
  helper
- Add scoring support to the percolator query
- Add query extract support for the blended term query and the common terms
  query
- Add support for several span queries in ExtractQueryTermsService
- Add support for TermsQuery in ExtractQueryTermsService
- Replace percolate APIs with a percolator query

Plugin Analysis Kuromoji::
- Add nbest options and NumberFilter

Plugin Discovery EC2::
- Use `DefaultAWSCredentialsProviderChain` AWS SDK class for credentials
- Support new Asia Pacific (Mumbai) ap-south-1 AWS region
- Add support for proxy authentication for s3 and ec2

Plugin Discovery GCE::
- Allow `_gce_` network when not using discovery gce

Plugin Ingest Attachment::
- Minor attachment processor improvements

Plugin Lang Painless::
- Disable regexes by default in painless
- Catch OutOfMemory and StackOverflow errors in Painless
- Change Painless Tree Structure for Variable/Method Chains
- Add replaceAll and replaceFirst
- Painless Initializers
- Add augmentation
- Infer lambda arguments/return type
- Fix explicit casts and improve tests.
- Add lambda captures
- improve Debugger to print code even if it hits exception
- Move semicolon hack into lexer
- Add flag support to regexes
- improve lambda syntax (allow single expression)
- Remove useless dropArguments in megamorphic cache
- non-capturing lambda support
- fix bugs in operators and more improvements for the dynamic case
- improve unary operators and cleanup tests
- Add support for the find operator (=~) and the match operator (==~)
- Remove casts and boxing for dynamic math
- Refactor def math
- Add support for /regex/
- Array constructor references
- Method references to user functions
- Add } as a delimiter.
- Add Lambda Stub Node
- Add capturing method references
- Add Functions to Painless
- Add Method to Get New MethodWriters
- Static For Each
- Method reference support
- Add support for the new Java 9 MethodHandles#arrayLength() factory
- Improve painless compile-time exceptions
- add java.time packages to painless whitelist
- Add Function Reference Stub to Painless
- improve painless whitelist coverage of java api
- Definition cleanup
- Made def variable casting consistent with invokedynamic rules
- Use Java 9 Indy String Concats, if available
- Add method overloading based on arity
- Refactor WriterUtils to extend ASM GeneratorAdapter
- Whitelist expansion
- Remove boxing when loading and storing values in "def" fields/arrays,
  remove boxing onsimple method calls of "def" methods
- Some cleanups
- Use isAssignableFrom instead of relying on ClassCastException
- Build descriptor of array and field load/store in code
- Rename the dynamic call site factory to DefBootstrap
- Cleanup of DynamicCallSite
- Improve exception stacktraces
- Make Line Number Available in Painless
- Remove input, support params instead
- Decouple ANTLR AST from Painless
- _value support in painess?
- Long priority over Float
- _score as double, not float
- Add 'ctx' keyword to painless.
- Painless doc access
- Retrieve _score directly from Scorer
- Implement needsScore() correctly.
- Add synthetic length property as alias to Lists, so they can be used like
  arrays
- Use better typing for dynamic method calls
- Array load/store and length with invokedynamic
- Switch painless dynamic calls to invokedynamic, remove perf hack/cheat
- Add fielddata accessors (.value/.values/.distance()/etc)
- painless: optimize/simplify dynamic field and method access
- Painless: Single-Quoted Strings
- Painless Clean Up
- Make Painless a Module
- Minor Clean up
- Remove Extra String Concat Token

Plugin Mapper Attachment::
- minor attachments cleanups: IDE test support and EPUB format

Plugin Mapper Size::
- Add doc values support to the _size field in the mapper-size plugin

Plugin Repository Azure::
- Support global `repositories.azure.` settings
- Add timeout settings (default to 5 minutes)
- Remove AbstractLegacyBlobContainer

Plugin Repository HDFS::
- merge current hdfs improvements to master

Plugin Repository S3::
- Extract AWS Key from KeyChain instead of using potential null value
- Check that S3 setting `buffer_size` is always lower than `chunk_size`

Plugins::
- Revert "Display plugins versions"
- Provide error message when plugin id is missing
- Print message when removing plugin with config
- Plugins: Update official plugin location with unified release
- Allow plugins to upgrade global custom metadata on startup
- Switch aggregations from push to pull
- Display plugins versions
- Add ScriptService to dependencies available for plugin components
- Make NamedWriteableRegistry immutable and add extension point for named
  writeables
- Log one plugin info per line
- Make rest headers registration pull based
- Add resource watcher to services available for plugin components
- Add some basic services to createComponents for plugins
- Make plugins closeable
- Plugins: Add status bar on download
- Add did-you-mean for plugin cli
- Plugins: Remove name() and description() from api
- Emit nicer error message when trying to install unknown plugin
- Add plugin information for Verbose mode
- Cli: Improve output for usage errors
- Cli: Add verbose output with zip url when installing plugin
- PluginManager: Add xpack as official plugin
- CliTool: Cleanup and document Terminal
- Plugin cli: Improve maven coordinates detection
- Enforce plugin zip does not contain zip entries outside of the plugin dir
- CliTool: Allow unexpected exceptions to propagate
- Reduce complexity of plugin cli
- Remove Plugin.onIndexService.
- Open up QueryCache and SearcherWrapper extension points

Query DSL::
- Throw exception when multiple field names are provided as part of query
  short syntax
- Query parsers to throw exception when multiple field names are provided
- Allow empty json object in request body in `_count` API
- Treat zero token in `common` terms query as MatchNoDocsQuery
- Handle empty query bodies at parse time and remove EmptyQueryBuilder
- Enforce MatchQueryBuilder#maxExpansions() to be strictly positive
- Don't allow `fuzziness` for `multi_match` types `cross_fields`, `phrase`
  and `phrase_prefix`
- Add MatchNoDocsQuery, a query that matches no documents and prints the
  reason why in the toString method.
- Adds `ignore_unmapped` option to geo queries
- Adds `ignore_unmapped` option to nested and P/C queries
- SimpleQueryParser should call MappedFieldType.termQuery when appropriate.
- An `exists` query on an object should query a single term.
- Function Score Query: make parsing stricter
- Parsers should throw exception on unknown objects
- UNICODE_CHARACTER_CLASS fix

Query Refactoring::
- Add infrastructure to rewrite query builders
- Switch geo validation to enum

REST::
- Add a REST spec for the create API
- Add response params to REST params did you mean
- Add did you mean to strict REST params
- Add exclusion support to response filtering
- Only write forced_refresh if we forced a refresh
- Add Location header to the index, update, and create APIs
- Add support for `wait_for_events` to the `_cluster/health` REST endpoint
- Rename Search Template REST spec names
- Adding status field in _msearch error request bodies
- Add semicolon query string parameter delimiter
- Enable HTTP compression by default with compression level 3
- Allow JSON with unquoted field names by enabling system property
- More robust handling of CORS HTTP Access Control
- Add option to exclude based on paths in XContent

Recovery::
- Pass on maxUnsafeAutoIdTimestamp on recovery / relocation
- Non-blocking primary relocation hand-off
- index shard should be able to cancel check index on close.
- TransportNodesListGatewayStartedShards should fall back to disk based
  index metadata if not found in cluster state
- Recover broken IndexMetaData as closed
- Relocation source should be marked as relocating before starting recovery
  to primary relocation target
- Operation counter for IndexShard
- Primary relocation handoff
- Remove recovery threadpools and throttle outgoing recoveries on the master
- Refactor StoreRecoveryService to be a simple package private util class

Reindex API::
- Only ask for `_version` we need it
- Use fewer threads when reindexing-from-remote
- Support authentication with reindex-from-remote
- Support requests_per_second=-1 to mean no throttling in reindex
- Implement ctx.op = "delete" on _update_by_query and _reindex
- Make Reindex cancellation tests more uniform
- Makes DeleteByQueryRequest implements IndicesRequest
- Teach reindex to retry on search failures
- Remove ReindexResponse in favor of BulkIndexByScrollResponse
- Stricter validation of Reindex's requests_per_second
- Properly mark reindex's child tasks as child tasks
- Make reindex throttling dynamic
- Throttling support for reindex
- Add ingest pipeline support to reindex

Scripting::
- Parse script on storage instead of on retrieval
- Migrate elasticsearch native script examples to the main repo
- Remove ClusterState from compile api
- Mustache: Render Map as JSON
-  Compile each Groovy script in its own classloader
- Include script field even if it value is null
- Skipping hidden files compilation for script service
- Rename Plan A to Painless
- Add plumbing for script compile-time parameters
- Factor mustache -> modules/lang-mustache

Scroll::
- Add an index setting to limit the maximum number of slices allowed in a
  scroll request.

Search::
- Limit batch size when scrolling
- Record method counts while profiling query components
- Change default similarity to BM25
- Add a parameter to cap the number of searches the msearch api will
  concurrently execute
- Introduces GeoValidationMethod to GeoDistanceSortBuilder
- Switches from empty boolean query to matchNoDocs
- Allow binary sort values.
- Fail query if it contains very large rescores
- Type filters should not have a performance impact when there is a single
  type.
- Store _all payloads on 1 byte instead of 4.
- Refuse to load fields from _source when using the `fields` option and
  support wildcards.
- Add response into ClearScrollResponse
- Shuffle shards for _only_nodes + support multiple specifications like
  cluster API

Search Refactoring::
- Removes the now obsolete SearchParseElement implementations
- Remove RescoreParseElement
- Remove HighlighterParseElement
- Move top level parsing of sort element to SortBuilder
- Switch to using refactored SortBuilder instead of using BytesReference in
  serialization
- Add build() method to SortBuilder implementations
- Refactoring of Suggestions
- Move sort `order` field up into SortBuilder
- Moves SortParser:parse(...) to only require QueryShardContext
- Change internal representation of suggesters
- Make GeoDistanceSortBuilder serializable, 2nd try
- Move missing() from SortBuilder interface to class
- Remove deprecated parameters from ScriptSortBuilder
- Refactor GeoSortBuilder
- Refactor FieldSortBuilder
- Make sort order enum writable.
- Make DistanceUnit writable.
- RescoreBuilder: Add parsing and creating of RescoreSearchContext
- Make RescoreBuilder and nested QueryRescorer Writable
- Explain api: move query parsing to the coordinating node
- Switch query parsers to use ParseField
- Refactoring of Aggregations

Sequence IDs::
- Persist sequence number checkpoints
- Add sequence numbers to cat shards API

Settings::
- Add precise logging on unknown or invalid settings
- Make `action.auto_create_index` setting a dynamic cluster setting
- Removes space between # and the setting in elasticsearch.yml
- Validates new dynamic settings from the current state
- Improve error message if a setting is not found
- Cleanup placeholder replacement
- Switch to registered Settings for all IndexingMemoryController settings
- Add guard against null-valued settings
- Useful error message for null property placeholder
- Archive cluster level settings if unknown or broken
- Improve error message if setting is not found
- Improve upgrade experience of node level index settings
- Settings with complex matchers should not overlap
- Moves GCE settings to the new infra
- Add filtering support within Setting class
- Migrate AWS settings to new settings infrastructure
- Remove `gateway.initial_meta` and always rely on min master nodes
- Rewrite SettingsFilter to be immutable
- Simplify azure settings
- Convert PageCacheRecycler settings
- Monitor settings
- Cut over tribe node settings to new settings infra
- Convert multcast plugin settings to the new infra
- Convert `request.headers.*` to the new settings infra
- Migrate Azure settings to new settings infrastructure
- Validate logger settings and allow them to be reset via API
- Switch NodeEnvironment's settings to new settings
- Simplify AutoCreateIndex and add more tests
- Convert several pending settings
- Migrate query caching settings to the new settings infra.
- Convert `action.auto_create_index` and `action.master.force_local` to the
  new settings infra
- Convert `cluster.routing.allocation.type` and `processors` to the new
  settings infra.
- Validate tribe node settings on startup
- Move node.client, node.data, node.master, node.local and node.mode to new
  settings infra
- Moved http settings to the new settings infrastructure
- Migrate network service to the new infra
- Convert client.transport settings to new infra
- Move discovery.* settings to new Setting infrastructure
- Change over to o.e.common.settings.Setting for http settings
- Convert "path.*" and "pidfile" to new settings infra
- Migrate repository settings to the new settings API
- Convert "indices.*" settings to new infra.
- Migrate gateway settings to the new settings API.
- Convert several node and test level settings
- Run Metadata upgrade tool on every version
- Check for invalid index settings on metadata upgrade
- Validate the settings key if it's simple chars separated by `.`
- Validate known global settings on startup
- Cut over all index scope settings to the new setting infrastrucuture
- Remove updatability of `index.flush_on_close`
- Move all dynamic settings and their config classes to the index level
- Always require units for bytes and time settings
- Make MetaData parsing less lenient.
- Move async translog sync logic into IndexService
- Remove `index.merge.scheduler.notify_on_failure` and default to `true`
- Remove cache concurrency level settings that no longer apply

Similarities::
- Defining a global default similarity

Snapshot/Restore::
- Delete differing files in the store before restoring
- Adds ignoreUnavailable option to the snapshot status API
- Check restores in progress before deleting a snapshot
- Snapshot repository cleans up empty index folders
- BlobContainer#writeBlob no longer can overwrite a blob
- More resilient blob handling in snapshot repositories
- Adding repository index generational files
- Raised IOException on deleteBlob
- Adds UUIDs to snapshots
- Clarify the semantics of the BlobContainer interface
- Change BlobPath.buildAsString() method
- Remove the Snapshot class in favor of using SnapshotInfo

Stats::
- Add mem section back to cluster stats
- Add network types to cluster stats
- Add missing field type in the FieldStats response.
- Expose the ClusterInfo object in the allocation explain output
- Add total_indexing_buffer/_in_bytes to nodes info API
- Allow FieldStatsRequest to disable cache
- Remove index_writer_max_memory stat from segment stats
- Move DocStats under Engine to get more accurate numbers
- Do not return fieldstats information for fields that exist in the mapping
  but not in the index.
- Add whether the shard state fetch is pending to the allocation explain API
- Add Failure Details to every NodesResponse
- Add I/O statistics on Linux
- Add points to SegmentStats.
- Remove FieldStats.Float.
- Show configured and remaining delay for an unassigned shard.
- indexing stats now contain indexing ops from recovery  [ISSUE]
- Normalize unavailable load average
- Add load averages to OS stats on FreeBSD
- Expose pending cluster state queue size in node stats

Store::
- Use `mmapfs` by default.
- Remove support for legacy checksums
- Rename index folder to index_uuid

Suggesters::
- Move SuggestUtils methods to their respective caller classes
- Remove payload option from completion suggester
- Add bwc support for reading  pre-5.0 completion index

Task Manager::
- Rename Task Persistence into Storing Task Results
- Fetch result when wait_for_completion
- Create get task API that falls back to the .tasks index
- Add ability to store results for long running tasks
- Move parentTaskId into TransportRequest
- Shorten the serialization of the empty TaskId
- Expose whether a task is cancellable in the _tasks list API
- Add ability to group tasks by common parent
- Add start time and duration to tasks
- Combine node name and task id into single string task id
- Add task status
- Extend tracking of parent tasks to master node, replication and broadcast
  actions

Translog::
- Fsync documents in an async fashion
- Add checksumming and versions to the Translog's Checkpoint files
- Beef up Translog testing with random channel exceptions
- Do not replay into translog on local recovery
- FSync translog outside of the writers global lock
- Remove ChannelReference and simplify Views
- Simplify TranslogWriter to always write to a stream
- Remove TranslogService and fold it into synchronous IndexShard API


=== Bug fixes

Aggregations::
- Fixed writeable name from range to geo_distance
- Fix date_range aggregation to not cache if now is used
- The `top_hits` aggregation should compile scripts only once.
- Fix agg profiling when using breadth_first collect mode
- Throw exception when maxBounds greater than minBounds
- Undeprecates `aggs` in the search request
- Change how `nested` and `reverse_nested` aggs know about their nested
  depth level
- Make ExtendedBounds immutable
- Aggregations fix: support include/exclude strings for IP and dates
- Fix xcontent rendering of ip terms aggs.
- Improving parsing of sigma param for Extended Stats Bucket Aggregation
- Fixes NPE when no window is specified in moving average request
- Fixes Filter and FiltersAggregation to work with empty query
- Fixes the defaults for `keyed` in the percentiles aggregations
- Correct typo in class name of StatsAggregator

Allocation::
- Keep a shadow replicas' allocation id when it is promoted to primary
- IndicesClusterStateService should clean local started when re-assigns an
  initializing shard with the same aid
- IndexRoutingTable.initializeEmpty shouldn't override supplied primary
  RecoverySource
- Update incoming recoveries stats when shadow replica is reinitialized
- `index.routing.allocation.initial_recovery` limits replica allocation
- Upon being elected as master, prefer joins' node info to existing cluster
  state
- Fix NPE when initializing replica shard has no UnassignedInfo
- Make shard store fetch less dependent on the current cluster state, both
  on master and non data nodes
- Fix recovery throttling to properly handle relocating non-primary shards
- Replica shards must be failed before primary shards

Analysis::
- Named analyzer should close the analyzer that it wraps
- Can load non-PreBuiltTokenFilter in Analyze API
- Fix analyzer alias processing

Bulk::
- Add not-null precondition check in BulkRequest

CAT API::
- Fixes cat tasks operation in detailed mode
- Add index pattern wildcards support to _cat/shards

CRUD::
- GET operations should not extract fields from `_source`.
- Squash a race condition in RefreshListeners
- Prevent TransportReplicationAction to route request based on stale local
  routing table
- Resolves the conflict between alias routing and parent routing by applying
  the alias routing and ignoring the parent routing.

Cache::
- Prevent requests that use scripts or now() from being cached
- Serialize index boost and phrase suggest collation keys in a consistent
  order

Circuit Breakers::
- Never trip circuit breaker in liveness request
- Free bytes reserved on request breaker

Cluster::
- Fixes issue with dangling index being deleted instead of re-imported
- Allow routing table to be filtered by index pattern
- Use executor's describeTasks method to log task information in cluster
  service
- Acknowledge index deletion requests based on standard cluster state
  acknowledgment
- Dangling indices are not imported if a tombstone for the index exists
- Fix issue with tombstones matching active indices in cluster state
- Shard state action channel exceptions

Core::
- Makes `m` case sensitive in TimeValue
- Guard against negative result from FileStore.getUsableSpace when picking
  data path for a new shard
- Handle rejected execution exception on reschedule
- Fix concurrency bug in IMC that could cause it to check too infrequently
- Iterables.flatten should not pre-cache the first iterator
- Avoid race while retiring executors
- Refactor UUID-generating methods out of Strings
- Node names cleanup
- NullPointerException from IndexingMemoryController when a version conflict
  happens during recovery
- Handle RejectedExecution gracefully in TransportService during shutdown

Discovery::
- Update discovery nodes after cluster state is published
- Add current cluster state version to zen pings and use them in master
  election

Engine::
- Take refresh IOExceptions into account when catching ACE in InternalEngine
- Don't suppress AlreadyClosedException

Expressions::
- replace ScriptException with a better one

Geo::
- Incomplete results when using geo_distance for large distances [ISSUE]
- Fix multi-field support for GeoPoint types
- Enforce distance in distance query is > 0 [ISSUE]

Highlighting::
- Enable BoostingQuery with FVH highlighter

Index APIs::
- Fixes active shard count check in the case of `all` shards
- Add zero-padding to auto-generated rollover index name increment

Ingest::
- no null values in ingest configuration error messages
- JSON Processor was not properly added
- Don't rebuild pipeline on every cluster state update
- Add dotexpander processor
- Fix NPE when simulating a pipeline with no id
- Change foreach processor to use ingest metadata for array element
- No other processors should be executed after on_failure is called
- rethrow script compilation exceptions into ingest configuration exceptions
- Rename from `ingest-useragent` plugin to `ingest-user-agent` and its
  processor from `useragent` to `user_agent`
- Fix ignore_failure behavior in _simulate?verbose and more cleanup
- Pipeline Stats: Fix concurrent modification exception
- Validate properties values according to database type
- Ingest does not close its factories
- Handle regex parsing errors in Gsub and Grok Processors
- add on_failure exception metadata to ingest document for verbose simulate
- The IngestDocument copy constructor should make a deep copy

Inner Hits::
- Ensure that that InnerHitBuilder uses rewritten queries

Internal::
- Prevent AbstractArrays from release bytes more than once
- IndicesAliasesRequest should not implement CompositeIndicesRequest
- Ensure elasticsearch doesn't start with unuspported indices
- Remove ListTasksResponse#setDiscoveryNodes()
- Priority values should be unmodifiable
- Extract AbstractBytesReferenceTestCase
- Add XPointValues
- Fix BulkItemResponse.Failure.toString
- Enable unmap hack for java 9
- Fix issues with failed cache loads
- Allow parser to move on the START_OBJECT token when parsing search source
- Ensure searcher is release if wrapping fails
- Avoid deadlocks in Cache#computeIfAbsent

Java API::
- fix IndexResponse#toString to print out shards info
- Add NamedWriteables from plugins to TransportClient
- Fix potential NPE in SearchSourceBuilder

Java REST Client::
- Rest Client: add slash to log line when missing between host and uri
- Rest Client: HostsSniffer to set http as default scheme

Logging::
- Fix logger when you can not create an azure storage client
- Avoid unnecessary creation of prefix loggers
- Fix logging hierarchy configs
- Fix prefix logging
- Hack around Log4j bug rendering exceptions
- Avoid prematurely triggering logger initialization
- Only log running out of slots when out of slots

Mapping::
- Allow position_gap_increment for fields in indices created prior to 5.0
- Validate blank field name
- Better error message when mapping configures null
- Make doc_values accessible for _type
- Fix and test handling of `null_value`.
- Fail automatic string upgrade if the value of `index` is not recognized.
- Fix dynamic check to properly handle parents
- Fix array parsing to remove its context when finished parsing
- Disallow fielddata loading on text fields that are not indexed.
- Make dynamic template parsing less lenient.
- Fix dynamic mapper when its parent already has an update
- Fix copy_to when the target is a dynamic object field.
- Preserve existing mappings on batch mapping updates

Network::
- Fix connection close header handling
- Ensure port range is readable in the exception message
- Fix expect 100 continue header handling
- Fixes netty4 module's CORS config to use defaults
- Fix various concurrency issues in transport
- Verify lower level transport exceptions don't bubble up on disconnects

Packaging::
- [Packaging] Do not remove scripts directory on upgrade
- [Package] Remove bin/lib/modules directories on RPM uninstall/upgrade
- Fix handling of spaces for jvm.options on Windows
- Disable service in pre-uninstall
- Remove extra bin/ directory in bin folder
- Filter client/server VM options from jvm.options
- Preserve config files from RPM install
- Fix typo in message for variable setup ES_MAX_MEM
- Don't run `mkdir` when $DATA_DIR contains a comma-separated list
- Fix exit code
- Set MAX_OPEN_FILES to 65536
- [windows] Service command still had positional start command
- Do not pass double-dash arguments on startup

Parent/Child::
-  Make sure that no `_parent#null` gets introduces as default _parent
   mapping

Percolator::
- Fail indexing percolator queries containing either a has_child or
  has_parent query
- Add support for MatchNoDocsQuery in percolator's query terms extract
  service
- Let PercolatorQuery's explain use the two phase iterator

Plugin Discovery Azure Classic::
- Make discovery-azure plugin work again

Plugin Discovery EC2::
- Fix EC2 discovery settings
- Add TAG_SETTING to list of allowed tags for the ec2 discovery plugin.
- Fix EC2 Discovery settings

Plugin Discovery GCE::
- Fix NPE when GCE region is empty

Plugin Ingest Attachment::
- Adds content-length as number

Plugin Ingest GeoIp::
- [ingest-geoip] update geoip to not include null-valued results from

Plugin Lang Painless::
- Fix String Concatenation Bug In Painless
- Fix break bug in for/foreach loops.
- Fix compound assignment with string concats
- Fix horrible capture
- Fix Casting Bug
- Remove Grammar Ambiguities
- Remove if/else ANTLR ambiguity.
- Fix insanely slow compilation
- Fix Bug in Painless Assignment
- Fix bracket shortcuts

Plugin Repository Azure::
- Register group setting for repository-azure accounts
- Fix azure files removal

Plugin Repository S3::
- Fixes leading forward slash in S3 repository base_path
- Add missing permission to repository-s3
- Fix repository S3 Settings and add more tests

Plugin Store SMB::
- Fix calling ensureOpen() on the wrong directory (master forwardport)

Plugins::
- Use sysprop like with es.path.home to pass conf dir
- Quote path to java binary
- CliTool: Messages printed in Terminal should have percent char escaped

Query DSL::
- Fixes MultiMatchQuery so that it doesn't provide a null context
- Fix silently accepting malformed queries
- query_string_query should take term length into consideration when
  fuzziness is auto
- Throw ParsingException if a query is wrapped in an array
- Restore parameter name auto_generate_phrase_queries
- Resolve string dates and date math to millis before evaluating for rewrite
  in range query
- `constant_score` query should throw error on more than one filter
- Single IPv4 addresses in IP field term queries
- Make strategy optional in GeoShapeQueryBuilder readFrom and writeTo

Query Refactoring::
- Query refactoring: set has_parent & has_child types context properly
- Make sure equivalent geohashCellQueries are equal after toQuery called

REST::
- Remove lenient URL parameter parsing
- Fixes CORS handling so that it uses the defaults
- Get XContent params from request in Nodes rest actions
- Fixes reading of CORS pre-flight headers and methods

Recovery::
- Fix concurrency issues between cancelling a relocation and marking shard
  as relocated
- Move `reset recovery` into RecoveriesCollection
- Fix replica-primary inconsistencies when indexing during primary
  relocation with ongoing replica recoveries
- Invoke `IndexingOperationListeners` also when recovering from store or
  remote
- Prevent interruption while store checks lucene files for consistency
- Mark shard as recovering on the cluster state thread

Reindex API::
- Fix reindex with transport client
- Fix a race condition in reindex's rethrottle
- Reindex should never report negative throttled_until
- Reindex should gracefully handle when _source is disabled

Scripting::
- Add support for booleans in scripts
- Fix Javascript OOM build Failure
- Fix propagating the default value for script settings
- Catch and wrap AssertionError and NoClassDefFoundError in groovy scripts

Search::
- Do not cache script queries.
- Throw error when trying to fetch fields from source and source is disabled
- Source filtering should keep working when the source contains numbers
  greater than `Long.MAX_VALUE`.
- Fix NPE when running a range query on a `scaled_float` with no upper
  bound.
- Fix NPE during search with source filtering if the source is disabled.
- Restore assignment of time value when deserializing a scroll instance
- Fix explain output for dfs query
- Don't recursively count children profile timings
- fix explain in function_score if no function filter matches
- Fix NPEs due to disabled source
- Require timeout units when parsing query body
- Close SearchContext if query rewrite failed
- Fix parsing single `rescore` element in SearchSourceBuilder
- Fail queries on not indexed fields.
- Fix for search after
- Do not be lenient when parsing CIDRs

Settings::
- Fix Setting.timeValue() method
- Add a hard limit for `index.number_of_shard`
- Include complex settings in settings requests
- Fix filter cache setting to allow percentages
- Move cluster.routing.allocation.same_shard.host setting to new settings
  infrastructure
- Validate settings against dynamic updaters on the master
- Register "cloud.node.auto_attributes" setting in EC2 discovery plugin
- Use object equality to compare versions in IndexSettings
- fix exists method for list settings when using numbered setting format
- convert settings for ResourceWatcherService to new infrastructure
- Register bootstrap settings
- Add settings filtering to node info requests
- Ban write access to system properties

Snapshot/Restore::
- Better handling of an empty shard's segments_N file
- Fix race condition in snapshot initialization
- Fix the semantics for the BlobContainer interface

Stats::
- Fix FieldStats deserialization of `ip` field
- Fix serialization bug in allocation explain API.
- Allocation explain: Also serialize `includeDiskInfo` field
- Add missing builder.endObject() in FsInfo

Store::
- Tighten up concurrent store metadata listing and engine writes
- Make static Store access shard lock aware
- Catch assertion errors on commit and turn it into a real exception

Task Manager::
- Shard level tasks in Bulk Action lose reference to their parent tasks
- Take filterNodeIds into consideration while sending task requests to nodes

Term Vectors::
- Fix calculation of took time of term vectors request

Translog::
- Fix RAM usage estimation of LiveVersionMap.
- Fix translog replay multiple operations same doc
- Snapshotting and sync could cause a dead lock TranslogWriter
- Move translog recover outside of the engine
- Mark shard active during recovery; push settings after engine finally
  inits


=== Regressions

Highlighting::
- Handle SynonymQuery extraction for the FastVectorHighlighter

=== Upgrades

Core::
- Upgrade to Lucene 6.2.0
- Update to jackson 2.8.1
- Upgrade to Lucene 6.1.0.
- Upgrade to lucene-6.1.0-snapshot-3a57bea.
- Upgrade to Lucene 6.0.1.
- Upgrade to lucene 6 release
- Upgrade to lucene-6.0.0-f0aa4fc.
- upgrade to lucene 6.0.0-snapshot-bea235f
- Upgrade to Jackson 2.7.1

Ingest::
- Update MaxMind geoip2 version to 2.6

Internal::
- Bump master (3.0-snapshot) to java 8

Network::
- Upgrade to Netty 4.1.5
- Dependencies: Upgrade to netty 4.1.4
- Introduce Netty 4

Packaging::
- Upgrade JNA to 4.2.2 and remove optionality

Plugin Discovery EC2::
- Update aws sdk to 1.10.69 and add use_throttle_retries repository setting

Scripting::
- Dependencies: Updates to mustache 0.9.3

Search Templates::
- Update mustache.java to version 0.9.1
2016-11-08 09:18:00 +00:00
fhajny
e6c137e8b0 Update elasticsearch to 2.4.1
=== Enhancements

Allocation::
- Change DiskThresholdDecider's behavior when factoring in leaving shards

Cluster::
- Add clusterUUID to RestMainAction output


=== Bug fixes

Core::
- Guard against negative result from FileStore.getUsableSpace when pick...

Highlighting::
- skip GeoPointMultiTermQuery when highlighting
- Fix highlighting of MultiTermQuery within a FunctionScoreQuery

Index APIs::
- Fix IndexNotFoundException in multi index search request.

Internal::
- Don't fail replica if FlushNotAllowedEngineException is thrown

Network::
- Don't send exception responses twice

Packaging::
- Fix Windows GC options

Query DSL::
- Fail parsing when match query contains an array of terms

REST::
- Correct the description for refresh

Reindex API::
- Make reindex tests a little less flaky

Scripting::
- Native scripts should be created once per index, not per segment.

Settings::
- Validate max thread/merge settings
2016-10-26 13:56:30 +00:00
fhajny
d5e4126c37 Update databases/elasticsearch to 2.4.0.
=== Breaking changes

Network::
- Single comma-delimited response header for multiple values

=== Deprecations

Geo::
- Deprecate optimize_bbox on geodistance queries
- Deprecate geohash parameters for geo_point parser

Mapping::
- Add deprecation logging for '_timestamp' and '_ttl'.

Query DSL::
- Deprecate soon-to-be-unsupported queries.

REST::
- Deprecate camelCase usages

Search::
- Deprecate sort option reverse.

Settings::
- Deprecate bootstrap.mlockall
- Deprecate camelCase settings magic

Snapshot/Restore::
- Adds deprecation notices on removed BlobContainer methods

=== New features

Geo::
- Add CONTAINS relation to geo_shape query

Plugin Cloud AWS::
- Add support for path_style_access

Reindex API::
- Backport: Reindex's throttling

=== Enhancements

Circuit Breakers::
- Limit request size

Cluster::
- Batch process node left and node failure 2.x

Core::
- Improve performance of applyDeletedShards
- Sliced lock contention 2.x
- Kill thread local leak
- Remove hostname from NetworkAddress.format (2.x)

Dates::
- Improve TimeUnitRounding for edge cases and DST transitions

Internal::
- Turn RestChannel into an interface
- Require executor name when calling scheduleWithFixedDelay
- Implement available for all StreamInput classes

Java API::
- Add created flag to IndexingOperationListener#postIndex

Logging::
- Add shardId and node name in search slow log

Mapping::
- Mappings: Allow to force dots in field names

Network::
- Exclude admin / diagnostic requests from HTTP request limiting
- Netty request/response tracer should wait for send
- Exclude specific transport actions from request size limit check
- Provide better error message when an incompatible node connects
  to a node

Packaging::
- Increase default max open files to 65536
- Allow configuring Windows service name, description and user

Parent/Child::
- Allow adding additional child types that point to an existing
  parent type

Query DSL::
- Fixed QueryParsingException in multi match query

REST::
- CORS handling triggered whether User-Agent is a browser or not

Reindex API::
- Switch default batch size for reindex to 1000

Scripting::
-  Mustache: Add util functions to render JSON and join array
   values
- Compile each Groovy script in its own classloader

=== Bug fixes

Aggregations::
- Fix potential AssertionError with include/exclude on terms
  aggregations.
- Pass resolved extended bounds to unmapped histogram aggregator
- Fix "key_as_string" for date histogram and
  epoch_millis/epoch_second format with time zone
- Fix TimeUnitRounding for hour, minute and second units
- Adds serialisation of sigma to extended_stats_bucket pipeline
  aggregation
- ExtendedStatsAggregator should also pass sigma to emtpy aggs.
- Prevents exception being raised when ordering by an aggregation
  which wasn't collected
- Setting 'other' bucket on empty aggregation

Allocation::
- Rebalancing policy shouldn't prevent hard allocation decisions

Analysis::
- Add 'Character.MODIFIER_SYMBOL' to the list of symbol
  categories.

Bulk::
- Copy headers and context to individual requests inside a bulk

CAT API::
- Fix merge stats rendering in RestIndicesAction
- Expand wildcards to closed indices in '/_cat/indices'
- Fix column aliases in '_cat/indices', '_cat/nodes' and
  '_cat/shards' APIs

CRUD::
- Prevent TransportReplicationAction to route request based on
  stale local routing table

Cluster::
- Fix block checks when no indices are specified
- Cluster stats: fix memory available that is always set to 0

Core::
- Throw exception if using a closed transport client
- Fix misplaced cast when parsing seconds
- Don't try to compute completion stats on a reader after we
  already closed it

Dates::
- Make sure TimeIntervalRounding is monotonic for increasing dates
- Fix invalid rounding value for TimeIntervalRounding close to DST
  transitions
- Fix problem with TimeIntervalRounding on DST end

Highlighting::
- Plain highlighter should ignore parent/child queries
- Let fast vector highlighter also extract terms from the nested
  query's inner query.
- Skip all geo point queries in plain highlighter
- Exclude all but string fields from highlighting if wildcards are
  used

Indexed Scripts/Templates::
- Don't ignore custom sharding settings in create index request
  for '.scripts' index

Internal::
- Fix filtering of node ids for TransportNodesAction

Logging::
- Add missing index name to search slow log.

Mapping::
- Mapping updates on objects should propagate 'include_an_all'.
- Mappings: Fix detection of metadata fields in documents
- Fix not_analyzed string fields to error when
  position_increment_gap is set
- Automatically created indices should honor
  'index.mapper.dynamic'.
- Process dynamic templates in order.
- Fix cross type mapping updates for 'boolean' fields.
- Fail if an object is added after a field with the same name.

Packaging::
- RESTART_ON_UPGRADE incorrectly named ES_RESTART_ON_UPGRADE in
  sysconfig

Percolator::
- Set the SC and QPC type always to '.percolator' in percolate api
- Fixed NPE when percolator filter option is "empty".

Plugin Analysis Kuromoji::
- Prebuild Japanese Stop Words Token Filter

Plugin Cloud AWS::
- Support specific key/secret for EC2
- Add missing permission for S3 repository

Plugin Cloud Azure::
-  Make discovery-azure work again on 2.4 branch
- Fix remove of azure files

Plugin Cloud GCE::
- Fix NPE when GCE region is empty

Query DSL::
- Make parsing of bool queries stricter
- Fix NullPointerException in SimpleQueryParser when analyzing
  text produces a null query
- Apply the default operator on analyzed wildcard in
  simple_query_string builder
- Apply the default operator on analyzed wildcard in query_string
  builder

REST::
- Do not decode path when sending error
- CORS should permit same origin requests
- Allow CORS requests to work with HTTP compression enabled
- Fixes reading of CORS pre-flight headers and methods
- Fix OOM in AbstractXContentParser

Recovery::
- Backports Notify GatewayRecoveryListener on failure

Reindex API::
- Make reindex and lang-javascript compatible

Search::
- AllTermQuery must implement equals/hashCode.
- Add ref-counting to SearchContext to prevent accessing already
  closed readers
- Fix '_only_nodes' preferences
- Speed up named queries.

Snapshot/Restore::
- Handle 'indices=["_all"]' when restoring a snapshot
- On restore, selecting concrete indices can select wrong index

Stats::
- Fix sync flush total shards statistics

Translog::
- Translog can delete valid .ckp file when views are closed after
  the translog
- Call ensureOpen on Translog#newView() to prevent
  IllegalStateException

=== Upgrades

Core::
- Update jackson to version 2.8.1 (on 2.4 branch)
- Upgrade lucene to 5.5.2

Dates::
- Upgrade joda-time to 2.9.4

Internal::
- Update Jackson 2.6.2 -> 2.6.6 (latest and final 2.6 patch)

Network::
- Upgrade to netty 3.10.6.Final

Plugin Cloud AWS::
- Update aws sdk to 1.10.69 and add throttle_retries repository
  setting
2016-09-19 12:28:31 +00:00
fhajny
3264227760 Update databases/elasticsearch to 2.3.5.
2.3.5

There are no changes in Elasticsearch 2.3.5 except for the version
bump. This is a compatibility release for bug fixes in Marvel,
Watcher, and Shield.

2.3.4

Bulk
- Copy headers and context to individual requests inside a bulk

CAT API
- Fix merge stats rendering in RestIndicesAction
- Expand wildcards to closed indices in /_cat/indices

Cluster
- Fix block checks when no indices are specified

Core
- Fix misplaced cast when parsing seconds

Highlighting
- Skip all geo point queries in plain highlighter

Internal
- Fix filtering of node ids for TransportNodesAction

Percolator
- Fixed NPE when percolator filter option is "empty".

REST
- Do not decode path when sending error

Translog
- Translog can delete valid .ckp file when views are closed after
  the translog

- Dates
Upgrade joda-time to 2.9.4
2016-08-19 10:09:11 +00:00
jperkin
36e6903fd8 Remove the stability entity, it has no meaning outside of an official context. 2016-06-08 10:16:50 +00:00
jperkin
13a8dd759b Change the service_bundle name to "export" to reduce diffs between the
original manifest.xml file and the output from "svccfg export".
2016-06-08 10:02:24 +00:00
fhajny
7a7c14f0b2 Update databases/elasticsearch to 2.3.3.
== 2.3.3 Release Notes

=== New features

Geo::
- Add CONTAINS relation to geo_shape query

=== Enhancements

Core::
- Kill thread local leak

REST::
- CORS handling triggered whether User-Agent is a browser or not

=== Bug fixes

Core::
- Don't try to compute completion stats on a reader after we
  already closed it

Highlighting::
- Exclude all but string fields from highlighting if wildcards are
  used...

Query DSL::
- Fix NullPointerException in SimpleQueryParser when analyzing
  text produces a null query

REST::
- CORS should permit same origin requests
- Allow CORS requests to work with HTTP compression enabled

=== Upgrades

Internal::
- Update Jackson 2.6.2 -> 2.6.6 (latest and final 2.6 patch)
2016-05-24 01:44:40 +00:00
fhajny
11e0004a59 Update databases/elasticsearch to 2.3.2.
== 2.3.2 Release Notes

=== Deprecations

REST::
- Deprecate camelCase usages

Search::
- Deprecate sort option reverse.

Settings::
- Deprecate camelCase settings magic

=== Enhancements

Analysis::
- Analyze API : Fix/deprecated filters in analyze in 2x

=== Bug fixes

Aggregations::
- Aggregations: Adds serialisation of sigma to
  extended_stats_bucket pipeline aggregation
- ExtendedStatsAggregator should also pass sigma to emtpy aggs.

Allocation::
- Rebalancing policy shouldn't prevent hard allocation decisions
- When considering the size of shadow replica shards, set size to 0

Logging::
- Add missing index name to search slow log.

Mapping::
- Fail if an object is added after a field with the same name.

More Like This::
- Alias items are not ignored anymore

REST::
- Fixes reading of CORS pre-flight headers and methods
- index is a required url part for update by query

Recovery::
- Backports Notify GatewayRecoveryListener on failure

Snapshot/Restore::
- On restore, selecting concrete indices can select wrong index


== 2.3.1 Release Notes

=== Bug fixes

Aggregations::
- Prevents exception being raised when ordering by an aggregation
  which wasn't collected

Cluster::
- Cluster stats: fix memory available that is always set to 0


== 2.3.0 Release Notes

=== Breaking changes

Allocation::
- Speed up shard balancer by reusing shard model while moving
  shards that can no longer be allocated to a node

Mapping::
- Add per-index setting to limit number of nested fields

=== Deprecations

Geo::
- Deprecate lat_lon and precision_step
- Deprecate geo_point mapping params

Plugin Discovery Multicast::
- Deprecate Discovery Multicast Plugin

Query DSL::
- Add deprecation logging for deprecated queries.

=== New features

Reindex API::
- Backport reindex to 2.x

Task Manager::
- Backport of task management api to 2x

=== Enhancements

Allocation::
- Skip capturing least/most FS info for an FS with no total
- Speed improvements for BalancedShardsAllocator

Cache::
- Make TermsQuery considered costly.

Cluster::
- Shard state action request logging
- Safe cluster state task notifications

Core::
- Remove log4j exception hiding
- Avoid cloning MessageDigest instances
- Add a hard check to ensure we are running with the expected
  lucene version

Exceptions::
- Added file name to exceptions when failing to read index state
- Add Exception class name to message in
  `NotSerializableExceptionWrapper`

Geo::
- Upgrade GeoPointField to use Lucene 5.5 PrefixEncoding

Internal::
- Cleanup search sub transport actions and collapse
  o.e.action.search.type package into o.e.action.search

Java API::
- TransportClient: Add exception when using plugin.types, to help
  migration to addPlugin

Logging::
- Log suppressed stack traces under DEBUG

Mapping::
- Add deprecation logging for mapping transform
- Expose the reason why a mapping merge is issued.
- Add sub-fields support to `bool` fields.
- Improve cross-type dynamic mapping updates.
- Make mapping updates more robust.

Network::
- Add additional fallback to http.publish_port and restrict
  fallback to transport.publish_port

Packaging::
- Windows service: Use JAVA_HOME environment variable in registry
- Default standard output to the journal in systemd
- Use egrep instead of grep -E for Solaris

Plugin Cloud Azure::
- Add timeout settings (default to 5 minutes)

Plugin Discovery EC2::
- Add ap-northeast-2 (seoul) endpoints for EC2 discovery and S3
  snapshots

Plugin Mapper Attachment::
- Fix attachments plugins with docx

REST::
- More robust handling of CORS HTTP Access Control

Reindex API::
- Implement helpful interfaces in reindex requests
- Reindex should timeout if sub-requests timeout
- Teach reindex to retry on rejection

Scripting::
- Logs old script params use to the Deprecation Logger
- Remove suppressAccessChecks permission for Groovy script plugin
- Class permission for Groovy references
- Scripting: Allow to get size of array in mustache
- Added plumbing for compile time script parameters
- Enhancements to the mustache script engine

Search::
- Add deprecation logging for ignore_unmapped parameter
- Add deprecation logging when users use the SCAN search type.

Settings::
- Log warning if max file descriptors too low

=== Bug fixes

Aggregations::
- Setting 'other' bucket on empty aggregation
- Build empty extended stats aggregation if no docs collected for
  bucket
- Set meta data for pipeline aggregations
- Filter(s) aggregation should create weights only once.
- Make `missing` on terms aggs work with all execution modes.
- Fix NPE in Derivative Pipeline when current bucket value is null

Aliases::
- Fix _aliases filter and null parameters
- Check lenient_expand_open after aliases have been resolved

Allocation::
- IndicesStore checks for `allocated elsewhere` for every shard
  not alocated on the local node
- Prevent peer recovery from node with older version

Analysis::
- Analysis : Allow string explain param in JSON
- Analysis : Fix no response from Analyze API without specified
  index

Bulk::
- Bulk api: fail deletes when routing is required but not
  specified

CAT API::
- Fix column aliases in _cat/indices, _cat/nodes and _cat/shards
  APIs

CRUD::
- fixed propagation of autoGeneratedId on document creation
- Throw exception if content type could not be determined in
  Update API

Cache::
- Handle closed readers in ShardCoreKeyMap

Cluster::
- Index deletes not applied when cluster UUID has changed
- Only fail the relocation target when a replication request on it
  fails

Core::
- Migrate template settings (add missing byte & time units)

Fielddata::
- Make disabled fielddata loading fail earlier.

Geo::
- Remove .geohash suffix from GeoDistanceQuery and
  GeoDistanceRangeQuery

Highlighting::
- Don't override originalQuery with request filters

Inner Hits::
- Query and top level inner hit definitions shouldn't overwrite
  each other

Internal::
- Log uncaught exceptions from scheduled once tasks
- FunctionScoreQuery should implement two-phase iteration.

Java API::
- Fix boundary chars in java api

Logging::
- Add missing index name to indexing slow log
- ParseFieldMatcher should log when using deprecated settings.

Mapping::
- Put mapping operations must update metadata of all types.
- Fix serialization of `search_analyzer`.
- Reuse metadata mappers for dynamic updates.
- Fix MapperService#searchFilter(...)
- MapperService: check index.mapper.dynamic during index creation

Network::
- Only accept transport requests after node is fully initialized

Packaging::
- Fix waiting for pidfile
- Enable es_include at init

Parent/Child::
- Check that parent_type in Has Parent Query has child types
- Has child query forces default similarity

Percolator::
- Don't replace found fields if map unmapped fields as string is
  enabled
- mpercolate api should serialise start time

Plugin Cloud Azure::
- Fix calling ensureOpen() on the wrong directory

Plugin Discovery GCE::
- Add setFactory permission to GceDiscoveryPlugin

Query DSL::
- Fix FunctionScore equals/hashCode to include minScore and
  friends

REST::
- Remove detect_noop from REST spec
- Make text parsing less lenient.

Recovery::
- Try to renew sync ID if `flush=true` on forceMerge
- sync translog to disk after recovery from primary

Reindex API::
- Properly register reindex status
- Be much much much careful about context
- Make search failure cause rest failure

Scripting::
- Check that _value is used in aggregations script before setting
  value to specialValue
- Add permission to access sun.reflect.MethodAccessorImpl from
  Groovy scripts
- Fixes json generation for scriptsort w/ deprecated params
- Security permissions for Groovy closures

Search::
- Do not apply minimum_should_match on auto generated boolean
  query if the coordination factor is disabled.
- Do not apply minimum-should-match on a boolean query if the
  coords are disabled
- Fix blended terms take 2

Settings::
- TransportClient should use updated setting for initialization of
  modules and service

Snapshot/Restore::
- Prevent closing index during snapshot restore
- Add node version check to shard allocation during restore

Stats::
- Fix recovery translog stats totals when recovering from store
- Fix calculation of age of pending tasks

Task Manager::
- Fix TaskId#isSet to return true when id is set and not other way
  around
- Don't wait for completion of list tasks tasks when
  wait_for_completion flag is set

Translog::
- Call ensureOpen on Translog#newView() to prevent
  IllegalStateException
- Make sure IndexShard is active during recovery so it gets its
  fair share of the indexing buffer
- Avoid circular reference in exception
- Initialize translog before scheduling the sync to disk
- Catch tragic even inside the checkpoint method rather than on
  the caller side
- Never delete translog-N.tlog file when creation fails
- Close recovered translog readers if createWriter fails

Tribe Node::
- Passthrough environment and network settings to tribe client
  nodes
- Tribe node: pass path.conf to inner tribe clients

=== Regressions

Analysis::
- Add PathHierarchy type back to path_hierarchy tokenizer for
  backward compatibility with 1.x

Plugin Cloud Azure::
- Fix Unknown [repository] type [azure] error with 2.2.0

REST::
- Don't return all indices immediately if count of expressions >1
  and first expression is *

=== Upgrades

Core::
- Upgrade to Lucene 5.5.0 official release
- Upgrade to lucene 5.5.0-snapshot-850c6c2
- Upgrade to lucene 5.5.0-snapshot-4de5f1d
- Update lucene to r1725675
- Upgrade to lucene-5.5.0-snapshot-1721183.

Plugin Cloud Azure::
- Upgrade Azure Storage client to 4.0.0

Plugin Discovery Azure::
- Upgrade azure SDK to 0.9.3

Scripting::
- Upgrade groovy dependency in lang-groovy module to version 2.4.6


== 2.2.1 Release Notes

=== Enhancements

Cluster::
- Shard state action request logging

Core::
- Avoid cloning MessageDigest instances

Exceptions::
- Add Exception class name to message in
  `NotSerializableExceptionWrapper`

Network::
- Add additional fallback to http.publish_port and restrict
  fallback to transport.publish_port

Packaging::
- Windows service: Use JAVA_HOME environment variable in registry

Scripting::
- Class permission for Groovy references

Settings::
- Log warning if max file descriptors too low

=== Bug fixes

Aggregations::
- Set meta data for pipeline aggregations

Aliases::
- Fix _aliases filter and null parameters

Bulk::
- Bulk api: fail deletes when routing is required but not
  specified

Inner Hits::
- Query and top level inner hit definitions shouldn't overwrite
  each other

Logging::
- Add missing index name to indexing slow log

Parent/Child::
- Check that parent_type in Has Parent Query has child types
- Has child query forces default similarity

Percolator::
- Don't replace found fields if map unmapped fields as string is
  enabled

Plugin Cloud Azure::
- Fix calling ensureOpen() on the wrong directory

Plugin Discovery GCE::
- Add setFactory permission to GceDiscoveryPlugin

Query DSL::
- Use MappedFieldType.termQuery to generate simple_query_string
  queries

REST::
- Remove detect_noop from REST spec

Scripting::
- Add permission to access sun.reflect.MethodAccessorImpl from
  Groovy scripts

Snapshot/Restore::
- Add node version check to shard allocation during restore

Stats::
- Fix recovery translog stats totals when recovering from store

Tribe Node::
- Passthrough environment and network settings to tribe client
  nodes

=== Regressions

Plugin Cloud Azure::
- Fix Unknown [repository] type [azure] error with 2.2.0

=== Upgrades

Plugin Repository Azure::
- Upgrade Azure Storage client to 4.0.0


== 2.2.0 Release Notes

=== Breaking changes

Index APIs::
- Change Field stats API response to include both number and
  string based min and max values

Scripting::
- Filter classes loaded by scripts
- Lock down javascript and python script engines better

=== Deprecations

Java API::
- Deprecate the count api in favour of search with size 0
- Deprecates defaultRescoreWindowSize

Plugin Discovery Multicast::
- Deprecate the discovery-multicast plugin

Query DSL::
- Deprecate the `missing` query
- Deprecate NotQueryBuilder

Search::
- Deprecate _search/exists in favour of regular _search with size
  0 and terminate_after 1

=== New features

Geo::
- Add CONTAINS relation to geo_shape query
- Add support for Lucene 5.4 GeoPoint queries
- Add GeoPointV2 Field Mapping

Network::
- Allow binding to multiple addresses.

Plugin Analysis Phonetic::
- Add support for `daitch_mokotoff`

Plugin Repository S3::
- Add support for S3 storage class

Plugins::
- Decentralize plugin security

Search::
- Add query profiler

=== Enhancements

Aliases::
- Add support to _aliases endpoint to specify multiple indices and
  aliases in one action

Allocation::
- Simplify delayed shard allocation
- Add cluster-wide setting for total shard limit
- Early terminate high disk watermark checks on single data node
  cluster

Analysis::
- Add detail response support for _analyze API

CAT API::
- Add sync_id to cat shards API
- Add duration field to /_cat/snapshots
- Add cat API for repositories and snapshots
- Adds disk used by indices to _cat/allocation

Cluster::
- Safe cluster state task notifications
- Reroute once per batch of shard failures
- Add callback for publication of new cluster state
- Split cluster state update tasks into roles
- Use general cluster state batching mechanism for shard started
- Use general cluster state batching mechanism for shard failures
- Set an newly created IndexShard's ShardRouting before exposing
  it to operations
- Uniform exceptions for TransportMasterNodeAction

Core::
- If we can't get a MAC address for the node, use a dummy one
- Simplify shard inactive logging
- Simplify IndexingMemoryController#checkIdle
- IndexingMemoryController should not track shard index states
- Make PerThreadIDAndVersionLookup per-segment
- Verify Checksum once it has been fully written to fail as soon
  as possible

Discovery::
- Don't allow nodes with missing custom meta data to join cluster

Exceptions::
- Deduplicate cause if already contained in shard failures
- Give a better exception when running from freebsd jail without
  enforce_statfs=1
- Make root_cause of field conflicts more obvious

Fielddata::
- Update GeoPoint FieldData for GeoPointV2

Geo::
- Geo: Fix toString() in GeoDistanceRangeQuery and GeoPolygonQuery
- Enable GeoPointV2 with backward compatibility testing
- Refactor Geo utilities to Lucene 5.4

Index APIs::
- Add option to disable closing indices

Index Templates::
- Disallow index template pattern to be the same as an alias name

Internal::
- Simplify the Text API.
- Simpler using compressed oops flag representation
- Info on compressed ordinary object pointers
- Explicitly log cluster state update failures
- Use transport service to handle RetryOnReplicaException to
  execute replica action on the current node
- Make IndexShard operation be more explicit about whether they
  are expected to run on a primary or replica
- Avoid trace logging allocations in
  TransportBroadcastByNodeAction
- Only trace log shard not available exceptions
- Transport options should be immutable
- Fix dangling comma in ClusterBlock#toString
- Improve some logging around master election and cluster state
- Add System#exit(), Runtime#exit() and Runtime#halt() to
  forbidden APIs
- Simplify XContent detection.
- Add threadgroup isolation.
- Cleanup plugin security
- Add workaround for JDK-8014008
- Refactor retry logic for TransportMasterNodeAction
- Remove MetaDataSerivce and it's semaphores
- Cleanup IndexMetaData
- TransportNodesAction shouldn't hold on to cluster state
- Add SpecialPermission to guard exceptions to security policy.
- Clean up scripting permissions.
- Factor groovy out of core into lang-groovy
- Factor expressions scripts out to lang-expression plugin

Java API::
- TransportClient: Add exception when using plugin.types, to help
  migration to addPlugin
- Align handling of interrupts in BulkProcessor
- BulkProcessor backs off exponentially by default
- Add java API for synced flush
- Allow to get and set ttl as a time value/string
- Reject refresh usage in bulk items when using and fix NPE when
  no source
- BulkProcessor retries after request handling has been rejected
  due to a full thread pool

Logging::
- Add circuit breaker name to logging package
- Log cluster health status changes
- Map log-level 'trace' to JDK-Level 'FINEST'

Mapping::
- Make mapping serialization more robust.
- Make mappings immutable.
- Make MappedFieldType.checkTypeName part of
  MappedFieldType.checkCompatibility.
- throw exception if a copy_to is within a multi field
- Register field mappers at the node level.

Network::
- only allow code to bind to the user's configured port
  numbers/ranges
- Port of publishAddress should match port of corresponding
  boundAddress

Packaging::
- Default standard output to the journal in systemd
- Use egrep instead of grep -E for Solaris
- punch thru symlinks when loading plugins/modules
- set ActiveProcessLimit=1 on windows
- set RLIMIT_NPROC = 0 on bsd/os X systems.
- Drop ability to execute on Solaris
- Packaging: change permissions/ownership of config dir
- Release: Fix package repo path to only consist of major version
- Nuke ES_CLASSPATH appending, JarHell fail on empty classpath
  elements
- Get lang-javascript, lang-python, securemock ready for script
  refactoring
- Remove some bogus permissions only needed for tests.
- Remove java.lang.reflect.ReflectPermission
  "suppressAccessChecks"

Plugin Cloud AWS::
- Add support for proxy authentication for s3 and ec2

Plugin Cloud Azure::
- Add timeout settings (default to 5 minutes)
- Add support for secondary azure storage account

Plugin Cloud GCE::
- Adding backoff from retries on GCE errors
- Add `_gce_` network host setting

Plugin Discovery EC2::
- Add ap-northeast-2 (seoul) endpoints for EC2 discovery and S3
  snapshots
- Adding US-Gov-West
- Improved building of disco nodes

Plugin Mapper Attachment::
- Backport mapper-attachments plugin to 2.x

Plugin Repository S3::
- Add aws canned acl

Plugins::
- Expose http.type setting, and collapse al(most all) modules
  relating to transport/http
- Ban RuntimePermission("getClassLoader")
- Add nicer error message when a plugin descriptor is missing
- Don't be lenient in PluginService#processModule(Module)
- Check "plugin already installed" before jar hell check.
- Plugin script to set proper plugin bin dir attributes
- Plugin script to set proper plugin config dir attributes

Query DSL::
- Allow CIDR notation in query string query

REST::
- Make XContentGenerator.writeRaw* safer.
- Filter path refactoring

Recovery::
- Handle cancel exceptions on recovery target if the cancel comes
  from the source
- Decouple routing and primary operation logic in
  TransportReplicationAction

Scripting::
- Add property permissions so groovy scripts can serialize json
- Remove ScriptEngineService.unwrap.
- Remove ScriptEngineService.execute.

Search::
- Support * wildcard to retrieve stored fields in the 'fields'
  option
- Caching Weight wrappers should propagate the BulkScorer.
- fix numerical issue in function score query

Snapshot/Restore::
- Support wildcards for getting repositories and snapshots
- Add ignore_unavailable parameter to skip unavailable snapshot

Stats::
- Add system CPU percent to OS stats
- Pull Fields instance once from LeafReader in completion stats
- Add os.allocated_processors stats

Top Hits::
- Put method addField on TopHitsBuilder

Translog::
- Check for tragic event on all kinds of exceptions not only ACE
  and IOException

Tribe Node::
- Tribe nodes should apply cluster state updates in batches

=== Bug fixes

Aggregations::
- Filter(s) aggregation should create weights only once.
- Make `missing` on terms aggs work with all execution modes.
- Run pipeline aggregations for empty buckets added in the Range
  Aggregation
- [Children agg] fix bug that prevented all child docs from being
  evaluated
- Correct typo in class name of StatsAggregator
- Fix significant terms reduce for long terms
- Pass extended bounds into HistogramAggregator when creating an
  unmapped aggregator
- Added correct generic type parameter on ScriptedMetricBuilder

Aliases::
- Check lenient_expand_open after aliases have been resolved

Allocation::
- Prevent peer recovery from node with older version
- Fix calculation of next delay for delayed shard allocation
- Take ignored unallocated shards into account when making
  allocation decision
- Only allow rebalance operations to run if all shard store data
  is available
- Delayed allocation can miss a reroute
- Check rebalancing constraints when shards are moved from a node
  they can no longer remain on

Bulk::
- Do not release unacquired semaphore

CAT API::
- Properly set indices and indicesOptions on subrequest made by
  /_cat/indices

CRUD::
- Throw exception if content type could not be determined in
  Update API

Cluster::
- Only fail the relocation target when a replication request on it
  fails
- Handle shards assigned to nodes that are not in the cluster
  state
- Bulk cluster state updates on index deletion

Core::
- BitSetFilterCache duplicates its content.
- Limit the max size of bulk and index thread pools to bounded
  number of processors
- AllTermQuery's scorer should skip segments that never saw the
  requested term
- Include root-cause exception when we fail to change shard's
  index buffer
- Restore thread interrupt flag after an InterruptedException
- Use fresh index settings instead of relying on @IndexSettings
- Record all bytes of the checksum in VerifyingIndexOutput
- When shard becomes active again, immediately increase its
  indexing buffer
- Close TokenStream in finally clause

Engine::
- Never wrap searcher for internal engine operations

Exceptions::
- Fix ensureNodesAreAvailable's error message

Fielddata::
- Don't cache top level field data for fields that don't exist

Geo::
- Geo: Allow numeric parameters enclosed in quotes for
  'geohash_grid' aggregation

Highlighting::
- Fix spans extraction to not also include individual terms.

Index APIs::
- Field stats: Index constraints should remove indices in the
  response if the field to evaluate is empty
- Field stats: Fix NPE for index constraint on empty index
- Field stats: Added `format` option for index constraints
- Restore previous optimize transport action name for bw comp
- Forbid index name `.` and `..`

Internal::
- Log uncaught exceptions from scheduled once tasks
- Make sure the remaining delay of unassigned shard is updated
  with every reroute
- Throw a meaningful error when loading metadata and an alias and
  index have the same name
- fixup issues with 32-bit jvm
- Failure to update the cluster state with the recovered state
  should make sure it will be recovered later
- Properly bind ClassSet extensions as singletons
- Streamline top level reader close listeners and forbid general
  usage
- Gateway: a race condition can prevent the initial cluster state
  from being recovered
- Verify actually written checksum in VerifyingIndexOutput
- Remove all setAccessible in tests and forbid
- Remove easy uses of setAccessible in tests.
- Ban setAccessible from core code, restore monitoring stats under
  java 9

Logging::
- Settings in log config file should not overwrite custom
  parameters
- Plugin cli tool should not create empty log files

Mapping::
- Fix MapperService#searchFilter(...)
- Fix initial sizing of BytesStreamOutput.
- MetaDataMappingService should call MapperService.merge with the
  original mapping update.
- Fix copy_to when the target is a dynamic object field.
- Only text fields should accept analyzer and term vector
  settings.
- Mapper parsers should not check for a `tokenized` property.
- Validate that fields are defined only once.
- Check mapping compatibility up-front.
- Don't treat _default_ as a regular type.
- Don't ignore mapping merge failures.
- Treat mappings at an index-level feature.
- Multi field names may not contain dots
- Mapping: Allows upgrade of indexes with only search_analyzer
  specified

Packaging::
- Fix Windows service installation failure
- fix command line options for windows bat file
- Handle system policy correctly
- Startup script exit status should catch daemonized startup
  failures

Plugin Cloud AWS::
- Discovery-ec2 plugin should check `discovery.type`

Plugin Delete By Query::
- Fix Delete-by-Query with Shield
- Delete by query to not wrap the inner query into an additional
  query element

Plugin Mapper Attachment::
- Fix toXContent() for mapper attachments field

Plugin Repository S3::
- Hack around aws security hole of accessing sun.security.ssl, s3
  repository works on java 9 again

Plugins::
- Fix plugin list command error message
- Parse Java system properties in plugin.bat
- PluginManager: Dont leave leftover files on unsuccessful
  installs
- Fix HTML response during redirection

Query DSL::
- Fix FunctionScore equals/hashCode to include minScore and
  friends
- Min should match greater than the number of optional clauses
  should return no result
- Return a better exception message when `regexp` query is used on
  a numeric field

REST::
- Throw exception when trying to write map with null keys
- XContentFactory.xContentType: allow for possible UTF-8 BOM for
  JSON XContentType
- Restore support for escaped '/' as part of document id
- Add missing REST spec for `detect_noop`
- Expose nodes operation timeout in REST API
- Ensure XContent is consistent across platforms

Recovery::
- sync translog to disk after recovery from primary
- CancellableThreads should also treat ThreadInterruptedException
  as InterruptedException

Scripting::
- Security permissions for Groovy closures

Search::
- Fix NPE when a segment with an empty cache gets closed.
- Fix the quotes in the explain message for a script score
  function without parameters

Settings::
- TransportClient should use updated setting for initialization of
  modules and service

Shadow Replicas::
- Don't pull translog from shadow engine

Snapshot/Restore::
- Snapshot restore and index creates should keep index settings
  and cluster blocks in sync
- Snapshot restore operations throttle more than specified
- Fix blob size in writeBlob() method

Stats::
- Fix calculation of age of pending tasks
- serialize os name, arch and version too
- Add extra validation into `cluster/stats`
- Omit current* stats for OldShardStats

Translog::
- Make sure IndexShard is active during recovery so it gets its
  fair share of the indexing buffer
- Avoid circular reference in exception
- Initialize translog before scheduling the sync to disk
- Translog base flushes can be disabled after replication
  relocation or slow recovery
- Catch tragic even inside the checkpoint method rather than on
  the caller side
- Never delete translog-N.tlog file when creation fails
- Close recovered translog readers if createWriter fails
- Fail and close translog hard if writing to disk fails
- Prevent writing to closed channel if translog is already closed
- Don't delete temp recovered checkpoint file if it was renamed
- Translog recovery can repeatedly fail if we run out of disk

Tribe Node::
- Tribe node: pass path.conf to inner tribe clients
- Fix tribe node to load config file for internal client nodes

=== Regressions

Analysis::
- Add PathHierarchy type back to path_hierarchy tokenizer for
  backward compatibility with 1.x

Internal::
- Deduplicate concrete indices after indices resolution

Plugin Cloud Azure::
- Filter cloud azure credentials

Query DSL::
- RangeQueryParser should accept `_name` in inner field

=== Upgrades

Core::
- Upgrade to lucene-5.4.1.
- Upgrade to lucene-5.4.0.
- Upgrade Lucene to 5.4.0-snapshot-1715952
- Upgrade Lucene to 5.4.0-snapshot-1714615
- Upgrade to lucene-5.4.0-snapshot-1712973.
- update to lucene-5.4.x-snapshot-1711508
- Upgrade to lucene-5.4-snapshot-1710880.
- Upgrade to lucene-5.4-snapshot-1708254.
- upgrade lucene to r1702265
- Upgrade master to lucene 5.4-snapshot r1701068

Geo::
- Update to spatial4j 0.5 for correct Multi-Geometry

Network::
- Upgrade Netty to 3.10.5.final

Plugin Discovery Azure::
- Update Azure Service Management API to 0.9.0

Plugin Discovery EC2::
- Upgrade to aws 1.10.33

Plugin Lang JS::
- upgrade rhino for plugins/lang-javascript


== 2.1.2 Release Notes

=== Enhancements

Internal::
- Only trace log shard not available exceptions

Plugin Cloud Azure::
- Add timeout settings (default to 5 minutes)

Translog::
- Check for tragic event on all kinds of exceptions not only ACE
  and IOException

=== Bug fixes

Aggregations::
- Make `missing` on terms aggs work with all execution modes.

Aliases::
- Check lenient_expand_open after aliases have been resolved

Allocation::
- Prevent peer recovery from node with older version

Cluster::
- Only fail the relocation target when a replication request on it
  fails

Core::
- BitSetFilterCache duplicates its content.
- Limit the max size of bulk and index thread pools to bounded
  number of processors
- AllTermQuery's scorer should skip segments that never saw the
  requested term

Highlighting::
- Fix spans extraction to not also include individual terms.

Internal::
- Log uncaught exceptions from scheduled once tasks
- Fix ConcurrentModificationException from nodes info and nodes
  stats

Mapping::
- Fix MapperService#searchFilter(...)
- Fix initial sizing of BytesStreamOutput.

Packaging::
- Fix Windows service installation failure
- fix command line options for windows bat file

Query DSL::
- Fix FunctionScore equals/hashCode to include minScore and
  friends

Recovery::
- sync translog to disk after recovery from primary

Stats::
- Fix calculation of age of pending tasks

Translog::
- Make sure IndexShard is active during recovery so it gets its
  fair share of the indexing buffer
- Avoid circular reference in exception
- Initialize translog before scheduling the sync to disk
- Translog base flushes can be disabled after replication
  relocation or slow recovery
- Catch tragic even inside the checkpoint method rather than on
  the caller side
- Never delete translog-N.tlog file when creation fails
- Close recovered translog readers if createWriter fails

Tribe Node::
- Tribe node: pass path.conf to inner tribe clients

=== Regressions

Analysis::
- Add PathHierarchy type back to path_hierarchy tokenizer for
  backward compatibility with 1.x
2016-04-29 10:16:01 +00:00
fhajny
c1b3f4b1fd Update databases/elastisearch to 2.1.1.
elasticsearch 2.1.1
===================

Enhancements

Aggregations
- [Children agg] fix bug that prevented all child docs from being evaluated
Core
- If we can't get a MAC address for the node, use a dummy one
- Simplify shard inactive logging
- Simplify IndexingMemoryController#checkIdle
- IndexingMemoryController should not track shard index states
Index Templates
- Disallow index template pattern to be the same as an alias name
Mapping
- throw exception if a copy_to is within a multi field
- Register field mappers at the node level.

Bug fixes

Index APIs
- Field stats: Index constraints should remove indices in the response
  if the field to evaluate is empty
Internal
- Throw a meaningful error when loading metadata and an alias and index
  have the same name
Mapping
- Multi field names may not contain dots
Search
- Fix NPE when a segment with an empty cache gets closed.
Translog
- Fail and close translog hard if writing to disk fails
- Prevent writing to closed channel if translog is already closed
- Don't delete temp recovered checkpoint file it was renamed
Tribe Node
- Fix tribe node to load config file for internal client nodes

Regressions

Query DSL
- RangeQueryParser should accept _name in inner field


elasticsearch 2.1.0
===================

Breaking changesedit

CRUD
- Default detect_noop to true
Fielddata
- Remove the experimental indices.fielddata.cache.expire
Index APIs
- Add Force Merge API, deprecate Optimize API
Internal
- Forbid changing thread pool types
Java API
- Deprecates defaultRescoreWindowSize
Nested Docs
- If sorting by nested field then the nested_path should always be
  specified
Search
- Limit the size of the result window to a dynamic property
Stats
- The queue_size value should be shown as an integer.

Deprecations

Java API
- Deprecate the count api in favour of search with size 0
Parent/Child
- Deprecate score_type option in favour of the score_mode option
Query DSL
- Deprecate NotQueryBuilder
Search
- Deprecate _search/exists in favour of regular _search with size 0 and
  terminate_after 1
- Deprecate the scan search type.

New features

Aggregations
- Add percentiles_bucket pipeline aggregation
- Add stats_bucket / extended_stats_bucket pipeline aggs
Analysis
- Lithuanian analysis
Geo
- Adds geo_centroid metric aggregator

Enhancements

Allocation
- Add cluster-wide setting for total shard limit
- Early terminate high disk watermark checks on single data node cluster
- Also use PriorityComparator in shard balancer
- Add support for filtering by publish IP address
CAT API
- Add duration field to /_cat/snapshots
- Add cat API for repositories and snapshots
- Adds disk used by indices to _cat/allocation
Core
- Verify Checksum once it has been fully written to fail as soon as
  possible
Exceptions
- Deduplicate cause if already contained in shard failures
- Give a better exception when running from freebsd jail without
  enforce_statfs=1
- Make root_cause of field conflicts more obvious
- Use a dedicated id to serialize EsExceptions instead of it's class name.
- Validate class before cast.
- Improve error message of ClassCastExceptions
Geo
- Refactor geo_point validate* and normalize* for 2.x
Index APIs
- Limit type name length
Index Templates
- Accumulate validation errors when validating index templates
Internal
- Fix dangling comma in ClusterBlock#toString
- Improve some logging around master election and cluster state
- Add workaround for JDK-8014008
- Cleanup IndexMetaData
- More helpful error message on parameter order
- Cleanup InternalClusterInfoService
- Remove and forbid use of com.google.common.base.Throwables
- Remove cyclic dependencies between IndexService and FieldData/BitSet
  caches
- Remove and forbid use of com.google.common.base.Objects
- Remove and forbid use of com.google.common.collect.ImmutableList
- Remove and forbid use of com.google.common.collect.Lists
- Remove unused code from query_string parser and settings
- Consolidate duplicate logic in RoutingTable all*ShardsGrouped
- Turn DestructiveOperations.java into a Guice module.
- Remove CachedDfSource
- Enable indy (invokedynamic) compile flag for Groovy scripts by
  default
Java API
- Prevents users from building a BulkProcessor with a null client
Logging
- Move logging for the amount of free disk to TRACE
Packaging
- Drop ability to execute on Solaris
- Nuke ES_CLASSPATH appending, JarHell fail on empty classpath elements
- improve seccomp syscall filtering
- Block process execution with seccomp on linux/amd64
- Remove JAVA_HOME detection from the debian init script
Plugin Cloud AWS
- Enable S3SignerType
- Remove cloud.account and cloud.key settings
Plugin Cloud GCE
- cloud-gce plugin should check discovery.type
Plugin Discovery EC2
- Adding US-Gov-West
- Improved building of disco nodes
Plugin Repository S3
- Add aws canned acl
Plugins
- Don't be lenient in PluginService#processModule(Module)
- Adds a validation for plugins script to check if java is set
- Plugins: Removed plugin.types
- Improve java version comparison and explicitly enforce a version format
- Output plugin info only in verbose mode
Query DSL
- Internal: simplify filtered query conversion to lucene query
- Remove unsupported rewrite from multi_match query builder
- Remove unsupported rewrite option from match query builder
- Make FunctionScore work on unmapped field with missing parameter
Scripting
- Add property permissions so groovy scripts can serialize json
Scroll
- Optimize sorted scroll when sorting by _doc.
Search
- fix numerical issue in function score query
- Optimize scrolls for constant-score queries.
- Optimize counts on simple queries.
Search Templates
- Adds template support to _msearch resource
Snapshot/Restore
- Simplify the BlobContainer blob writing interface
- Add readonly option for repositories
Stats
- Add os.allocated_processors stats
- Adds stats counter for failed indexing requests

Bug fixes

Aggregations
- Pass extended bounds into HistogramAggregator when creating an
  unmapped aggregator
- Added correct generic type parameter on ScriptedMetricBuilder
- Pipeline Aggregations at the root of the agg tree are now validated
- Estimate HyperLogLog bias via k-NN regression
Allocation
- Fix calculation of next delay for delayed shard allocation
- Take ignored unallocated shards into account when making allocation
  decision
- Only allow rebalance operations to run if all shard store data is
  available
- Delayed allocation can miss a reroute
- Check rebalancing constraints when shards are moved from a node they
  can no longer remain on
CAT API
- Properly set indices and indicesOptions on subrequest made by
  /_cat/indices
CRUD
- Index name expressions should not be broken up
Cluster
- Handle shards assigned to nodes that are not in the cluster state
Core
- Use fresh index settings instead of relying on @IndexSettings
- Fork Lucene PatternTokenizer to apply LUCENE-6814 (closes
- Record all bytes of the checksum in VerifyingIndexOutput
- When shard becomes active again, immediately increase its indexing buffer
- Close TokenStream in finally clause
- LoggingRunnable.run should catch and log all errors, not just Exception?
Exceptions
- Fix ensureNodesAreAvailable's error message
Fielddata
- Don't cache top level field data for fields that don't exist
Geo
- Geo: Allow numeric parameters enclosed in quotes for geohash_grid
  aggregation
- Resync Geopoint hashCode/equals method
- Fix GeoPointFieldMapper to index geohash at correct precision.
Index APIs
- Field stats: Fix NPE for index constraint on empty index
- Field stats: Added format option for index constraints
- Restore previous optimize transport action name for bw comp
- Forbid index name . and ..
Index Templates
- Validate settings specified in index templates at template creation time
Internal
- fix mvn verify on jigsaw with 2.1
- fixup issues with 32-bit jvm
- Failure to update the cluster state with the recovered state should
  make sure it will be recovered later
- Gateway: a race condition can prevent the initial cluster state from
  being recovered
- Verify actually written checksum in VerifyingIndexOutput
- An inactive shard is activated by triggered synced flush
Logging
- Don't log multi-megabyte guice exceptions.
- Moving system property setting to before it can be used
Mapping
- Make _type use doc values
- Mapping: Allows upgrade of indexes with only search_analyzer specified
Packaging
- Handle system policy correctly
- Startup script exit status should catch daemonized startup failures
- Don't let ubuntu try to install its crazy jayatana agent.
Parent/Child
- Remove unnecessary usage of extra index searchers
- Plugin Delete By Query
- Fix Delete-by-Query with Shield
- Delete by query to not wrap the inner query into an additional query
  element
Plugins
- Fix plugin list command error message
- Fix HTML response during redirection
REST
- XContentFactory.xContentType: allow for possible UTF-8 BOM for JSON
  XContentType
- RestUtils.decodeQueryString ignores the URI fragment when parsing
  a query string
Search
- Fix the quotes in the explain message for a script score function
  without parameters
Settings
- ByteSizeValue.equals should normalize units
- Snapshot/Restore
- Snapshot restore and index creates should keep index settings and
  cluster blocks in sync
- Fix blob size in writeBlob() method
Stats
- Add extra validation into cluster/stats
- Omit current* stats for OldShardStats
Translog
- Translog recovery can repeatedly fail if we run out of disk
- Pending operations in the translog prevent shard from being marked
  as inactive

Regressions

Internal
- Deduplicate concrete indices after indices resolution

Upgrades

Core
- Upgrade Lucene to 5.3.1
- Upgrade to lucene-5.3.0.
Geo
- Update to spatial4j 0.5 for correct Multi-Geometry
Internal
- Update to Jackson 2.6.2
Plugin Cloud AWS
- Update AWS SDK version to 1.10.19
Plugin Discovery EC2
- Upgrade to aws 1.10.33
2015-12-31 09:57:31 +00:00
fhajny
eaffcefb7d Update databases/elasticsearch to 2.0.0.
Breaking changes
- Remove option to configure custom config file via CONF_FILE
  or -Des.default.conf

Deprecations
- Deprecate index.analysis.analyzer.default_index in favor
  of index.analysis.analyzer.default.

Enhancements
- Make PerThreadIDAndVersionLookup per-segment
- TransportNodesAction shouldn't hold on to cluster state
- Packaging: change permissions/ownership of config dir
- Release: Fix package repo path to only consist of major version
- Plugin Cloud GCE: Add _gce_ network host setting
- Check "plugin already installed" before jar hell check.
- Plugin script to set proper plugin bin dir attributes
- Plugin script to set proper plugin config dir attributes

Bug fixes
- CRUD: Send response for update request when it timed out
- Engine: Never wrap searcher for internal engine operations
- Fielddata: Add GeoPoint in StreamInput/StreamOutput
- Properly bind ClassSet extensions as singletons
- Streamline top level reader close listeners and forbid
  general usage
- Settings in log config file should not overwrite custom parameters
- Plugin cli tool should not create empty log files
- Mappings: Enforce metadata fields are not passed in documents
- Plugin Cloud AWS: Discovery-ec2 plugin should check discovery.type
- Parse Java system properties in plugin.bat
- PluginManager: Dont leave leftover files on unsuccessful installs
- REST: Restore support for escaped '/' as part of document id
- REST: Add missing REST spec for detect_noop
- REST: Expose nodes operation timeout in REST API
- REST: Ensure XContent is consistent across platforms
- Shadow Replicas: Don't pull translog from shadow engine
- Snapshot restore operations throttle more than specified

Upgrades
- Upgrade Netty to 3.10.5.final

NOT CLASSIFIED
- [DOCS] terminate_after is not experimental anymore
- Remove unused clear(IndexReader) method from IndexFieldData
- changed ben to been
- move render search template methods to cluster admin client
- Docs: Document ES_CLASSPATH removal in breaking changes
- Rewrite native script documentation
- Docs: Update repository docs with new major version structure
- Add a note about shard failure in the api
2015-11-12 15:37:07 +00:00
agc
efd9ad4549 Remove duplicate SHA512 digests that crept in. 2015-11-04 17:41:15 +00:00
agc
d549bff9a5 Add SHA512 digests for distfiles for databases category
Problems found with existing distfiles:
	distfiles/D6.data.ros.gz
	distfiles/cstore0.2.tar.gz
	distfiles/data4.tar.gz
	distfiles/sphinx-2.2.7-release.tar.gz
No changes made to the cstore or mariadb55-client distinfo files.

Otherwise, existing SHA1 digests verified and found to be the same on
the machine holding the existing distfiles (morden).  All existing
SHA1 digests retained for now as an audit trail.
2015-11-03 01:56:09 +00:00
fhajny
ea769cd606 Update databases/elasticsearch to 1.7.3.
Fix the plugin script.

elasticsearch 1.7.3
===================

Enhancements
  Tribe Node:
    TransportNodesAction shouldn't hold on to cluster state

Bug fixes
  Internal:
    - An inactive shard is activated by triggered synced flush
    - Pending operations in the translog prevent shard from being
      marked as inactive
  Mapping:
    - Ensure more specific analyzer is used independent of the mapping order
  REST:
    - Expose nodes operation timeout in REST API
  Snapshot/Restore:
    - Snapshot restore operations throttle more than specified
  Tribe Node:
    - Increment tribe node version on updates

Upgrades
  Network:
    - Upgrade Netty to 3.10.5.final

elasticsearch 1.7.2
===================

Enhancements
  Allocation:
    - Avoid extra reroutes of delayed shards in RoutingService
  Packaging:
    - Shade joda-convert
  Query DSL:
    - Add a check if FieldMappers exists

Bug fixes
  Allocation:
    - Take relocating shard into consideration during awareness allocation
    - Take initializing shards into consideration during awareness allocation
    - Fix messaging about delayed allocation
  Internal:
    - Fix concurrency issue in PrioritizedEsThreadPoolExecutor.
  Nested Docs:
    - Nested query should only use bitset cache for parent filter
  Packaging:
    - Fix upgrade RPM script
  Plugins:
    - Plugin script: Fix ES_HOME with spaces
  Query DSL:
    - Do not track named queries that are null
    - multi_match query applies boosts too many times.
  Recovery:
    - Rethrow exception during recovery finalization even if source is
      not broken
  Snapshot/Restore:
    - Snapshot restore request should accept indices options
  Suggesters:
    - Prevent DirectCandidateGenerator to reuse an unclosed analyzer
2015-10-18 16:02:05 +00:00
fhajny
18ff3771be Update databases/elasticsearch to 1.7.1.
elasticsearch 1.7.1
===================

Deprecations
  Geo:
    Deprecate validate_* and normalize_*

Enhancements
  Logging:
    Add -XX:+PrintGCDateStamps when using GC Logs

Bug fixes
  Aggregations:
    Fix cidr mask conversion issue for 0.0.0.0/0 and add tests
  Core:
    ThreadPools: schedule a timeout check after adding command to queue
  Internal:
    IndicesStore shouldn't try to delete index after deleting a shard
  Plugins:
    Plugin script: Fix ES_HOME with spaces
  Query DSL:
    Fix malformed query generation
    QueryString ignores maxDeterminizedStates when creating a WildcardQuery
    Fix RegexpQueryBuilder#maxDeterminizedStates
  Scripting:
    Consistently name Groovy scripts with the same content
  Search:
    _only_nodes preference parsed incorrectly
    Copy headers from the MLT request before calling the multi-termvectors API
  Settings:
    Add explicit check that we have reached the end of the settings stream
      when parsing settings
    Copy the classloader from the original settings when checking for prompts

elasticsearch 1.7.0
===================

Breaking changes
  Allocation:
    Default delayed allocation timeout to 1m from 0

New features
  Allocation:
    Optional Delayed Allocation on Node leave
  Recovery:
    Add basic recovery prioritization to GatewayAllocator

Enhancements
  Allocation:
    Simplify ShardRouting and centralize move to unassigned
  Cluster:
    Remove scheduled routing
    Reset registeredNextDelaySetting on reroute
    Add Unassigned meta data
  Exceptions:
    Reduce the size of the XContent parsing exception
  Internal:
    Remove reroute with no reassign
    Mark store as corrupted instead of deleting state file on engine failure
  REST:
    Create Snapshot: remove _create from POST path to match PUT
    Add rewrite query parameter to the indices.validate_query API spec
  Search:
    Search preference based on node specification
  Snapshot/Restore:
    Backport to 1.7 - Snapshot info should contain version of elasticsearch
      that created the snapshot
    Add validation of snapshot FileInfo during parsing
  Term Vectors:
    Only load term statistics if required
  Upgrade:
    Upgrade groovy from 2.4.0 to 2.4.4

Bug fixes
  Allocation:
    Shard Started messages should be matched using an exact match
    Reroute after node join is processed
  Core:
    Throw LockObtainFailedException exception when we can't lock
      index directory
    Only clear open search ctx if the index is delete or closed via API
    Workaround deadlock on Codec initialisation
  Discovery:
    ZenDiscovery: #11960 failed to remove eager reroute from node join
  Highlighting:
    Fix exception for plain highlighter and huge terms for Lucene 4.x
  Index APIs:
    Use IndexWriter.hasPendingChanges() to detect if a flush is needed.
  Internal:
    Fix FieldDataTermsFilter.equals.
    Add a null-check for XContentBuilder#field for BigDecimals
  More Like This:
    Fix potentially unpositioned enum
  Packaging:
    Fix endless looping if starting fails
    Create PID_DIR in init.d script
  Percolator:
    Support filtering percolator queries by date using now
    Fail nicely if nested query with inner_hits is used in a percolator query
  Query DSL:
    CommonTermsQuery fix for ignored coordination factor
  Scroll:
    Append the shard top docs in such a way to prevent AOOBE
  Search:
    Free all pending search contexts if index is closed or removed
  Settings:
    Do not prompt for node name twice
  Shadow Replicas:
    Fail engine without marking it as corrupt when recovering on SharedFS
  Snapshot/Restore:
    Add url repository whitelist - backport of #11687 to 1.6 and 1.7
    Improve repository verification failure message
    Aborting snapshot might not abort snapshot of shards in very early
      stages in the snapshot process
    Improve logging of repository verification exceptions.
  Stats:
    Fix wrong reused file bytes in Recovery API reports
    Fix RecoveryState timestamps

Regression
  More Like This:
    Support for deprecated percent_terms_to_match REST parameter

elasticsearch 1.6.1
===================

Breaking changes
  Snapshot/Restore:
    Url repository should respect repo.path for file urls

Enhancements
  Exceptions:
    Reduce the size of the XContent parsing exception
  REST:
    Create Snapshot: remove _create from POST path to match PUT
    Add rewrite query parameter to the indices.validate_query API spec
  Snapshot/Restore:
    Add validation of snapshot FileInfo during parsing
    Add snapshot name validation logic to all snapshot operations
  Term Vectors:
    Only load term statistics if required
  Upgrade:
    Upgrade groovy from 2.4.0 to 2.4.4

Bug fixes
  Core:
    Throw LockObtainFailedException exception when we can't lock
      index directory
    Only clear open search ctx if the index is delete or closed via API
    Workaround deadlock on Codec initialisation
    Consistently add one more maxMerge in ConcurrentMergeSchedulerProvider
  Highlighting:
    Fix exception for plain highlighter and huge terms for Lucene 4.x
  Index APIs:
    Use IndexWriter.hasPendingChanges() to detect if a flush is needed.
  Internal:
    Fix FieldDataTermsFilter.equals.
    Add a null-check for XContentBuilder#field for BigDecimals
    AsyncShardFetch can hang if there are new nodes in cluster state
  Logging:
    Use task's class name if not a TimedPrioritizeRunnable
  More Like This:
    Fix potentially unpositioned enum
  Packaging:
    Fix endless looping if starting fails
    Postrm script should not fail
    Create PID_DIR in init.d script
  Percolator:
    Support filtering percolator queries by date using now
    Fail nicely if nested query with inner_hits is used in a percolator query
  Query DSL:
    CommonTermsQuery fix for ignored coordination factor
    Fix support for _name in some queries
  Scroll:
    Append the shard top docs in such a way to prevent AOOBE
  Search:
    Free all pending search contexts if index is closed or removed
  Settings:
    Do not prompt for node name twice
  Shadow Replicas:
    Return empty CommitID from ShadowEngine#flush
  Snapshot/Restore:
    Add url repository whitelist - backport of #11687 to 1.6 and 1.7
    Improve repository verification failure message
    Aborting snapshot might not abort snapshot of shards in very early
      stages in the snapshot process
    Improve logging of repository verification exceptions.
  Stats:
    Fix wrong reused file bytes in Recovery API reports
    Fix RecoveryState timestamps

Regression
  More Like This:
    Support for deprecated percent_terms_to_match REST parameter
    Add back support for deprectated percent_terms_to_match REST parameter
2015-08-03 11:57:43 +00:00
fhajny
f2ba5c66db Update databases/elasticsearch to 1.6.0
elasticsearch 1.6.0

Breaking changes
- Benchmark api: removed leftovers
- Wildcard field names in highlighting should only return fields that
  can be highlighted
- Remove unsafe options
- Fix FSRepository location configuration

Deprecations
- Deprecate async replication
- Query DSL: deprecate BytesFilterBuilder in favour of WrapperFilterBuilder
- Deprecate async replication
- Deprecate the More-Like-This API in favour of the MLT query
- Deprecate rivers
- Warning in documentation for deprecation of rivers
- Deprecated the thrift and memcached transports
- Deprecate the top_children query
- Plugins: deprecate addQuery methods that are going to be removed in 2.0
- Deprecate Groovy sandbox and related settings
- Deprecate delete-by-query in client/transport/action APIs too
- Deprecate filter option in PhraseSuggester collate

New features
- Add ability to specify a SizeBasedTriggeringPolicy for log configuration
- Bring back numeric_resolution
- API: Add response filtering with filter_path parameter
- Synced flush backport
- Move index sealing terminology to synced flush
- Seal indices for faster recovery
- Add support for fine-grained settings
- Validate API: provide more verbose explanation
- Add ability to prompt for selected settings on startup
- bootstrap.mlockall for Windows (VirtualLock)
- Allow shards on shared filesystems to be recovered on any node
- Add field stats api

For a full changelog see here:

  https://www.elastic.co/downloads/past-releases/elasticsearch-1-6-0

elasticsearch 1.5.2

Security
- Ensure URL expansion only works within the plugins directory

Enhancements
- Only flush for checkindex if we have uncommitted changes
- Update tree_level and precision parameter priorities
- Add merge conflicts to GeoShapeFieldMapper
- pom.xml updates to allow m2e integration to work correctly
- Fix to pom.xml to allow eclipse maven integration using m2e
- Eclipse fixes
- Implement retries for ShadowEngine creation
- Allow rebalancing primary shards on shared filesystems
- Update forbiddenapis to version 1.8

Bug fixes
- Fix _as_string output to only show when format specified
- _default_ mapping should be picked up from index template during
  auto create index
- Correct ShapeBuilder coordinate parser to ignore values in 3rd+ dimension
- Fix hole intersection at tangential coordinate
- Search: FielddataTermsFilter equality is based on hash codes
- Fix possible NPE in InternalClusterService$NotifyTimeout, the future
  field is set from a different thread
- Add missing hashCode method to RecoveryState#File
- Make GeoContext mapping idempotent
- Fixed an equality check in StringFieldMapper.
- Score value is 0 in _explanation with random_score query
- Fix updating templates.
- Analysis: fix ignoring tokenizer settings in SynonymTokenFilterFactory
- ShardTermVectorsService calls docFreq() on unpositioned TermsEnum
- FSTranslog#snapshot() can enter infinite loop

elasticsearch 1.5.1

Deprecations
- Warning in documentation for deprecation of rivers

Enhancements
- Core: also refresh if many deletes in a row use up too much
  version map RAM
- Use static logger name in Engine.java
- service.bat file should explicitly use the Windows find command.
- AbstractBlobContainer.deleteByPrefix() should not list all blobs

Bug fixes
- Core: Lucene merges should run on the target shard during recovery
- Sync translog before closing engine
- Fix validate_* merge policy for GeoPointFieldMapper
- Make sure size=0 works on the inner_hits level.
- Make sure inner hits also work for nested fields defined in object field
- Fix bug where parse error is thrown if a inner filter is used in
  a nested filter/query.
- Fix nested stored field support.
- Bugfix+unittest for unneccesary mapping refreshes caused by unordered
  fielddata settings
- Don't try to send a mapping refresh if there is no master
- Fix _field_names to be disabled on pre 1.3.0 indexes
- Transport: fix racing condition in timeout handling
- Children aggregation: Fix 2 bugs in children agg
- Fix wrong use of currentFieldName outside of a parsing loop
- Avoid NPE during query parsing
- Function score: apply min_score to sub query score if
  no function provided
- Function_score: undo "Remove explanation of query score from functions"
- State: Refactor state format to use incremental state IDs
- Recovery: RecoveryState.File.toXContent reports file length
  as recovered bytes
- Fail shard when index service/mappings fails to instantiate
- Don't reuse source index UUID on restore
- Snapshot/Restore: separate repository registration
- Automatically add "index." prefix to the settings are changed
  on restore...

elasticsearch 1.5.0

Breaking changes
- Aliases: Throw exception if index is null or missing when creating
  an alias
- Benchmark api: removed leftovers
- Resiliency: Throw exception if the JVM will corrupt data
- [ENGINE] Remove full flush / FlushType.NEW_WRITER
- Change behaviour of indices segments api to allow no indices
- Plugins: Don't overwrite plugin configuration when removing/upgrading
  plugins
- [QUERY] Remove lowercase_expanded_terms and locale options
- Recovery: RecoveryState clean up
- Scripting: cleanup ScriptService & friends
- Disable dynamic Groovy scripting by marking Groovy as not sandboxed
- Scripting: Script with _score: remove dependency of DocLookup and scorer

Deprecations
- Deprecate async replication
- Core: deprecate index.fail_on_merge_failure
- Mappings: Deprecate _analyzer and per query analyzers
- Deprecation: MLT Field Query
- Deprecated the thrift and memcached transports
- Core: add deprecation messages for delete-by-query

New features
- New aggregations feature - "PercentageScore" heuristic
  for significant_terms
- significant terms: add scriptable significance heuristic
- Cat API: show open and closed indices in _cat/indices
- Circuit Breakers: Add NoopCircuitBreaker used in NoneCircuitBreakerService
- Shadow replicas on shared filesystems
- MLT Query: Support for artificial documents
- Add time_zone setting for query_string
- Search: add format support for date range filter and queries
- Add min_score parameter to function score query to only match docs
  above this threshold
- Add inner hits to nested and parent/child queries
- Add index.data_path setting
- Term Vectors/MLT Query: support for different analyzers than default
  at the field

For a full changelog see here:

  https://www.elastic.co/downloads/past-releases/elasticsearch-1-5-0
2015-07-07 14:11:59 +00:00
fhajny
0db69ff4d5 Update elasticsearch to 1.4.4
Changes in 1.4.4
================

- Introduce TimedPrioritizedRunnable base class to all commands
  that go into InternalClusterService.updateTasksExecutor
- Ensure that we don't pass negative timeInQueue to writeVLong
- Aggregations: Prevent negative intervals in date_histogram
- Packaging: Add antlr and asm dependencies

Changes in 1.4.3
================

- Disable dynamic Groovy scripting by marking Groovy as not sandboxed.

Aggs:
- Add standard error bounds to extended_stats
- nested agg needs to reset root doc between segments.
- Fix handling of multiple buckets being emitted for the same parent doc
- id in nested aggregation
- In reverse nested aggregation, fix handling of the same child doc id
  being processed multiple times.
- The parent filter of the nested aggregator isn't resolved correctly all
  the time
- post collection the children agg should also invoke that phase on its
  wrapped child aggs.
- Validate the aggregation order on unmapped terms in terms agg.

Allocation:
- Weight deltas must be absolute deltas

Core:
- don't throttle recovery indexing operations
- Fix Store.checkIntegrity() for lucene 3.x index files.
- Don't verify adler32 for lucene 3.x terms dict/terms index.
- Mapping update task back references already closed index shard
- Disable auto gen id optimization
- Verify the index state of concrete indices after alias resolution
- ignore_unavailable shouldn't ignore closed indices
- Terms filter lookup caching should cache values, not filters.

Discovery:
- publishing timeout to log at WARN and indicate pending nodes
- check index uuid when merging incoming cluster state into the local one

Engine:
- back port fix to a potential dead lock when failing engine during
  COMMIT_TRANSLOG flush

Geo:
- Update GeoPolygonFilter to handle polygons crossing the dateline
- GeoPolygonFilter not properly handling dateline and pole crossing
- Removing unnecessary orientation enumerators
- Add optional left/right parameter to GeoJSON
- Feature/Fix for OGC compliant polygons failing with ambiguity
- Correct bounding box logic for GeometryCollection type
- Throw helpful exception for Polygons with holes outside of shell
- GIS envelope validation

Indices API:
- Fix to make GET Index API consistent with docs
- Fix wrong search stats groups

Internal:
- ClusterInfoService should wipe local cache upon unknown exceptions
- Log when upgrade starts and stops
- promptly cleanup updateTask timeout handler
- Avoid unnecessary utf8 conversion when creating ScriptDocValues for a
  string field.

Logging:
- improve logging messages added in
- Better timeout logging on stalled recovery and exception
- add logging around gateway shard allocation

Mapping:
- Throw StrictDynamicMappingException exception
- Include currentFieldName into ObjectMapper errors
- Explicit _timestamp default null is set to now
- Using default=null for _timestamp field creates a index loss on restart
- Reencode transformed result with same xcontent
- serialize doc values settings for _timestamp
- Mapping With a null Default Timestamp Causes NullPointerException on Merge

Nodes Stats:
- Fix open file descriptors count on Windows

Parent/child:
- Fix concurrency issues of the _parent field data.

Percolator:
- Support encoded body as query string param consistently
- Fixed bug when using multi percolate api with routing

Plugins:
- Installation failed when directories are on different file systems
- NPE when plugins dir is inaccessible

Query cache:
- Remove query-cache serialization optimization.
- Queries are never cached when date math expressions are used (including
  exact dates)

Query DSL:
- Expose max_determinized_states in regexp query, filter

Recovery:
- add a timeout to local mapping change check
- flush immediately after a remote recovery finishes (unless there are
  ongoing ones)

REST:
- Add fielddata_fields to the REST spec

Scripting:
- Make script.groovy.sandbox.method_blacklist_patch truly append-only
- Make groovy sandbox method blacklist dynamically additive
- Add explainable script again
- Disallow method pointer expressions in Groovy scripting
- Make _score in groovy scripts comparable

Search:
- Make sure that named filters/ queries defined in a wrapped
  query/filters aren't lost
- Fix paging on strings sorted in ascending order.
- Function score and optional weight : avg score is wrong

Settings:
- Reset TieredMP settings only if the value actually changed
- cluster.routing.allocation.disk.threshold_enabled accepts wrong values

Snapshot status api:
- make sure headers are handed over to inner nodes request

Stats:
- Relax restrictions on filesystem size reporting in DiskUsage

Tribe node:
- remove closed indices from cluster state

Upgrade:
- Change wait_for_completion to default to true
- Fix version check in bytes to upgrade that spans major versions

Windows:
- makes elasticsearch.bat more friendly to automated processes
2015-02-23 12:42:12 +00:00
fhajny
d6fd6dff69 Update elasticsearch to 1.4.2.
Minor enhancements and bugfixes, see release notes for 1.4.1 and 1.4.2:

  http://www.elasticsearch.org/downloads/1-4-1/
  http://www.elasticsearch.org/downloads/1-4-2/
2015-01-21 15:42:50 +00:00