seanzatzdev's Description of Work
randomDeniedField() in StandardVersusLogsdbFieldLevelSecurityChallengeRestIT excludes geo_point, geo_shape and shape (DENY_INCOMPATIBLE_FIELD_TYPES) only when picking a field from the mapping template. If the template has no compatible field, it falls back to a top-level field from the indexed documents, and that path did not check the type. It could therefore deny a geo_point, which hits the known standard vs logsdb FLS difference the exclusion exists to avoid.
This applies the same type exclusion in the fallback.
Verification:
- Without the fix, seed F7C3E98DC8B5F055 (-Dtests.locale=en-AG -Dtests.timezone=US/Eastern) at commit 2e7beaba873d (the Sep 28 failing build) fails with Values of type [geo_point] don't match after normalization.
- With the fix, the same seed at the same commit passes.
- With the fix on current main, 100 iterations pass. The seed no longer reproduces on main without the fix, because data generation changed after Sep 28.
The test is not muted in this repo. The mute for the issue is in elasticsearch-serverless and needs removing once this reaches serverless.
related: elastic/elasticsearch-serverless#7542