Elasticsearch 1.0.0.RC1
See issues on GitHub
Release Notes
Breaking changes:
You should also check this list of breaking changes when migrating towards elasticsearch 1.0.
- Index API: Don't accept type wrapper in index request #4484
- Query/Index API: Single shards APIs should fail if routing is required. #4506
- Query API: Make doc lookups in queries/filters consistent #4486
- Query API: The
fields
option should always return an array #4542 - Query API: Remove the
text
andfield
queries #4033 - Query API: Improve query/filter parsing strictness #4508
- Query API: Make search APIs consistently accept a
query
param #4074 - Query API: Make
len
parameters consistent across requests #4083 - Query API: Change
ignore_malformed
tomalformed
across requests #4117 - Delete API: Make index name required in DELETE index API #4481
- Boosting: Deprecate document boost #4664
- Returning
_source
data: Filtering shouldn't remove objects unless explicitly excluded #4715 - Percolate API: Change the
sort
boolean option to the sort DSL available in search API #4625 - Percolato API: Rename
score
totrack_scores
#4624 - Analyze API: Support YAML as output format #4311
- REST API: Move
RestRequest
to be an abstract class #4683 - REST API: Change returned
exists
,found
,not_found
fields to always returnfound
#4480 - REST API: Remove hard-coded
"ok" : true
from successful REST responses #4310 - REST API: Replace
ignore_indices
option withignore_unavailable
,expand_wildcards
andallow_no_indices
to be more flexible #4436 - Settings: Remove
engine.robin.refresh_interval
#4706 - Analyzers: Default stopwords list should be
_none_
for all but language-specific analyzers #4699 - Cluster Stats API: Expose min/max open file descriptors #4681
- JVM Stats: Create standard gc and memory_pool names #4661
- Stats API cleanups, removed
clear
andall
flags, made parameters part of the URL - Settings: Allow to disable destructive operations on all indices #4549
- Mapping: Improve
multi_field
syntax #4521 - Geo cleanup: The default unit for measuring distances now is meters everywhere #4515
- Date handling: Dates without year are always set to 1970 now #4451
- Start up mode:
/bin/elasticsearch
command now runs in foreground by default, use-d
to daemonize #4392 - Class renaming: Rename
ElasticSearch*
toElasticsearch*
#4634 - Exceptions: Remove
ElasticsearchInterruptedException
and handle interrupt state correctly. #4712 - Class renaming: Rename
RobinEngine
toLuceneEngine
orDefaultEngine
#4633
New features
- Fedarated search: Tribe Node (experimental) #4708
- Field data: Add field data circuit breaker to stop field data loading from running out of memory #4592
- Field data: Add the ability to disallow field data loading #4431
- Field data: Compress geo-point field data #4386
- Field data: Doc values support for geo points #4207
- Query API: Add support for Lucene's new
SimpleQueryParser
#4159 - Query API: Return Term Count for search results #3920
- Allocation: Do not allocate from nodes with newer lucene version to nodes with older lucene versions #4588
- Index setting: Allow to enable/disable bloom filter loading on an index #4525
- REST API: Add
/_cluster/stats/
endpoint #4460 - Scripting: Make term statistics accessible in scripts #3772
- Highlighting: Allow to combine fields in the
FastVectorHighlighter
#3750 - Packaging: Packages do not start on installation anymore #3722
- Aggregations: Add a
min_doc_count
option to terms and histogram #4662
Enhancements:
- Query API:
has_child
query can yield in wrong results if parent type has nested inner objects #4341 - Query API: Fail
geohash_cell
filter if geohash prefix is not enabled in mapping #4335 - Query API: Renamed top level
filter
param topost_filter
#4119 - Query API: Change geo bounding box format to be consistent with other implementations #4084
- Query API: Rename various
fuzziness/min_similarity
parameters toedit_distance
#4082 - Query API: Expose flags in
simple_query_string
query #4490 - Query API: The
ignore_indices=missing
option should also work for indices query/filter #3428 - Query API:
FastVectorHighlighter
supportsphrase_limit
parameter #4645 - Allocation: Combine
cluster.routing.allocation.disable.*
settings into one #4488 - Allocation: Improve performance shard routing parsing #4459
- Allocation: Improve RoutingNodes API #4458
- Allocation: Deciders should be executed in order, starting at "cheap execution" and "most likely to return no" #4454
- Nodes Stats API: Add a new
usage
metric to CPU stats #4374 - Nodes Stats API: Add IO operation stats to the file system statistics #4344
- Nodes Stats API: Add a total section to file system stats #4343
- Nodes Info API: Add build hash #4570
- Mapping API: Optimize dynamic mapping updates on master by processing latest one per index/node #4373
- Mapping: Allow to disable sending a refresh-mapping to master node (only useful in a high mapping update environment) #4342
- Mapping: Numeric field mappers encode doc values in binary doc values fields #3993
- Mapping: Allow
omit_norms
for_all
field #3734 - Geo: More accurate and fast GeoDistance Function #4498
- Geo: Using Haversine for accurate distance measurement #4596
- Geo: Switched to use
SloppyMathUtils
for calculations #3862 - Aggregations: Improve
RangeAggregator
when used as a sub-aggregator #4550 - Aggregations: Stricter parsing for aggregations #4464
- Aggregations: Support for ordinal-based string aggregations #4350
- Build: Fix compilation on Java 8 and tests that rely on ordering #4510
- Build: Added joda-convert library to dependencies and shading (fixes Scala compilation problems) #4660
- Build: Fail if
bin/elasticsearch
tries to be run from a source tree #2954 - Packaging: Set
vm.max_map_count
in startup scripts #4397 - Settings API: Add internal get index settings api, used by the
/_settings
endpoint #4620 - Settings API: Settings should be rendered in more readable way when
human
flag is set #4140 - Settings: Removed
term_index_interval/divisor
settings #3912 - Field data: Set default for circuit breaker to 80% of the maximum heap #4604
- Field data: Take changes in field data settings on live indices immediately #4430
- Cat API: Add
_cat/aliases
endpoint #4414 - Cat API: Add cache numbers to cat/nodes #4543
- REST API: Added tests for REST layer #4469
- REST API: Expose headers in
HttpRequest
#4609 - Aliases API: Allow
IndicesAdminClient.getAliases()
to return all aliases #4455 - Get field mapping API: Allow field wildcards #4367
- Percolate API: Multi-percolate should respect the
rest.action.multi.allow_explicit_index
setting #4284 - Percolate API: Support postings highlighter #4385
- Bulk API: Response has errors indication + status per item #4002
- Warmer API: Dedicated Norms/Terms warm options in mappings #4079
- Create Index API: Move to new acknowledgement mechanism #4421
- Cluster Management: Evict existing node(s) with the same transport address on node join #4503
- TransportClient: Expose filtered nodes on TransportClient #4571
- Cluster/Index Management:
IndicesLifecycle.Listener
to support listening for any index shard state change #4413 - API generic: Unify default ack timeout to 30 seconds #4395
- Commandline: Allow to provide parameters via getopt long, like
--path.data
#4393 - Plugin manager: Added new
timeout
option #4603 - Cache recycling: Make
PageCacheRecycler
better reuse memory across threads #4647 - Cache recycling: Improving cache recycling #4557
ByteSizeValue
class now supports for TB and PB #4640
Bug fixes:
- Multi data path config can cause a shard to be perceived as corrupted #4674
- Mapping API:
all
field uses wrong setting forterm vectors
#4581 - Mapping API:
all
field might loose configuration on serialization. #4579 - Mapping API:
GeoPointFieldMapper.doXContentBody
doesn't honorincludeDefaults
#4563 - Mapping API: Explicit setting of doc values #4560
- Mapping API: Some mappers are missing from MapperBuilders #4423
- Mapping API: Batch processing mapping updates can cause missed merged mappings when batching multiple types #4410
- Boosting: Fixed
_all
field boosting as it was broken unless very specific conditions were met #4315 - Percolate API: Incorrect results with auto create type. #4415
- Percolate API: Adding
force_source
to support highlighting for Percolate API in stored fields #4348 - Percolate API: Request parsing issue #4325
- Percolator Stats: Expose number of queries #4440
- Query API:
NullPointerException
in bool filter #4685 - Query API: Query String caching could cause
matched_filters
not to work #4361 - Query API: Apply slop correctly if phrase query is wrapped in a filtered query #4356
- Query API: Stop
FastVectorHighlighter
from throwing away some query boosts #4351 - Query API: Named filter and query don't work with parent/child queries #4534
- Query API: Execution of a search request of a local replica could possibly end up in a network thread #4526
- Query API: Search with terms lookup might get stuck while doing a get for the terms #4519
- Bulk API: Disabling
allow_explicit_index
breaks bulk #4668 - Index API: Empty objects are not stored in _source, when an include/exclude list is present #4047
- Suggest API: Term suggester throws Exception, if different analyzsis chains are used across indices #3196
- Index Close API: Closing all indices doesn't work when using wildcard only #4564
- Cluster Health API: Fixed wrong shard count if one of the indices is in RED status #4528
- Settings API: REST endpoint should not take
timeout
andmaster_timeout
as index parameters #4692 - Settings API: Term Vector settings should be treated without affecting each other #4582
- Rest API: Double wildcards in the the index name can cause a request to hang #4610
- Cat API: Fix problems in for local nodes #4572
- Cat API: Fixed
NullPointerException
in/_cat/shards
endpoint when shard isUNASSIGNED
#4544 - Allocation: Don't delete local shard data when its allocated on a node that doesn't exists #4502
- Allocation: Cancel allocation fails to reset the state of the source shard when moving #4457
- Allocation:
BalancedShardAllocator
might trigger unnecessary relocation under rare circumstances #4630 - Allocation: Accidentally overwrote values regardless of if-statement #4390
- Snapshot/Restore API: Snapshots with missing or failed shards could hang on restore operation #4701
- Aggregations: Sorting by sub-aggregation is broken in terms agg #4643
- Aggregations:
FieldDataSource.Bytes.SortedAndUnique
returned wrong hashes #4330 - File based template loading: Template mappings are not loading #4511
- File based template loading: Problem picking up templates in the
config/templates
directory #4411 - License: Fix Elasticsearch License Headers #4636
- Shardrouting:
NullPointerException
inIndexShardRoutingTable.getActiveAttribute
#4589 - Caching: Refresh the
id_cache
if a new child type with_parent
field has been introduced #4568 - Field data: Remove
IndexFieldData.getHighestNumberOfSeenUniqueValues()
#4426 - Shutdown: Resolve potential deadlock state during EsThreadPoolExecutor shutdown #4334