如何访问java.util。无痛脚本(Elasticsearch)中的阵列
我正在尝试在一个巨大的数组(sorted_keys)上进行二进制搜索 sorted_keys.length = 250,000
my_script = f"""
if (Arrays.binarySearch({sorted_keys}, doc['_meta.key'].value) > 0)) return 0;
return 1;
"""
script = {"script": {"lang": "painless", "source": my_script }}
但是,此脚本给我一个编译错误, elasticsearch7.exceptions.requesterror:requestError(400,'search_phase_execution_exception','compile error')
noreferrer “
I am trying to do a binary search on a huge array (sorted_keys)sorted_keys.length = 250,000
my_script = f"""
if (Arrays.binarySearch({sorted_keys}, doc['_meta.key'].value) > 0)) return 0;
return 1;
"""
script = {"script": {"lang": "painless", "source": my_script }}
However this script gives me a compiling error,elasticsearch7.exceptions.RequestError: RequestError(400, 'search_phase_execution_exception', 'compile error')
According to the docs it should be available
https://www.elastic.co/guide/en/elasticsearch/painless/master/painless-api-reference-shared.html#_java_util
How can I use Arrays.binarySearch in painless?
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
BinarySearch可在
Collections
中获得无痛不同的Java,因此更改
数组
collections 解决了我的问题binarySearch is available under
Collections
in painless unlike Javaso changing
Arrays
toCollections
solved my problem