So I understand that highest priority wins the DR election and that highest router ID is used to break ties. I also understand that a new router coming online with a higher priority than the rest won't knock down the current DR from its perch.
But when I was confirming all of this in my lab the other day (with all at priority 1 except Router G at priority 200) I noticed from the debug output that some elected themselves, or their high-router-ID neighbors as DR but then elected Router G as DR after reaching 2WAY state with it.
I set up four unconnected routers with OSPF on their token-ring interfaces, a high loopback address for each. I plugged them into my TR hub and then powered it on; so everyone would come online at the same time.
I'm just wondering about how neighbor discovery is ordered, if at all. With all except Router G at the same priority, it seems like if Routers E and F reach the 2WAY state with each other before anyone else on the segment, F (with its higher loopback address) will be elected DR, even if high-priority Router G comes online only microseconds later. Is this a luck of the draw, or is there some mechanism by which the DR election might be tarried till all neighbors are discovered?