Je travaillais sur la recherche élastique et cela fonctionnait parfaitement. Aujourd'hui, je viens de redémarrer mon serveur distant (Ubuntu). Maintenant, je cherche dans mes index, cela me donne cette erreur.
{"error":"SearchPhaseExecutionException[Failed to execute phase [query_fetch], all shards failed]","status":503}
J'ai aussi vérifié la santé. Le statut est rouge. Quelqu'un peut-il me dire quel est le problème.
Il est possible que, lors de votre redémarrage, des fragments ne soient pas récupérés, ce qui fait que le cluster reste rouge.
Si vous frappez:http://<yourhost>:9200/_cluster/health/?level=shards
vous pouvez rechercher des fragments rouges.
J'ai eu des problèmes au redémarrage où des fragments se retrouvent dans un état non récupérable. Ma solution était simplement de supprimer complètement cet index. Ce n'est pas une solution idéale pour tout le monde.
Il est également agréable de visualiser de tels problèmes avec un plugin tel que:
Elasticsearch Head
Si vous rencontrez cette corruption apparente d'index dans un système en cours d'exécution, vous pouvez le contourner en supprimant tous les fichiers nommés segments.gen. C'est à titre consultatif seulement, et Lucene peut récupérer correctement sans cela.
cela fonctionne pour moi.
elasticsearch/config/elasticsearch.yml besoin d'ajouter cette ligne .script.inline: on
script.indexed: on