Denne artikel er en spejling af maskinoversættelse, klik venligst her for at springe til den oprindelige artikel.

Udsigt: 9077|Svar: 0

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

[Kopier link]
Opslået på 09/01/2019 10.29.11 | | | |
Fejl årsag

{
"error": {
"root_cause": [
{
"type": "mapper_parsing_exception",
"reason": "Ingen handler for type [streng] erklæret på felt [upload_status]"
}
],
"type": "mapper_parsing_exception",
"reason": "Ingen handler for type [streng] erklæret på felt [upload_status]"
},
"status": 400
}


Jeg bruger Elasticsearch version 6.2.2, og når jeg opretter felter i henhold til skolens dokumentation, bruger jeg {"type":"string","index":"not_analyzed"}.

Årsagsanalyse

Efter at have tjekket stavningen besluttede jeg at tjekke den nye version af Elasticsearch-funktionerne, fordi jeg også tidligere var trådt på grund af installationsmetoden af head-plugin'et på grund af versionsproblemet.
Ganske rigtigt introducerede Elasticsearch tekst og nøgleord fra 5.X, hvor nøgleord anvendes på ikke-segmenteringsfelter og kun kan matche præcist ved søgning, hvor strengen stadig bevares.

ankom6.X fjerner strengen fuldstændigtFinish.

Udover detVærdien af "indeks" kan kun være en boolesk variabel

Workaround

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

Så json-modifikationen er som følger:

Men der er nye fejl, som er som følger:

{
"error": {
"root_cause": [
{
"type": "illegal_argument_exception",
"reason": "Afvisning af mappingopdatering til [restaurant] da den endelige mapping ville have mere end én type: [record, info]"
}
],
"type": "illegal_argument_exception",
"reason": "Afvisning af mappingopdatering til [restaurant] da den endelige mapping ville have mere end én type: [record, info]"
},
"status": 400
}
Dette skyldes:En væsentlig ændring i Elasticsearch 6.x, hvor Mapping kun tillader én type。 Indekser oprettet i 5.x med flere mapping-typer vil fortsat køre i Elasticsearch 6.x som før. Mapping-typer vil blive fuldstændigt fjernet i Elasticsearch 7.0.0.

Efter Elasticsearch 7.x-udgivelsen er parameteren i typeURL valgfri. For eksempel kræver indeksering af dokumenter ikke længere en dokumenttype

Ressourcer:

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







Tidligere:MD5-kryptering
Næste:Hvordan får C#-kode din computer til at lukke ned, genstarte, logge ud, låse, lukke...
Ansvarsfraskrivelse:
Al software, programmeringsmaterialer eller artikler udgivet af Code Farmer Network er kun til lærings- og forskningsformål; Ovenstående indhold må ikke bruges til kommercielle eller ulovlige formål, ellers skal brugerne bære alle konsekvenser. Oplysningerne på dette site kommer fra internettet, og ophavsretstvister har intet med dette site at gøre. Du skal slette ovenstående indhold fuldstændigt fra din computer inden for 24 timer efter download. Hvis du kan lide programmet, så understøt venligst ægte software, køb registrering og få bedre ægte tjenester. Hvis der er nogen overtrædelse, bedes du kontakte os via e-mail.

Mail To:help@itsvse.com