Coercion of boolean fieldsedit
Previously, Elasticsearch recognized the strings true
, false
, on
, off
, yes
, no
, 0
, 1
as booleans. Elasticsearch 6.0 recognizes only the strings true
and false
as booleans and will throw an error otherwise. For backwards compatibility purposes, during the 6.x series the previous coercion rules will continue to work on pre-6.0 indices. This means that you do not need to change affected existing mappings immediately. However, it is not possible to create new indices from existing index templates that violate the strict boolean
coercion rules.
이전에는, Elasticsearch는 true
, false
, on
, off
, yes
, no
, 0
, 1
라는 string을 boolean으로 인식했었다. Elasticsearch 6.0 에서는 true
와 false
만을 boolean으로 인식하고, 그 외에는 error가 발생한다. 이전 버전과의 호환성을 위하여, 6.x 에서, 6.0 이전 indices에서 이 rule은 계속 작동한다. 즉, 영향을 받을 기존의 mapping을 즉시 변경할 필요는 없다. 하지만 엄격한 boolean
rule을 위반하는 기존 index template에서 새로운 index를 생성하는 것은 불가능하다.
The _all
meta field is now disabled by defaultedit
On new mappings, the _all
meta field that contains a copy of the text from each field is now disabled by default. The query_string
and simple_query_string
queries that previously used _all
to search will now check if _all
is enabled/disabled and switch to executing the query across all fields if _all
is disabled. _all
can no longer be configured for indices created with Elasticsearch version 6.0 or later.
새로운 mapping에서, 각 field의 text 복사본을 포함하는 _all
meta field는 기본적으로 disable되어 있다._all
을 search하기 위해 이전에 사용했던 query_string
과 simple_query_string
query는 이제 _all
이 enable/disable되어 있는지 확인하고, _all
이 disable된 경우 모든 field에 대해 query를 실행하도록 바뀐다. Elasticsearch 6.0 이상으로 생성된 index에 대해서는 _all
을 더 이상 설정할 수 없다.
The include_in_all
mapping parameter is now disallowededit
Since the _all
field is now disabled by default and cannot be configured for indices created with Elasticsearch 6.0 or later, the ‘include_in_all` setting is now disallowed for these indices’ mappings.
_all
field는 현재 기본적으로 disable되어 있고, Elasticsearch 6.0 또는 그 이후 버전으로 생성된 index에 대해서는 설정할 수 없으므로, 이제는 이러한 index의 mapping에 대해 include_in_all
설정을 허용하지 않는다.
Unrecognized match_mapping_type
options not silently ignorededit
Previously Elasticsearch would silently ignore any dynamic templates that included a match_mapping_type
type that was unrecognized. An exception is now thrown on an unrecognized type.
이전에는, Elasticsearch는 알 수 없는 match_mapping_type
type을 포함하는 dynamic template을 조용히 무시했다. 이제 unrecognized type의 예외가 발생한다.
Validation of locale
on date fieldsedit
The locale
option of date
fields previously allowed almost any string values, and unrecognized values would simply be ignored. Unrecognized values are now rejected on indices created with Elasticsearch 6.0 or newer.
이전에는, date
field의 locale
option은 거의 모든 string 값을 허용했으며, 인식할 수 없는 값은 단순히 무시되었다. Elasticsearch 6.0 이상으로 생성된 index에서는 인식할 수 없는 값은 거부된다.
'6.x > 8. Breaking Changes' 카테고리의 다른 글
v6.0-13. Percolator changes (0) | 2017.12.20 |
---|---|
v6.0-12. Packaging changes (0) | 2017.12.20 |
v6.0-10. Java API changes (0) | 2017.12.20 |
v6.0-09. Ingest changes (0) | 2017.12.20 |
v6.0-08. Indices changes (0) | 2017.12.20 |