如何访问java.util。无痛脚本(Elasticsearch)中的阵列

发布于 2025-02-13 05:54:27 字数 817 浏览 1 评论 0原文

我正在尝试在一个巨大的数组(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')

根据文档应该可用 https://www.elastic.co/guide/en/elasticsearch/painless/master/master/painless-painless-painless-api-reference-shared.html#_java_util

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 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

物价感观 2025-02-20 05:54:27

BinarySearch可在Collections中获得无痛不同的Java

,因此更改数组 collections 解决了我的问题

binarySearch is available under Collections in painless unlike Java

so changing Arrays to Collections solved my problem

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文