-
Notifications
You must be signed in to change notification settings - Fork 8.5k
Description
We currently filter out fields mapped as nested or object from the index pattern's field list. Their children exist in the index pattern, but the root field does not. For example:
{
"foo": {
"bar": "baz"
}
}
foo.bar will be in the index pattern, but foo will not.
The root isn't generally useful because it's not a field that has a scalar value that can be queried or aggregated on, so we almost never want to show it to the user in a list of suggested fields.
However, we have run into a situation where we need to know about those roots. I tried to solve that problem by adding those nested roots to the index pattern's field list, but that caused issues in other apps that display all of the fields in that list without any filtering, like maps and canvas. @timroes and I were discussing this and we decided it probably makes sense to store information about these roots in a separate property on the index pattern instead of shoving them into the existing field list, because they are very different from other fields and you could argue that they are not really fields at all.