2015-10-15 3 views
1

я следующий документ {Ошибка на обновление: org.elasticsearch.ElasticsearchIllegalArgumentException: не удалось выполнить скрипт

"_index" : "Testdb", 
    "_type" : "directUser", 
    "_id" : "123", 
    "_version" : 8, 
    "found" : true, 
    "_source":{"uuid":"123", 
"Email":"[email protected]" 
,"SecondryEmail":"[email protected]" 
,"FirstName":"personFirstNmae" 
,"LastName":"personLastName" 
,"UserStatus":"INACTIVE" 
,"Password":"pwd" 
}} 

я хочу, чтобы обновить ценность LastName поля в вот мой код

var lastname="lname" 

var params:java.util.Map[String,Object] = Maps.newHashMap(); 
params.put("lastname", value); 


val response = client.prepareUpdate("testdb", "directUser", directUserObj.getUuid) 
.setScript("ctx._source.LastName = lastname",ScriptService.ScriptType.INLINE) 
.setScriptParams(params) 
.execute().actionGet(); 

но этот код содержит следующее исключение

org.elasticsearch.ElasticsearchIllegalArgumentException: failed to execute script 
    at org.elasticsearch.action.update.UpdateHelper.prepare(UpdateHelper.java:202) 
    at org.elasticsearch.action.update.TransportUpdateAction.shardOperation(TransportUpdateAction.java:176) 
    at org.elasticsearch.action.update.TransportUpdateAction.shardOperation(TransportUpdateAction.java:170) 
    at org.elasticsearch.action.support.single.instance.TransportInstanceSingleOperationAction$AsyncSingleAction$1.run(TransportInstanceSingleOperationAction.java:187) 
    at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142) 
    at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617) 
    at java.lang.Thread.run(Thread.java:745) 
Caused by: org.elasticsearch.script.ScriptException: scripts of type [inline], operation [update] and lang [groovy] are disabled 
    at org.elasticsearch.script.ScriptService.compile(ScriptService.java:285) 
    at org.elasticsearch.script.ScriptService.executable(ScriptService.java:457) 
    at org.elasticsearch.action.update.UpdateHelper.prepare(UpdateHelper.java:196) 
    ... 6 more 

пожалуйста gudie мне, что я буду неправильно, я использую elasticsearch версии 1.6

ответ

3

Это соответствующее сообщение об ошибке:

Caused by: org.elasticsearch.script.ScriptException: scripts of type [inline], operation [update] and lang [groovy] are disabled 

что означает, что вам нужно добавить следующее:

script.engine.groovy.inline.update: on 

к elasticsearch.yml файл и перезапустить узлы.

 Смежные вопросы

  • Нет связанных вопросов^_^