[SERVER-65292] NetworkInterfaceTL::shutdown may race with the destructor. Created: 06/Apr/22  Updated: 29/Oct/23  Resolved: 03/May/22

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

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

Issue Links:
Depends
Backwards Compatibility: Fully Compatible
Operating System: ALL
Sprint: Service Arch 2022-04-18, Service Arch 2022-05-02, Service Arch 2022-05-16
Participants:
Linked BF Score: 11

 Description   

After some investigation, BF-24699 relates with an instance of NetworkInterfaceTL getting destroyed before it has a chance to complete shutting itself down. When the public shutdown method gets called from a different thread, the thread running the destructor must block.



 Comments   
Comment by Daniel Morilha (Inactive) [ 03/May/22 ]

This ticket fixes a race with NetworkInterfaceTL during its destruction specifically when another thread calls into NetworkInterfaceTL::shutdown which may block if network operations (held by ReactorAsio are in progress.)

Comment by Githook User [ 03/May/22 ]

Author:

{'name': 'daniel-mdb', 'email': '96069285+daniel-mdb@users.noreply.github.com', 'username': 'daniel-mdb'}

Message: SERVER-65292 NetworkInterfaceTL::shutdown may race with the destructor
Branch: master
https://github.com/mongodb/mongo/commit/ea186dba422b15d4036cf4fb91f542ed83e6b7a8

Comment by Daniel Morilha (Inactive) [ 14/Apr/22 ]

Thanks for Billy and George for the healthy discussion. We finally reached an agreement on how to proceed and I have this in a better shape.

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