...
When CollectionRef::restoreCollection() throws, it leaves '_collPtr' in an initialized state, which is wrong. To keep the CollectionRef in a consistent state, the correct behavior in the event of an exception should be to leave '_collPtr' in an uninitialized state. Same goes for CollectionRef::acquireCollection(). The goal of this task is to fix CollectionRef::restoreCollection() and CollectionRef::acquireCollection() accordingly.
As far as I know, this bug is not easily reproducible. BF-36692 links to an Evergreen run with a core dump that shows an example of the failure happening.
Click on a version to see all relevant bugs
MongoDB Integration
Learn more about where this data comes from
Bug Scrub Advisor
Streamline upgrades with automated vendor bug scrubs
BugZero Enterprise
Wish you caught this bug sooner? Get proactive today.