osd/OSDMap: clear osd_info, osd_xinfo on osd deletion
If we destroy an OSD in the map, clear not just the uuid but also
all the metadata about it.
Specifically, we care about up_from, which can prevent a new
OSD from booting if it starts with a map prior to the deletion
when it sends it boot. Specifically, the osd epoch may be 0 and
if the latest osd epoch is also small the osd decide it is "close
enough" to the latest epoch and sends the boot message. In
practice this problem wouldn't surface on any cluster that isn't
brand new.
Note that this changes the result of applying an incremental.
As such, it will cause lots of old OSDs to request full maps
from the mon, spiking load during an upgrade. This is as it
should be.
Fixes: #13988 Signed-off-by: Sage Weil <sage@redhat.com>