Cet article est un article miroir de traduction automatique, veuillez cliquer ici pour accéder à l’article original.

Vue: 9077|Répondre: 0

Elasticsearch:No handler for type [string] declared on field[XX]的解决办法

[Copié le lien]
Publié sur 09/01/2019 10:29:11 | | | |
Raison de l’erreur

{
« error » : {
« root_cause » : [
{
« type » : « mapper_parsing_exception »,
« raison » : « Aucun gestionnaire pour le type [chaîne] déclaré sur le champ [upload_status] »
}
],
« type » : « mapper_parsing_exception »,
« raison » : « Aucun gestionnaire pour le type [chaîne] déclaré sur le champ [upload_status] »
},
« statut » : 400
}


J’utilise Elasticsearch version 6.2.2 et lors de la création de champs selon la documentation de l’école, j’utilise {"type » :"string », « index » :"not_analyzed"}.

Analyse de la cause

Après avoir vérifié l’orthographe, j’ai décidé de vérifier la nouvelle version des fonctionnalités d’Elasticsearch, car j’avais aussi déjà écrasé la méthode d’installation du plugin principal, à cause du problème de version.
Effectivement, Elasticsearch a introduit le texte et le mot-clé de la version 5.X, où le mot-clé est appliqué aux champs non segmentés, et ne peut correspondre exactement qu’en cherchant, auquel cas la chaîne est toujours conservée.

arrivé6.X supprime complètement la chaîneFinir.

À part çaLa valeur de « index » ne peut être qu’une variable booléenne

Solution de contournement

{"type » :"texte »,"index » :faux}

Ainsi, la modification json est la suivante :

Mais il existe de nouvelles erreurs qui sont les suivantes :

{
« error » : {
« root_cause » : [
{
« type » : « illegal_argument_exception »,
« raison » : « Rejet de la mise à jour de la cartographie vers [restraunt] car la correspondance finale aurait plus d’un type : [enregistrement, info] »
}
],
« type » : « illegal_argument_exception »,
« raison » : « Rejet de la mise à jour de la cartographie vers [restraunt] car la correspondance finale aurait plus d’un type : [enregistrement, info] »
},
« statut » : 400
}
Cela est dû à :Un changement majeur dans Elasticsearch 6.x où le mappage n’autorise qu’un seul type。 Les index créés en 5.x avec plusieurs types de correspondance continueront à s’exécuter dans Elasticsearch 6.x comme auparavant. Les types de cartographie seront complètement supprimés dans Elasticsearch 7.0.0.

Après la sortie d’Elasticsearch 7.x, le paramètre dans typeURL devient optionnel. Par exemple, l’indexation des documents ne nécessite plus un type de document

Ressources:

https://github.com/sirensolutions/sentinl/issues/257
https://www.elastic.co/guide/en/ ... moval-of-types.html







Précédent:Chiffrement MD5
Prochain:Comment le code C# fait-il pour que votre ordinateur s’éteigne, redémarre, se déconnecte, se verrouille, s’éteigne...
Démenti:
Tous les logiciels, supports de programmation ou articles publiés par Code Farmer Network sont uniquement destinés à l’apprentissage et à la recherche ; Le contenu ci-dessus ne doit pas être utilisé à des fins commerciales ou illégales, sinon les utilisateurs assumeront toutes les conséquences. Les informations sur ce site proviennent d’Internet, et les litiges de droits d’auteur n’ont rien à voir avec ce site. Vous devez supprimer complètement le contenu ci-dessus de votre ordinateur dans les 24 heures suivant le téléchargement. Si vous aimez le programme, merci de soutenir un logiciel authentique, d’acheter l’immatriculation et d’obtenir de meilleurs services authentiques. En cas d’infraction, veuillez nous contacter par e-mail.

Mail To:help@itsvse.com