Scripting syntaxedit
The syntax for scripts has been made consistent across all APIs. The accepted format is as follows:
script에 대한 문법은 모든 API에 대해 일관적으로 만들어졌다. 적절한 format은 아래와 같다.
- Inline/Dynamic scripts
- Indexed scripts
- File scripts
For example, an update request might look like this:
예를 들자면, update request는 다음과 같다.
POST my_index/my_type/1/_update { "script": { "inline": "ctx._source.count += val", "params": { "val": 3 } }, "upsert": { "count": 0 } }
A short syntax exists for running inline scripts in the default scripting language without any parameters:
parameter없이 기본 script language에서, inline script를 실행하기 위한 간단한 문법이 있다.
GET _search { "script_fields": { "concat_fields": { "script": "doc['one'].value + ' ' + doc['two'].value" } } }
Scripting settingsedit
The script.disable_dynamic
node setting has been replaced by fine-grained script settings described in Scripting settings.
script.disable_dynamic
이라는 node 설정은 Scripting settings에서 언급했듯이, fine-grained script 설정으로 대체되었다.
Groovy scripts sandboxedit
The Groovy sandbox and related settings have been removed. Groovy is now a non-sandboxed scripting language, without any option to turn the sandbox on.
groovy sandbox와 그것과 연관된 설정은 제거되었다. 이제 groovy는 sandbox를 동작하도록, 어떠한 option도 필요 없는, non-sandboxed script language이다.
Plugins making use of scriptsedit
Plugins that make use of scripts must register their own script context through ScriptModule
. Script contexts can be used as part of fine-grained settings to enable/disable scripts selectively.
script를 활용하는 plugin은 ScriptModule
을 통해 그들 자신의 script context에 등록해야 한다. script context는 script를 선택적으로 활성화/비활성화하기 위하여, fine-grained 설정의 일부로 사용될 수 있다.
'2.X > 8. Breaking Changes' 카테고리의 다른 글
v2.0-08. Aggregation changes (0) | 2017.10.14 |
---|---|
v2.0-09. Parent/Child changes (0) | 2017.10.14 |
v2.0-11. Index API changes (0) | 2017.10.13 |
v2.0-12. Snapshot and Restore changes (0) | 2017.10.13 |
v2.0-13. Plugin and packaging changes (0) | 2017.10.13 |