-
Notifications
You must be signed in to change notification settings - Fork 25.7k
Closed
Labels
:Data Management/Ingest NodeExecution or management of Ingest Pipelines including GeoIPExecution or management of Ingest Pipelines including GeoIP>enhancementTeam:Data ManagementMeta label for data/management teamMeta label for data/management team
Description
Elastic Cloud 7.5
The lowercase/uppercase ingest processors (and possibly others) do currently not allow to process a field containing an array of values. Given the fact that many aspects in Elasticsearch do not make a difference between single-value fields and array-valued fields, this is a behaviour that I would have expected.
Note that this is different from #51048.
Current workaround: use foreach processor.
POST _ingest/pipeline/_simulate
{
"pipeline": {
"processors": [
{
"lowercase": {
"field": "test"
}
}
]
},
"docs": [
{
"_source": {
"test": [ "FOO", "BAR" ]
}
}
]
}
Result:
{
"docs" : [
{
"error" : {
"root_cause" : [
{
"type" : "ingest_processor_exception",
"reason" : "java.lang.IllegalArgumentException: field [test] of type [java.util.ArrayList] cannot be cast to [java.lang.String]"
}
],
"type" : "illegal_argument_exception",
"reason" : "field [test] of type [java.util.ArrayList] cannot be cast to [java.lang.String]"
}
}
]
}
Metadata
Metadata
Assignees
Labels
:Data Management/Ingest NodeExecution or management of Ingest Pipelines including GeoIPExecution or management of Ingest Pipelines including GeoIP>enhancementTeam:Data ManagementMeta label for data/management teamMeta label for data/management team