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.
{
            LOCK(cs_vNodes);
            for (const CNode* pnode : vNodes) {
                if (!pnode->fInbound && !pnode->m_manual_connection) {
                    
                    
                    
                    
                    
                    setConnected.insert(pnode->addr.GetGroup(addrman.m_asmap));
                    if (pnode->m_tx_relay == nullptr) {
                        nOutboundBlockRelay++;
                    } else if (!pnode->fFeeler) {
                        nOutboundFullRelay++;
                    }
                }
            }
        }