DN does not have the topology info included in its heartbeat message for container report/pipeline report.
SCM is where the topology information is available. During the processing of heartbeat, we should not rely on the datanodedetails from report to choose datanodes for close container. Otherwise, all the datanode locations of existing container replicas will fallback to /default-rack.
The fix is to retrieve the corresponding datanode locations from scm nodemanager, which has authoritative network topology information.