Groovy, JavaScript, and Python languages removededit
The Groovy, JavaScript, and Python scripting languages were deprecated in elasticsearch 5.0 and have now been removed. Use painless instead.
elasticsearch 5.0 에서 Groovy, JavaScript, 그리고 Python scripting language가 deprecate되었고, 이제 제거되었다. 대신 painless를 사용하자.
Native scripts removededit
Native scripts have been removed. Instead, implement a ScriptEngine
.
Native script가 제거되었다. 대신 ScriptEngine
를 구현하자.
Date fields now return datesedit
doc.some_date_field.value
now returns ReadableDateTime
s instead of milliseconds since epoch as a long
. The same is true for doc.some_date_field[some_number]
. Use doc.some_date_field.value.millis
to fetch the milliseconds since epoch if you need it.
이제 doc.some_date_field.value
는 epoch 이후 millisecond를 long
으로 반환하는 대신ReadableDateTime
를 return한다. doc.some_date_field[some_number]
도 마찬가지이다. 그 값이 필요하다면, doc.some_date_field.value.millis
를 사용하자.
Removed access to index internal via the _index
variableedit
The _index
variable has been removed. If you used it for advanced scoring, consider writing a Similarity
plugin.
_index
변수는 제거되었다. score 계산에 사용했다면, Similarity
plugin의 구현을 고려하자.
Script Settingsedit
All of the existing scripting security settings have been removed. Instead they are replaced with script.allowed_types
and script.allowed_contexts
.
기존의 모든 scripting security 설정은 제거되었다. 대신 script.allowed_types
와 script.allowed_contexts
로 대체되었다.
lang
can no longer be specified when using a stored script as part of a requestedit
The lang
variable can no longer be specified as part of a request that uses a stored script otherwise an error will occur. Note that a request using a stored script is different from a request that puts a stored script. The language of the script has already been stored as part of the cluster state and an id
is sufficient to access all of the information necessary to execute a stored script.
lang
변수는 저장된 script를 사용하는 request의 일부로 더 이상 지정할 수 없다. 그렇지 않으면 error가 발생한다. 저장된 script를 사용하는 request는 저장된 script를 put하는 request와 다르다. script의 language는 이미 cluster state의 일부로 저장되어 있으며 id
는 저장된 script를 실행하는 데 필요한 모든 정보에 액세스하기에 충분하다.
'lang` can no longer be used when putting, getting, or deleting a stored scriptedit
Stored scripts can no longer have the lang
parameter specified as part of the url when performing PUT, GET, and DELETE actions on the _scripts/
path. All stored scripts must have a unique id
as the namespace is only id
now and no longer lang
and id
.
저장된 script는 _scripts/
경로에서 PUT, GET, DELETE action을 수행할 때 url의 일부분으로 lang
매개 변수를 더 이상 지정할 수 없다. namespace가 이제는 id
이고, 더 이상 lang
과 id
가 아니기 때문에 모든 저장된 script는 고유한 id
를 가져야 한다.
Stored search template apis removededit
The PUT, GET and DELETE _search/template
apis have been removed. Store search templates with the stored scripts apis instead.
PUT, GET, DELETE _search/template
API는 제거되었다. 대신 stored scripts API와 함께 search template을 저장하자.
For example, previously one might have stored a search template with the following:
예를 들자면, 이전에는 다음처럼 search template을 저장했었다.
PUT /_search/template/custom_template { "query": { "match": { "f1": "{{f1}}" } } }
And instead one would now use the following:
대신, 이제는 다음과 같이 사용해야 한다.
PUT /_scripts/custom_template { "script": { "lang": "mustache", "source": { "query": { "match": { "f1": "{{f1}}" } } } } }
'6.x > 8. Breaking Changes' 카테고리의 다른 글
v6.0-19. Settings changes (0) | 2017.12.20 |
---|---|
v6.0-18. Search and Query DSL changes (0) | 2017.12.20 |
v6.0-16. REST changes (0) | 2017.12.20 |
v6.0-15. Reindex changes (0) | 2017.12.20 |
v6.0-14. Plugins changes (0) | 2017.12.20 |