elasticsearch 实体内容对于配置的缓冲区限制[104857600]太长[658121477]

nnvyjq4y  于 8个月前  发布在  ElasticSearch
关注(0)|答案(1)|浏览(89)

对数据量很大的Elastic索引执行Search操作时发生异常。使用RestHighLevelClient以RequestOptions.DEFAULT的形式使用Http方法执行搜索
错误提示:错误是:java.io.IOException:对于配置的缓冲区限制,实体内容太长[658121477][104857600]\n\达特org.elasticsearch.client.RestClient.extractAndWrapCause(RestClient.java:886)
我的客户是:
return null; return new System. out. println(); credentialsProvider.setCredentials(AuthScope.ANY,new UsernamePasswordCredentials(userName,passWord)); RestClientBuilder builder = RestClient.builder(HttpHost.create(host)).setHttpClientConfigCallback(httpClientBuilder -> httpClientBuilder .setDefaultCredentialsProvider(credentialsProvider)); restHighLevelClient = new RestHighLevelClient(builder);

x3naxklr

x3naxklr1#

您可以在HTTP查询中发送的最大字节数在http.max_content_length中配置为104857600(即100mb)。
当你发送六倍的字节(即,658121477),你得到一个例外。您现在有两个选择:
A.您可以增加http.max_content_length设置,但这是有风险的,因为您有可能使集群过载
B.你把你的有效载荷分成6到7个小块,大小为100 MB。

相关问题