-
Type:
Bug
-
Resolution: Unresolved
-
Priority:
Major - P3
-
None
-
Affects Version/s: None
-
Component/s: None
-
None
-
Storage Engines, Storage Engines - Server Integration
-
ALL
-
None
-
3
-
TBD
-
None
-
None
-
None
-
None
-
None
-
None
-
None
Follow up for SERVER-87215 which added more logging
On next occurrence we should have more info to debug
Theories considered as root cause:
- BSON lifetime issues
- Possible, but no obvious misuse
- Threading issues
- There are multiple validation runs going on at once, but there should be no overlap in the data inspected
- Conversion from RecordData -> BSON
- If a null is appended anywhere it could explain this
- Would be more widespread if this were an issue
- Some storage engine issue where the returned value is broken in some way
- This would be super weird, especially since we seek the same record id at an earlier time with no issue
Other notes:
- Issue does not trivially reproduce, but seems to be common enough that there is clearly some environmental condition leading to it, we have a long history of samples exhibiting this behavior across major versions. Likely also related to the key being missing in the first place?
- This issue is not yet confirmed in 8.1, after a large number of validation refactors. It's unclear if the issue is actually resolved due to a lack of sampled (most failed 8.1 validations don't have missingIndexEntries populated
- Using validation run 682728d76ff1d05bf4ccab8a as an example from here, recordId 38376 is listed as missing, but when printing the metadata, there is a record with that recordId and a valid _id field.
- Seen on a few text indexes, but also on geo
- The _id field is clearly present in the returned data obj, otherwise it could not be added
- The recordIds being read are in the collection, and printing the metadata shows intact _id fields
- is related to
-
SERVER-87215 Null _id reported in missing index entries in validation failures
-
- Closed
-