Karthikeyan
Karthikeyan

Reputation: 2001

ElasticSearch - RestHighLevelClient - listener timeout after waiting for [30000] ms

While indexing 100k doucments am getting listener timeout exception for the below line

IndexResponse response = SearchEngineClient.getInstance2().index(request);

Please find the complete stack trace

Exception in thread "main" java.io.IOException: listener timeout after waiting f
or [30000] ms
        at org.elasticsearch.client.RestClient$SyncResponseListener.get(RestClie
nt.java:663)
        at org.elasticsearch.client.RestClient.performRequest(RestClient.java:22
2)
        at org.elasticsearch.client.RestClient.performRequest(RestClient.java:19
4)
        at org.elasticsearch.client.RestHighLevelClient.performRequest(RestHighL
evelClient.java:443)
        at org.elasticsearch.client.RestHighLevelClient.performRequestAndParseEn
tity(RestHighLevelClient.java:429)
        at org.elasticsearch.client.RestHighLevelClient.index(RestHighLevelClien
t.java:312)
        at com.es.utility.DocumentIndex.main(DocumentIndex.java:255)

Upvotes: 2

Views: 14910

Answers (1)

Hany Sakr
Hany Sakr

Reputation: 2899

Try this, it works with me

RestClientBuilder builder = RestClient.builder(
                new HttpHost(HOST, PORT))
                .setRequestConfigCallback(
                    new RestClientBuilder.RequestConfigCallback() {
                        @Override
                        public RequestConfig.Builder customizeRequestConfig(
                                RequestConfig.Builder requestConfigBuilder) {
                            return requestConfigBuilder
                                .setConnectTimeout(5000)
                                .setSocketTimeout(60000);
                        }
                    }).setMaxRetryTimeoutMillis(60000);

Upvotes: 6

Related Questions