Hi All, 

Any help on this please? Has anyone tried MVEL based scripts that get a 
value out of a map? 

Thanks!
Ravi

On Thursday, 15 May 2014 17:35:52 UTC+1, [email protected] wrote:
>
> Here is my full ES query in python 
>
> res1 = es.search(index="myIndex", body={"query":{ "bool": { "must" : {
> "terms":{ "type.itemid1":wiids  }  }, "must_not" : { "terms" : {
> "type.itemid2":wiids } }  } },"facets":{ "itemid2Stats": {"terms_stats" : 
> { "key_field": "type.itemid2", "value_script":"( iid1=  
> doc['itemid1'].value;r = doc['internalScore'].value * 
> srcVals.containsKey(iid1) ? srcVals.get(iid1): 11; return r )", "params": 
> { "srcVals": sources  }, "size": 1000, "shard_size": 5000 ,"order": "mean"  
> }  } }}, sort=["type.itemid1:desc","type.similarity:desc"], size=1)
>
> and the error i get is:
>
> sort[<custom:"itemid1": 
> org.elasticsearch.index.fielddata.fieldcomparator.LongValuesComparatorSource@64f6e93>!,<custom:"similarity":
>  
> org.elasticsearch.index.fielddata.fieldcomparator.FloatValuesComparatorSource@48e47821>!]:
>  
> Query Failed [Failed to execute main query]]; nested: NullPointerException; 
> }
>
> On Thursday, 15 May 2014 17:26:49 UTC+1, [email protected] wrote:
>>
>> Hi All, 
>>
>> I am trying to run a faceted query with a custom script on the facet 
>> value. I need to pass a "map" of values into the script with params. Below 
>> id my *script*, 
>>
>> "*value_script*":"( iid1= new String(doc['itemid1'].value) ;r = 
>> doc['similarity'].value * srcVals.containsKey(iid1) ? srcVals.get(iid1): -1 
>> ; return r )"
>>
>> For some reason, my *containsKey* returns true but get on the map 
>> results in a *nullpointer* exception. 
>>
>> I pass params as :
>>
>> "*params*": { "srcVals": sources  }
>>
>> Where sources is a python dict. example dict is:
>>
>> {'3058211': '3', '3473092': '4', '3097044': '3', '2491239': '4', 
>> '2371363': '4', '3049884': '5', '2212351': '4', '3064057': '3'}
>>
>> As you can see, i need to get a number associated with some other number. 
>> I pass the association as a param. but accessing the param is returning a 
>> nullpointer. 
>>
>> Thanks!
>> Ravi
>>
>

-- 
You received this message because you are subscribed to the Google Groups 
"elasticsearch" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to [email protected].
To view this discussion on the web visit 
https://groups.google.com/d/msgid/elasticsearch/3e1051d7-c385-4436-b24a-b3183d904818%40googlegroups.com.
For more options, visit https://groups.google.com/d/optout.

Reply via email to