[SERVER-67280] Ensure HealthObserver::periodicCheckImpl() implementations handle exceptions and return an appropriate failing health check status when one occurs Created: 14/Jun/22  Updated: 29/Oct/23  Resolved: 24/Jun/22

Status: Closed
Project: Core Server
Component/s: None
Affects Version/s: None
Fix Version/s: 5.0.12, 6.0.2, 6.1.0-rc0

Type: Bug Priority: Major - P3
Reporter: Lamont Nelson Assignee: Andrew Witten (Inactive)
Resolution: Fixed Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Issue Links:
Backports
Depends
Backwards Compatibility: Fully Compatible
Operating System: ALL
Backport Requested:
v6.0, v5.0
Participants:
Linked BF Score: 13

 Description   

The attached build failure occurs due to the FaultManager thread throwing an exception while the server was shutting down. The exception exits a noexcept method, which causes the server to crash. This ticket is to audit the implementations of HealthObserverBase::periodicCheck to ensure that the functions return a failing health check status on exception.



 Comments   
Comment by Githook User [ 24/Aug/22 ]

Author:

{'name': 'Andrew Witten', 'email': 'andrew.witten@mongodb.com', 'username': 'awitten1'}

Message: SERVER-67280 wrap periodicCheckImpl with try catch

(cherry picked from commit 3e5d353f846896ea81fca853bc4a03b94fe91df5)
Branch: v5.0
https://github.com/mongodb/mongo/commit/549062a96460b64f4fc1400a43f79e6f572d7892

Comment by Githook User [ 24/Aug/22 ]

Author:

{'name': 'Andrew Witten', 'email': 'andrew.witten@mongodb.com', 'username': 'awitten1'}

Message: SERVER-67280 remove noexcept

(cherry picked from commit 8fdeb6626d6cd3d0eff4add6fef5a525f4df1254)
Branch: v5.0
https://github.com/10gen/mongo-enterprise-modules/commit/1076212f922b2b410aea6bdb2d6df2777755f5f0

Comment by Githook User [ 24/Aug/22 ]

Author:

{'name': 'Andrew Witten', 'email': 'andrew.witten@mongodb.com', 'username': 'awitten1'}

Message: SERVER-67280 wrap periodicCheckImpl with try catch

(cherry picked from commit 3e5d353f846896ea81fca853bc4a03b94fe91df5)
Branch: v6.0
https://github.com/mongodb/mongo/commit/edce02c5c24d122bf0688dcbae3d5ff699bd21bd

Comment by Githook User [ 24/Aug/22 ]

Author:

{'name': 'Andrew Witten', 'email': 'andrew.witten@mongodb.com', 'username': 'awitten1'}

Message: SERVER-67280 remove noexcept

(cherry picked from commit 8fdeb6626d6cd3d0eff4add6fef5a525f4df1254)
Branch: v6.0
https://github.com/10gen/mongo-enterprise-modules/commit/e3976aa62437710ca798eb783e079e7790b3214b

Comment by Githook User [ 23/Jun/22 ]

Author:

{'name': 'Andrew Witten', 'email': 'andrew.witten@mongodb.com', 'username': 'awitten1'}

Message: SERVER-67280 wrap periodicCheckImpl with try catch
Branch: davish/SERVER-63099
https://github.com/mongodb/mongo/commit/3e5d353f846896ea81fca853bc4a03b94fe91df5

Comment by Githook User [ 23/Jun/22 ]

Author:

{'name': 'Andrew Witten', 'email': 'andrew.witten@mongodb.com', 'username': 'awitten1'}

Message: SERVER-67280 wrap periodicCheckImpl with try catch
Branch: master
https://github.com/mongodb/mongo/commit/3e5d353f846896ea81fca853bc4a03b94fe91df5

Comment by Githook User [ 23/Jun/22 ]

Author:

{'name': 'Andrew Witten', 'email': 'andrew.witten@mongodb.com', 'username': 'awitten1'}

Message: SERVER-67280 remove noexcept
Branch: master
https://github.com/10gen/mongo-enterprise-modules/commit/8fdeb6626d6cd3d0eff4add6fef5a525f4df1254

Generated at Thu Feb 08 06:07:44 UTC 2024 using Jira 9.7.1#970001-sha1:2222b88b221c4928ef0de3161136cc90c8356a66.