This is a well known (long standing) issue. Documented in the code base in commit eea02be70ee37b845f2719b3c08e5baf4b6f51f6.

Countless intermittent sanitizer warnings can be attributed to it.
private:
    const NodeId id;
    const uint64_t nLocalHostNonce;
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    const ServiceFlags nLocalServices;
    const int nMyStartingHeight;
    int nSendVersion{0};
    NetPermissionFlags m_permissionFlags{ PF_NONE };
    std::list<CNetMessage> vRecvMsg;  
    mutable RecursiveMutex cs_addrName;
    std::string addrName GUARDED_BY(cs_addrName);
    
    CService addrLocal GUARDED_BY(cs_addrLocal);
    mutable RecursiveMutex cs_addrLocal;
public:
    NodeId GetId() const {