A text match against one payload field or one header. The value must be
text: a missing value is unknown, and a value of another type is a type
mismatch, which follows the filter’s mismatch policy.
Compiled text predicates (regex and glob) one filter may hold. With the
program bound below, one compiled filter stays under 2 MiB of regex
programs, and the per-shard cache of compiled filters stays bounded with
it. Search time is linear in the value for each pattern, so a record costs
at most this many passes over its text fields.