Uploaded image for project: 'Core Server'
  1. Core Server
  2. SERVER-11032

Do not veto if "primary" is the node trying to be elected

    • Fully Compatible
    • ALL

      Issue Status as of October 22nd, 2013

      ISSUE SUMMARY
      Re-election of a primary can be delayed because of a veto from another member of the replica set.

      USER IMPACT
      This issue can manifest if a replica set election is triggered and a member has not seen that the (old) primary has already stepped down. This will occur most frequently when there is a replica set reconfiguration event combined with either network latency or a node is overloaded. This fix shortens the time it takes to re-elect the primary; it would eventually get elected when the stepdown state is processed and it stops vetoing.

      It is present in all versions of MongoDB prior to and including v2.4.6.

      SOLUTION
      Don't veto former primary from re-electing itself.

      WORKAROUNDS
      None.

      PATCHES
      Production release v2.4.7 contains the fix for this issue, and production release v2.6.0 will contain the fix as well.

      Original Description

      This can happen if the member has a stale view of the world believing that there is a primary.
      Example log:

      not electing self, bar:27017 would veto with 'foo:27017 is trying to elect itself but foo:27017 is already primary and more up-to-date'
      

            Assignee:
            scotthernandez Scott Hernandez (Inactive)
            Reporter:
            scotthernandez Scott Hernandez (Inactive)
            Votes:
            0 Vote for this issue
            Watchers:
            5 Start watching this issue

              Created:
              Updated:
              Resolved: