# Elasticsearch 5.6.0, Unknown setting score while updating with ctx script

**URL:** <https://discuss.elastic.co/t/elasticsearch-5-6-0-unknown-setting-score-while-updating-with-ctx-script/100671>\
**Category:** Elasticsearch\
**Created:** [September 15, 2017, 10:29am UTC](https://discuss.elastic.co/t/elasticsearch-5-6-0-unknown-setting-score-while-updating-with-ctx-script/100671 "2017-09-15T10:29:22Z")\
**Posts on this page:** 3\
**Page:** 1

<div class="post-metadata">

**Author:** ![rinu](https://avatars.discourse-cdn.com/v4/letter/r/85e7bf/32.png) [@rinu](https://discuss.elastic.co/u/rinu)\
**Post date:** [September 15, 2017, 10:29am UTC](https://discuss.elastic.co/t/elasticsearch-5-6-0-unknown-setting-score-while-updating-with-ctx-script/100671/1 "2017-09-15T10:29:22Z")

</div>

On 5.6.0, when updating a field with ctx.\_source.field via inline script using high-level-rest-client, I'm getting unknown source setting error. It should work fine as I'm using "ctx.\_source" as per documentation, not "\_source". So, please help on why I'm facing this issue.

Error : org.elasticsearch.ElasticsearchStatusException: Elasticsearch exception [type=illegal\_argument\_exception, reason=[script] unknown field [source], parser not found]

Code snippet :  
UpdateRequest request = new UpdateRequest(index, type,id);  
request.script(new Script(ScriptType.INLINE, "painless", scriptQuery, paramsField));  
bulkRequest.add(request);  
getHighLevelClient().bulk(bulkRequest);

But via API, it is working fine and field updated successfully when using same script

curl -XPOST '[http://localhost:9200/index/type/id/\_update](http://localhost:9200/index/type/id/_update)' -d '{ "script" : { "inline": "if (ctx.\_source.containsKey("status")) else {ctx.\_source.status=params.status}", "lang": "painless", "params" : { "status":"unpublished"}}}'

---

<div class="post-metadata">

**Author:** ![rinu](https://avatars.discourse-cdn.com/v4/letter/r/85e7bf/32.png) [@rinu](https://discuss.elastic.co/u/rinu)\
**Post date:** [September 15, 2017, 12:19pm UTC](https://discuss.elastic.co/t/elasticsearch-5-6-0-unknown-setting-score-while-updating-with-ctx-script/100671/2 "2017-09-15T12:19:55Z")

</div>

Seems this issue is not with ctx.\_source. but with script builder itself of high-level rest client. I tried search with script where \_source is not used, only \_score and a field is used. Getting the same error. Please help.

Code :  
QueryBuilders.functionScoreQuery(  
ScoreFunctionBuilders.scriptFunction(new Script("\_score \* doc['custom\_weight'].value")))

forms like,

{ "function\_score" : { "script\_score" : { "lang" : "painless", "source" : "\_score \* doc['custom\_weight'].value" } } }

Is the source error related to script\_score.source? Any help is appreciated. Thanks.

---

<div class="post-metadata">

**Author:** ![system](https://us1.discourse-cdn.com/elastic/original/3X/1/a/1ac57faf039f6b580b3f104ef42a2a89e41014de.png) [@system](https://discuss.elastic.co/u/system)\
**Post date:** [October 13, 2017, 12:20pm UTC](https://discuss.elastic.co/t/elasticsearch-5-6-0-unknown-setting-score-while-updating-with-ctx-script/100671/3 "2017-10-13T12:20:15Z")

</div>

This topic was automatically closed 28 days after the last reply. New replies are no longer allowed.
