Comment 2 for bug 1812168

In my opinion the problem is that disassociate_floating_ips (https://opendev.org/openstack/neutron/src/branch/master/neutron/db/l3_db.py#L1576) operates directly on DB models but has not interaction with the external DNS server, so when the port is deleted any existing DNS record associated to the floating IP will stay until the floating IP is reassociated.

I wonder if it's ok to just call _process_dns_floatingip_delete (https://opendev.org/openstack/neutron/src/branch/master/neutron/db/dns_db.py#L179)
this because we know that upon disassociation we will have a non-empty previous name and an empty current name. It might be therefore redundant to call _process_dns_floatingip_precommit and _process_dns_floatingip_postcommit (and following this process might require larger code changes)