5.0.0-alpha3.asciidoc 16 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339
  1. [[release-notes-5.0.0-alpha3]]
  2. == 5.0.0-alpha3 Release Notes
  3. Also see <<breaking-changes-5.0>>.
  4. IMPORTANT: This is an alpha release and is intended for _testing purposes only_. Indices created in this version will *not be compatible with Elasticsearch 5.0.0 GA*. Upgrading 5.0.0-alpha3 to any other version is not supported.
  5. [[breaking-5.0.0-alpha3]]
  6. [float]
  7. === Breaking changes
  8. CAT API::
  9. * Row-centric output for _cat/fielddata {pull}18068[#18068] (issue: {issue}10249[#10249])
  10. Inner Hits::
  11. * Drop top level inner hits in favour of inner hits defined in the query dsl {pull}17816[#17816] (issue: {issue}11118[#11118])
  12. Internal::
  13. * Actually bound the generic thread pool {pull}17017[#17017]
  14. Packaging::
  15. * Require /bin/bash in packaging {pull}18259[#18259] (issue: {issue}18251[#18251])
  16. * Remove plugin script parsing of system properties {pull}18207[#18207] (issue: {issue}18140[#18140])
  17. Plugin Delete By Query::
  18. * Remove Delete-By-Query plugin {pull}18516[#18516] (issue: {issue}18469[#18469])
  19. Query DSL::
  20. * Lessen leniency of the query dsl. {pull}18276[#18276]
  21. Scripting::
  22. * Allow only a single extension for a scripting engine {pull}18332[#18332] (issue: {issue}10598[#10598])
  23. * Remove 'sandbox' option for script settings, allow only registering a single language. {pull}18226[#18226] (issues: {issue}10598[#10598], {issue}17114[#17114])
  24. Settings::
  25. * Register `indices.query.bool.max_clause_count` setting {pull}18341[#18341] (issue: {issue}18336[#18336])
  26. * Remove settings and system properties entanglement {pull}18198[#18198] (issue: {issue}18197[#18197])
  27. [[breaking java-5.0.0-alpha3]]
  28. [float]
  29. === Breaking Java changes
  30. Allocation::
  31. * Move parsing of allocation commands into REST and remove support for plugins to register allocation commands {pull}17802[#17802] (issue: {issue}17894[#17894])
  32. Discovery::
  33. * Introduce node handshake {pull}15971[#15971] (issue: {issue}9061[#9061])
  34. Percolator::
  35. * Move the percolator from core to its own module {pull}18511[#18511]
  36. * Remove percolator cache {pull}18434[#18434]
  37. Scripting::
  38. * Remove LeafSearchScript.runAsFloat(): Nothing calls it. {pull}18364[#18364]
  39. Search::
  40. * Refactor of query profile classes to make way for other profile implementations {pull}18370[#18370] (issue: {issue}10538[#10538])
  41. [[feature-5.0.0-alpha3]]
  42. [float]
  43. === New features
  44. Ingest::
  45. * Add a Sort ingest processor {pull}17999[#17999]
  46. * Add date_index_name processor {pull}17973[#17973] (issue: {issue}17814[#17814])
  47. Reindex API::
  48. * Port Delete By Query to Reindex infrastructure {pull}18329[#18329] (issue: {issue}16883[#16883])
  49. Snapshot/Restore::
  50. * Add Google Cloud Storage repository plugin {pull}13578[#13578] (issue: {issue}12880[#12880])
  51. Stats::
  52. * Extend field stats to report searchable/aggregatable fields {pull}17980[#17980] (issue: {issue}17750[#17750])
  53. [[enhancement-5.0.0-alpha3]]
  54. [float]
  55. === Enhancements
  56. Aggregations::
  57. * Rename AggregatorBuilder to AggregationBuilder {pull}18377[#18377] (issue: {issue}18367[#18367])
  58. * Add the ability to use the breadth_first mode with nested aggregations (such as `top_hits`) which require access to score information. {pull}18127[#18127] (issue: {issue}9825[#9825])
  59. * Make significant terms work on fields that are indexed with points. {pull}18031[#18031]
  60. Allocation::
  61. * Limit retries of failed allocations per index {pull}18467[#18467] (issue: {issue}18417[#18417])
  62. * Immutable ShardRouting {pull}17821[#17821]
  63. * Add the shard's store status to the explain API {pull}17689[#17689] (issue: {issue}17372[#17372])
  64. Analysis::
  65. * Core: better error message when analyzer created without tokenizer or… {pull}18455[#18455] (issue: {issue}15492[#15492])
  66. * Move AsciiFolding earlier in FingerprintAnalyzer filter chain {pull}18281[#18281] (issue: {issue}18266[#18266])
  67. CAT API::
  68. * Add node name to Cat Recovery {pull}18187[#18187] (issue: {issue}8041[#8041])
  69. * Add support for documented byte/size units and for micros as a time unit in _cat API {pull}17779[#17779]
  70. Core::
  71. * Log OS and JVM on startup {pull}18557[#18557]
  72. * Add GC overhead logging {pull}18419[#18419]
  73. * Refactor JvmGcMonitorService for testing {pull}18378[#18378]
  74. * Default to server VM and add client VM check {pull}18155[#18155]
  75. * Add system bootstrap checks escape hatch {pull}18088[#18088]
  76. * Avoid sliced locked contention in internal engine {pull}18060[#18060] (issue: {issue}18053[#18053])
  77. Dates::
  78. * Support full range of Java Long for epoch DateTime {pull}18509[#18509] (issue: {issue}17936[#17936])
  79. Discovery::
  80. * Log warning if minimum_master_nodes set to less than quorum {pull}15625[#15625]
  81. Exceptions::
  82. * Make the index-too-old exception more explicit {pull}18438[#18438]
  83. * Add index name in IndexAlreadyExistsException default message {pull}18274[#18274]
  84. Expressions::
  85. * Support geo_point fields in lucene expressions {pull}18096[#18096]
  86. * Add support for .empty to expressions, and some docs improvements {pull}18077[#18077]
  87. Ingest::
  88. * Expose underlying processor to blame for thrown exception within CompoundProcessor {pull}18342[#18342] (issue: {issue}17823[#17823])
  89. * Avoid string concatentation in IngestDocument.FieldPath {pull}18108[#18108]
  90. * add ability to specify multiple grok patterns {pull}18074[#18074] (issue: {issue}17903[#17903])
  91. * add ability to disable ability to override values of existing fields in set processor {pull}17902[#17902] (issue: {issue}17659[#17659])
  92. Inner Hits::
  93. * Change scriptFields member in InnerHitBuilder to set {pull}18092[#18092] (issue: {issue}5831[#5831])
  94. Internal::
  95. * Do not automatically close XContent objects/arrays {pull}18549[#18549] (issue: {issue}18433[#18433])
  96. * Remove use of a Fields class in snapshot responses {pull}18497[#18497]
  97. * Removes multiple toXContent entry points for SnapshotInfo {pull}18494[#18494]
  98. * Removes unused methods in the o/e/common/Strings class {pull}18346[#18346]
  99. * Determine content length eagerly in HttpServer {pull}18203[#18203]
  100. * Consolidate query generation in QueryShardContext {pull}18129[#18129]
  101. * Make reset in QueryShardContext private {pull}18113[#18113]
  102. * Remove Strings#splitStringToArray {pull}18110[#18110]
  103. * Add toString() to GetResponse {pull}18102[#18102]
  104. * ConstructingObjectParser adapts ObjectParser for ctor args {pull}17596[#17596] (issue: {issue}17352[#17352])
  105. Java API::
  106. * Improve adding clauses to `span_near` and `span_or` query {pull}18485[#18485] (issue: {issue}18478[#18478])
  107. * QueryBuilder does not need generics. {pull}18133[#18133]
  108. Mapping::
  109. * Adds a methods to find (and dynamically create) the mappers for the parents of a field with dots in the field name {pull}18106[#18106] (issue: {issue}15951[#15951])
  110. Network::
  111. * Netty request/response tracer should wait for send {pull}18500[#18500]
  112. * Exclude specific transport actions from request size limit check {pull}17951[#17951]
  113. Packaging::
  114. * Don't mkdir directly in deb init script {pull}18503[#18503] (issue: {issue}18307[#18307])
  115. * Increase default heap size to 2g {pull}18311[#18311] (issues: {issue}16334[#16334], {issue}17686[#17686], {issue}18309[#18309])
  116. * Switch init.d scripts to use bash {pull}18308[#18308] (issue: {issue}18259[#18259])
  117. * Switch scripts to use bash {pull}18251[#18251] (issue: {issue}14002[#14002])
  118. * Further simplifications of plugin script {pull}18239[#18239] (issue: {issue}18207[#18207])
  119. * Pass ES_JAVA_OPTS to JVM for plugins script {pull}18140[#18140] (issue: {issue}16790[#16790])
  120. Parent/Child::
  121. * Allow adding additional child types that point to an existing parent type {pull}18446[#18446] (issue: {issue}17956[#17956])
  122. Plugin Lang Painless::
  123. * improve painless whitelist coverage of java api {pull}18533[#18533]
  124. * Definition cleanup {pull}18463[#18463]
  125. * Made def variable casting consistent with invokedynamic rules {pull}18425[#18425]
  126. * Use Java 9 Indy String Concats, if available {pull}18400[#18400] (issue: {issue}18398[#18398])
  127. * Add method overloading based on arity {pull}18385[#18385]
  128. * Refactor WriterUtils to extend ASM GeneratorAdapter {pull}18382[#18382]
  129. * Whitelist expansion {pull}18372[#18372]
  130. * Remove boxing when loading and storing values in "def" fields/arrays, remove boxing onsimple method calls of "def" methods {pull}18359[#18359]
  131. * Some cleanups {pull}18352[#18352]
  132. * Use isAssignableFrom instead of relying on ClassCastException {pull}18350[#18350]
  133. * Build descriptor of array and field load/store in code {pull}18338[#18338]
  134. * Rename the dynamic call site factory to DefBootstrap {pull}18335[#18335]
  135. * Cleanup of DynamicCallSite {pull}18323[#18323]
  136. * Improve exception stacktraces {pull}18319[#18319]
  137. * Make Line Number Available in Painless {pull}18298[#18298]
  138. * Remove input, support params instead {pull}18287[#18287]
  139. * Decouple ANTLR AST from Painless {pull}18286[#18286]
  140. * _value support in painess? {pull}18284[#18284]
  141. * Long priority over Float {pull}18282[#18282]
  142. * _score as double, not float {pull}18277[#18277]
  143. * Add 'ctx' keyword to painless. {pull}18264[#18264]
  144. * Painless doc access {pull}18262[#18262]
  145. * Retrieve _score directly from Scorer {pull}18258[#18258]
  146. * Implement needsScore() correctly. {pull}18247[#18247]
  147. * Add synthetic length property as alias to Lists, so they can be used like arrays {pull}18241[#18241]
  148. * Use better typing for dynamic method calls {pull}18234[#18234]
  149. * Array load/store and length with invokedynamic {pull}18232[#18232] (issue: {issue}18201[#18201])
  150. * Switch painless dynamic calls to invokedynamic, remove perf hack/cheat {pull}18201[#18201]
  151. * Add fielddata accessors (.value/.values/.distance()/etc) {pull}18169[#18169]
  152. * painless: optimize/simplify dynamic field and method access {pull}18151[#18151]
  153. * Painless: Single-Quoted Strings {pull}18150[#18150]
  154. Plugins::
  155. * Add plugin information for Verbose mode {pull}18051[#18051] (issue: {issue}16375[#16375])
  156. Query DSL::
  157. * Enforce MatchQueryBuilder#maxExpansions() to be strictly positive {pull}18464[#18464]
  158. * Don't allow `fuzziness` for `multi_match` types `cross_fields`, `phrase` and `phrase_prefix` {pull}18322[#18322] (issues: {issue}6866[#6866], {issue}7764[#7764])
  159. REST::
  160. * CORS handling triggered whether User-Agent is a browser or not {pull}18283[#18283]
  161. * Add semicolon query string parameter delimiter {pull}18186[#18186] (issue: {issue}18175[#18175])
  162. * Enable HTTP compression by default with compression level 3 {pull}18066[#18066] (issue: {issue}7309[#7309])
  163. Reindex API::
  164. * Make Reindex cancellation tests more uniform {pull}18498[#18498]
  165. * Makes DeleteByQueryRequest implements IndicesRequest {pull}18466[#18466]
  166. * Switch default batch size for reindex to 1000 {pull}18340[#18340]
  167. * Teach reindex to retry on search failures {pull}18331[#18331] (issue: {issue}18059[#18059])
  168. * Remove ReindexResponse in favor of BulkIndexByScrollResponse {pull}18205[#18205]
  169. * Stricter validation of Reindex's requests_per_second {pull}18028[#18028]
  170. Search::
  171. * Introduces GeoValidationMethod to GeoDistanceSortBuilder {pull}18036[#18036]
  172. * Switches from empty boolean query to matchNoDocs {pull}18007[#18007] (issue: {issue}17981[#17981])
  173. * Allow binary sort values. {pull}17959[#17959] (issue: {issue}6077[#6077])
  174. Search Refactoring::
  175. * Removes the now obsolete SearchParseElement implementations {pull}18233[#18233]
  176. Snapshot/Restore::
  177. * Change BlobPath.buildAsString() method {pull}18461[#18461]
  178. * Remove the Snapshot class in favor of using SnapshotInfo {pull}18167[#18167] (issue: {issue}18156[#18156])
  179. Stats::
  180. * Do not return fieldstats information for fields that exist in the mapping but not in the index. {pull}18212[#18212] (issue: {issue}17980[#17980])
  181. * Add whether the shard state fetch is pending to the allocation explain API {pull}18119[#18119] (issue: {issue}17372[#17372])
  182. * Add Failure Details to every NodesResponse {pull}17964[#17964] (issue: {issue}3740[#3740])
  183. * Add I/O statistics on Linux {pull}15915[#15915] (issue: {issue}15296[#15296])
  184. Translog::
  185. * FSync translog outside of the writers global lock {pull}18360[#18360]
  186. [[bug-5.0.0-alpha3]]
  187. [float]
  188. === Bug fixes
  189. Aggregations::
  190. * Fix TimeUnitRounding for hour, minute and second units {pull}18415[#18415] (issue: {issue}18326[#18326])
  191. * Aggregations fix: support include/exclude strings for IP and dates {pull}18408[#18408] (issue: {issue}17705[#17705])
  192. * Fix xcontent rendering of ip terms aggs. {pull}18003[#18003] (issue: {issue}17971[#17971])
  193. * Improving parsing of sigma param for Extended Stats Bucket Aggregation {pull}17562[#17562] (issue: {issue}17499[#17499])
  194. Analysis::
  195. * Add `Character.MODIFIER_SYMBOL` to the list of symbol categories. {pull}18402[#18402] (issue: {issue}18388[#18388])
  196. Bulk::
  197. * Add not-null precondition check in BulkRequest {pull}18347[#18347] (issue: {issue}12038[#12038])
  198. CAT API::
  199. * Expand wildcards to closed indices in /_cat/indices {pull}18545[#18545] (issues: {issue}16419[#16419], {issue}17395[#17395])
  200. Circuit Breakers::
  201. * Free bytes reserved on request breaker {pull}18204[#18204] (issue: {issue}18144[#18144])
  202. Cluster::
  203. * Dangling indices are not imported if a tombstone for the index exists {pull}18250[#18250] (issue: {issue}18249[#18249])
  204. * Fix issue with tombstones matching active indices in cluster state {pull}18058[#18058] (issue: {issue}18054[#18054])
  205. Core::
  206. * Fix concurrency bug in IMC that could cause it to check too infrequently {pull}18357[#18357]
  207. * Iterables.flatten should not pre-cache the first iterator {pull}18355[#18355] (issue: {issue}18353[#18353])
  208. * Avoid race while retiring executors {pull}18333[#18333]
  209. * Don't try to compute completion stats on a reader after we already closed it {pull}18094[#18094]
  210. Highlighting::
  211. * Skip all geo point queries in plain highlighter {pull}18495[#18495] (issue: {issue}17537[#17537])
  212. * Exclude all but string fields from highlighting if wildcards are used… {pull}18183[#18183] (issue: {issue}17537[#17537])
  213. Ingest::
  214. * Pipeline Stats: Fix concurrent modification exception {pull}18177[#18177] (issue: {issue}18126[#18126])
  215. * Validate properties values according to database type {pull}17940[#17940] (issue: {issue}17683[#17683])
  216. Internal::
  217. * Add XPointValues {pull}18011[#18011] (issue: {issue}18010[#18010])
  218. Mapping::
  219. * Make doc_values accessible for _type {pull}18220[#18220]
  220. * Fix and test handling of `null_value`. {pull}18090[#18090] (issue: {issue}18085[#18085])
  221. * Fail automatic string upgrade if the value of `index` is not recognized. {pull}18082[#18082] (issue: {issue}18062[#18062])
  222. Packaging::
  223. * Filter client/server VM options from jvm.options {pull}18473[#18473]
  224. * Preserve config files from RPM install {pull}18188[#18188] (issue: {issue}18158[#18158])
  225. * Fix typo in message for variable setup ES_MAX_MEM {pull}18168[#18168]
  226. * Don't run `mkdir` when $DATA_DIR contains a comma-separated list {pull}17419[#17419] (issue: {issue}16992[#16992])
  227. Percolator::
  228. * Add support for MatchNoDocsQuery in percolator's query terms extract service {pull}18492[#18492]
  229. Plugin Discovery EC2::
  230. * Add TAG_SETTING to list of allowed tags for the ec2 discovery plugin. {pull}18257[#18257]
  231. Plugin Lang Painless::
  232. * Remove Grammar Ambiguities {pull}18531[#18531]
  233. * Remove if/else ANTLR ambiguity. {pull}18428[#18428]
  234. * Fix insanely slow compilation {pull}18410[#18410] (issue: {issue}18398[#18398])
  235. * Fix Bug in Painless Assignment {pull}18379[#18379]
  236. * Fix bracket shortcuts {pull}18263[#18263]
  237. Plugin Repository Azure::
  238. * Fix azure files removal {pull}18451[#18451] (issues: {issue}16472[#16472], {issue}18436[#18436])
  239. REST::
  240. * Do not decode path when sending error {pull}18477[#18477] (issue: {issue}18476[#18476])
  241. * CORS should permit same origin requests {pull}18278[#18278] (issue: {issue}18256[#18256])
  242. Search::
  243. * Fix _only_nodes preferences {pull}18483[#18483] (issues: {issue}12546[#12546], {issue}12700[#12700])
  244. * Speed up named queries. {pull}18470[#18470]
  245. * Fix parsing single `rescore` element in SearchSourceBuilder {pull}18440[#18440] (issue: {issue}18439[#18439])
  246. * Fail queries on not indexed fields. {pull}18014[#18014]
  247. Settings::
  248. * Use object equality to compare versions in IndexSettings {pull}18103[#18103]
  249. * fix exists method for list settings when using numbered setting format {pull}17949[#17949]
  250. Snapshot/Restore::
  251. * Fix race condition in snapshot initialization {pull}18426[#18426] (issue: {issue}18121[#18121])
  252. * Handle indices=["_all"] when restoring a snapshot {pull}18025[#18025]
  253. Stats::
  254. * Add missing builder.endObject() in FsInfo {pull}18443[#18443] (issues: {issue}15915[#15915], {issue}18433[#18433])
  255. Translog::
  256. * Snapshotting and sync could cause a dead lock TranslogWriter {pull}18481[#18481] (issues: {issue}1[#1], {issue}18360[#18360], {issue}2[#2])