Ez a cikk egy tükör gépi fordítás, kérjük, kattintson ide, hogy ugorjon az eredeti cikkre.

Nézet: 9077|Válasz: 0

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

[Linket másol]
Közzétéve 2019. 01. 09. 10:29:11 | | | |
Hiba oka

{
"hiba": {
"root_cause": [
{
"type": "mapper_parsing_exception",
"reason": "Nincs kezelő [string] típusra a [upload_status] mezőn"
}
],
"type": "mapper_parsing_exception",
"reason": "Nincs kezelő [string] típusra a [upload_status] mezőn"
},
"állapot": 400
}


Én a Elasticsearch 6.2.2-es verziót használom, és amikor az iskolai dokumentáció szerint mezőket hozok létre, a {"type":"string","index":"not_analyzed"} kódot használom.

Ok-elemzés

A helyesírás ellenőrzése után úgy döntöttem, hogy megnézem az Elasticsearch új funkcióit, mert korábban már a fejplugin telepítési módszerének gödrébe léptem a verzióprobléma miatt.
Valóban, az Elasticsearch az 5.X-ből vezette be a szöveget és kulcsszót, ahol a kulcsszót nem szegmentáló mezőkre alkalmazzák, és csak kereséskor egyezik pontosan, ekkor a string továbbra is megmarad.

megérkezettA 6.X teljesen eltávolítja a húrtBefejez.

Ettől eltekintveAz "index" értéke csak egy boole-változó lehet

Megoldás

{"type":"text","index":false}

Tehát a json módosítás a következő:

De vannak új hibák, amelyek a következők:

{
"hiba": {
"root_cause": [
{
"type": "illegal_argument_exception",
"reason": "Elutasítva a [restraunt] leképezési frissítést, mivel a végső leképezés több mint 1 típust tartalmazna: [rekord, információ]"
}
],
"type": "illegal_argument_exception",
"reason": "Elutasítva a [restraunt] leképezési frissítést, mivel a végső leképezés több mint 1 típust tartalmazna: [rekord, információ]"
},
"állapot": 400
}
Ennek oka:Jelentős változás az Elasticsearch 6.x-ben, ahol a leképezés csak egy típust engedélyez。 Az 5.x-ben létrehozott indexek, amelyekben több leképezési típus van, továbbra is futnak Elasticsearch 6.x-ben a korábbi módon. A leképezési típusokat teljesen eltávolítják az Elasticsearch 7.0.0-ban.

Az Elasticsearch 7.x kiadása után a typeURL paramétere opcionális. Például a dokumentumok indexeléséhez már nem szükséges dokumentumtípus

Erőforrások:

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







Előző:MD5 titkosítás
Következő:Hogyan teszi a C# kód a számítógépedet leállítva, újraindítva, kijelentkezést, zárolást, leállítást...
Lemondás:
A Code Farmer Network által közzétett összes szoftver, programozási anyag vagy cikk kizárólag tanulási és kutatási célokra szolgál; A fenti tartalmat nem szabad kereskedelmi vagy illegális célokra használni, különben a felhasználók viselik az összes következményet. Az oldalon található információk az internetről származnak, és a szerzői jogi vitáknak semmi köze ehhez az oldalhoz. A fenti tartalmat a letöltés után 24 órán belül teljesen törölni kell a számítógépéről. Ha tetszik a program, kérjük, támogassa a valódi szoftvert, vásároljon regisztrációt, és szerezzen jobb hiteles szolgáltatásokat. Ha bármilyen jogsértés történik, kérjük, vegye fel velünk a kapcsolatot e-mailben.

Mail To:help@itsvse.com