Subject: CVS commit: pkgsrc/databases/elasticsearch
From: Filip Hajny
Date: 2017-05-11 10:36:30
Message id: 20170511083630.8C516FBE4@cvs.NetBSD.org

Log Message:
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

Files:
RevisionActionfile
1.28modifypkgsrc/databases/elasticsearch/Makefile
1.19modifypkgsrc/databases/elasticsearch/PLIST
1.29modifypkgsrc/databases/elasticsearch/distinfo