Evite el tiempo de espera en la re-indexación de elasticsearch en Java -- java campo con None campo con timeout campo con reindex campo con resthighlevelclient camp Relacionados El problema

Avoid timeout in Elasticsearch re-indexing in Java


1
vote

problema

Español

por debajo del código devolvió un tiempo de espera en el cliente (elasticsearch Client) cuando el número de registros es mayor.

  CompletableFuture<BulkByScrollResponse> future = new CompletableFuture<>(); client.reindexAsync(request, RequestOptions.DEFAULT, new ActionListener<BulkByScrollResponse>() { @Override public void onResponse(BulkByScrollResponse bulkByScrollResponse) {     future.complete(bulkByScrollResponse); }  @Override public void onFailure(Exception e) {     future.completeExceptionally(e); } }); BulkByScrollResponse response = future.get(10, TimeUnit.MINUTES); // client timeout occured before this timeout   

A continuación se muestra la configuración del cliente.

  connectTimeout: 60000 socketTimeout: 600000 maxRetryTimeoutMillis: 600000   

¿Hay alguna manera de esperar indefinidamente hasta que se complete la reintigración?

Original en ingles

Below code returned a timeout in client (Elasticsearch Client) when number of records are higher.

CompletableFuture<BulkByScrollResponse> future = new CompletableFuture<>(); client.reindexAsync(request, RequestOptions.DEFAULT, new ActionListener<BulkByScrollResponse>() { @Override public void onResponse(BulkByScrollResponse bulkByScrollResponse) {     future.complete(bulkByScrollResponse); }  @Override public void onFailure(Exception e) {     future.completeExceptionally(e); } }); BulkByScrollResponse response = future.get(10, TimeUnit.MINUTES); // client timeout occured before this timeout 

Below is the client config.

connectTimeout: 60000 socketTimeout: 600000 maxRetryTimeoutMillis: 600000 

Is there a way to wait indefinitely until the re-indexing complete?

              
   
   

Lista de respuestas

0
 
vote

No creo que sea una mejor opción para esperar indefinidamente para completar el proceso de reintigüción y dar un valor muy alto para el tiempo de espera, ya que esto no es una solución adecuada y causará más daño que el bien.

En su lugar, debe examinar la respuesta, agregue más registro de depuración para encontrar la causa raíz y dirígete. También eche un vistazo a Mis consejos para mejorar la velocidad de re-indexación , que debe arreglar algunos de sus problemas subyacentes.

 

I don't think its a better choice to wait indefinitely to complete the re-indexing process and give very high value for timeout as this is not a proper fix and will cause more harm than good.

Instead you should examine the response, add more debugging logging to find the root-cause and address them. Also please have a look at my tips to improve re-indexing speed, which should fix some of your underlying issues.

 
 
     
     

Relacionados problema

0  Búsqueda elástica de los campos agregados coincidentes Cómo recuperar el campo determinado  ( Elastic search for the matched aggregated fields how to fetch the certain field ) 
Por ejemplo, si me agrego por debajo de seis campos, entonces necesito que corresponda otro campo del documento, es decir, "ID", que debe aparecer como "Item1...

1  Elasticsearch TransportClient Conexión [Java]  ( Elasticsearch transportclient connection java ) 
Estoy usando elasticsearch en un proyecto Java usando maven : ... <elasticsearch.version>6.7.0</elasticsearch.version> ... <!-- Elasticsearch --> ...

0  Elasticsearch en la cadena JSON (y / o)  ( Elasticsearch in json string and or ) 
Soy nuevo en AWS ELASTICSEARCH, pero necesita crear consultas para buscar los datos de seguimiento con diferentes criterios. Search_metadata (JSON STRING C...

0  Ignore los espacios en blanco al buscar - RESTHOTHLEVELCLIENT JAVA  ( Ignore white spaces when searching resthighlevelclient java ) 
Estoy realizando una búsqueda en un campo que contiene espacios, me gustaría que no se analice es decir, no se divide en gramos y se considere como una sola e...

0  Java Elasticsearch HighleVelRestClient Throw "java.net.socketexception: reinicio de la conexión" intermitentemente  ( Java elasticsearch highlevelrestclient throw java net socketexception connecti ) 
BASIC ENV: docker 19.0.3 elastichsearch 7.6.2 Elasticsearch Java Client 7.6.2 (pertenece a los datos de inicio de arranque de primavera elasticsearch 2...

0  Elasticsearch Cómo identificar qué campos tienen los valores agregados comunes  ( Elasticsearch how to identify which fields have the common aggregated values ) 
Tengo un escenario en el que para los valores agregados del documento que quiero para cada respuesta de agregación, ¿qué ID tiene los valores agregados, por e...

0  elasticsearch cómo el uso no debe consulta de filtro en el interior  ( Elastic search how to use must not query inside filter ) 
tengo a continuación y consulta de búsqueda de documentos cómo uso no debe consulta. escenario está adaptado para la Identificación del cargamento tiene que b...

1  Clasificación de búsqueda elástica basada en la cadena de búsqueda  ( Elastic search sorting based on search string ) 
Basado en el texto buscado por el usuario en la interfaz de usuario, estoy agregando algunos tratamientos de búsqueda más en los criterios de búsqueda. Todo e...

0  Comprimiendo elasticsearch Bulk Solicitud con Java ResthighlevelClient y Bulkprocessor  ( Compressing elasticsearch bulk request with java resthighlevelclient and bulkpro ) 
¿Es posible comprimir la solicitud a granel cuando use Java ResthighlevelClient y Bulkprocessor? Se utiliza el bulkprocessor: final Map<String, Object> s...

0  ¿Cómo usar el bulkprocessor con Webflux?  ( How to use bulkprocessor with webflux ) 
¿Hay alguna forma de usar BulkProcessor con WebFlux? Sé que un buen código para indexAsync() con WebFlux, pero indexAsync() y bulkProcessor no son lo ...




© 2022 respuesta.top Reservados todos los derechos. Centro de preguntas y respuestas reservados todos los derechos