My scenario with reasoning
[good stuff here]
1 I had setup the zabbix agent on multiple servers and let it listen on all the servers IPS
2 I created a discovery rule to discover my entire IP range using the zabbix agent and system.uname. I put the uniqueness criteria to system.uname
3 I then realized that because of the multiple IPs I got the servers added with the wrong IPs (not the main ones) and therefore the reverse DNS was not the server's main IP.
4 I then edited all my zabbix agents to listen only on the main IP and restarted them all
5 I then deleted all the hosts from zabbix
6 I then waited for the discovery results
[bad stuff here]
7 the discovery IPs/reverse DNS were not updated. It still had mapped to the old IPs, eventhough the zabbix agent isnt listening on it anymore.
When I deleted the hosts, I expected them to get fully deleted. However, the discovery data is still cached the tables [dhosts] and [dservices]
I expected when I deleted the hosts from zabbix that it would remove all record of them, so that I could simply rescan and it would update appropriately.