-
Notifications
You must be signed in to change notification settings - Fork 25.2k
Remove dynamic objects from security index #40499
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Conversation
The security index had a few "object" types with "dynamic": true However, this automatically creates a mapping for each field that is created within those objects. This means that types are dynamically inferred and "locked in" for future updates. Instead we want "dynamic": false which will allow us to store a range of fields in these nested objects and retrieve them from the source, without creating mapping types for those fields.
Pinging @elastic/es-security |
@jaymode Do you remember why we set |
This ends up being a trivial change because it's safe to change an index mapping to set So this change doesn't fix the problem 100% because existing security indices might have some incorrect dynamic mappings, but it stops the problem from getting worse. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
LGTM
I do not recall the reasoning. |
The security index had a few "object" types with "dynamic": true However, this automatically creates a mapping for each field that is created within those objects. This means that types are dynamically inferred and "locked in" for future updates. Instead we want "dynamic": false which will allow us to store a range of fields in these nested objects and retrieve them from the source, without creating mapping types for those fields. Backport of: elastic#40499
The security index had a few "object" types with "dynamic": true However, this automatically creates a mapping for each field that is created within those objects. This means that types are dynamically inferred and "locked in" for future updates. Instead we want "dynamic": false which will allow us to store a range of fields in these nested objects and retrieve them from the source, without creating mapping types for those fields. Backport of: #40499
The security index had a few "object" types with "dynamic": true However, this automatically creates a mapping for each field that is created within those objects. This means that types are dynamically inferred and "locked in" for future updates. Instead we want "dynamic": false which will allow us to store a range of fields in these nested objects and retrieve them from the source, without creating mapping types for those fields. Backport of: elastic#40499
The security index had a few "object" types with "dynamic": true However, this automatically creates a mapping for each field that is created within those objects. This means that types are dynamically inferred and "locked in" for future updates. Instead we want "dynamic": false which will allow us to store a range of fields in these nested objects and retrieve them from the source, without creating mapping types for those fields. Backport of: #40499
The security index had a few "object" types with "dynamic": true However, this automatically creates a mapping for each field that is created within those objects. This means that types are dynamically inferred and "locked in" for future updates. Instead we want "dynamic": false which will allow us to store a range of fields in these nested objects and retrieve them from the source, without creating mapping types for those fields. Backport of: elastic#40499
The security index had a few "object" types with "dynamic": true However, this automatically creates a mapping for each field that is created within those objects. This means that types are dynamically inferred and "locked in" for future updates. Instead we want "dynamic": false which will allow us to store a range of fields in these nested objects and retrieve them from the source, without creating mapping types for those fields. Backport of: #40499
The security index had a few "object" types with "dynamic": true However, this automatically creates a mapping for each field that is created within those objects. This means that types are dynamically inferred and "locked in" for future updates. Instead we want "dynamic": false which will allow us to store a range of fields in these nested objects and retrieve them from the source, without creating mapping types for those fields.
The security index had a few "object" types with
However, this automatically creates a mapping for each field that is
created within those objects. This means that types are dynamically
inferred and "locked in" for future updates.
Instead we want "dynamic": false which will allow us to store a range
of fields in these nested objects and retrieve them from the source,
without creating mapping types for those fields.
Closes: #35460