Elastic Stack Mapping Error

If ndc should always be == to ![CDATA[]] then I would just do a conditional statement checking that field and if it doesn't contain that value replace it with some dummy text or leave empty. Or you can even set it as ![CDATA[]] if that is needed.

This doesn't fix the root cause but I am not sure what that is.

Test Conf

input { generator { lines => ['[{"ndc":"![CDATA[]]"},{"ndc":"{}"}]'] count => 1 codec => "json" } }
filter {
  if [ndc] != "![CDATA[]]" {
    mutate {
      update => { "[ndc]" => "![CDATA[]]" }
    }
  }
}
output { stdout { codec => json } }