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

rc-2 repl set stops being able to fulfill majority write concern

    • Type: Icon: Bug Bug
    • Resolution: Won't Fix
    • Priority: Icon: Major - P3 Major - P3
    • None
    • Affects Version/s: None
    • Component/s: Replication
    • Labels:
      None
    • ALL
    • Hide

      1) 3 member repl set (nothing special)
      2) mongo shell to primary
      3) rs.status()
      4)

      db.foo.insert( { x: 1 }, { writeConcern: { w: "majority", wtimeout: 2000 } } ) 


      was successful
      5) c=rs.conf()
      6) c.protocolVersion=0
      7) rs.reconfig(c)
      8) c=rs.status()
      9) c=rs.conf()
      10) c.protocolVersion=1
      11) rs.reconfig(c)
      12) rs.status()
      13)

      db.foo.insert( { x: 1 }, { writeConcern: { w: "majority", wtimeout: 2000 } } )

      returns

      WriteResult({
      	"nInserted" : 1,
      	"writeConcernError" : {
      		"code" : 64,
      		"codeName" : "WriteConcernFailed",
      		"errInfo" : {
      			"wtimeout" : true
      		},
      		"errmsg" : "waiting for replication timed out"
      	}
      })
      
      Show
      1) 3 member repl set (nothing special) 2) mongo shell to primary 3) rs.status() 4) db.foo.insert( { x: 1 }, { writeConcern: { w: "majority" , wtimeout: 2000 } } ) was successful 5) c=rs.conf() 6) c.protocolVersion=0 7) rs.reconfig(c) 8) c=rs.status() 9) c=rs.conf() 10) c.protocolVersion=1 11) rs.reconfig(c) 12) rs.status() 13) db.foo.insert( { x: 1 }, { writeConcern: { w: "majority" , wtimeout: 2000 } } ) returns WriteResult({ "nInserted" : 1, "writeConcernError" : { "code" : 64, "codeName" : "WriteConcernFailed" , "errInfo" : { "wtimeout" : true }, "errmsg" : "waiting for replication timed out" } })
    • Repl 2017-02-13

      with pv1, I first did

      db.foo.insert( { x: 1 }, { writeConcern: { w: "majority", wtimeout: 2000 } } )
      

      and was successful.
      Then I reconfig'ed to pv0 and rs.status to see what that returned.
      I reconfig'ed back to pv1 and I can no longer do

      db.foo.insert( { x: 1 }, { writeConcern: { w: "majority", wtimeout: 2000 } } )
      

      *note* I didn't change writeConcernMajorityJournalDefault during any of my shenanigans.

            Assignee:
            judah.schvimer@mongodb.com Judah Schvimer
            Reporter:
            kay.kim@mongodb.com Kay Kim (Inactive)
            Votes:
            0 Vote for this issue
            Watchers:
            10 Start watching this issue

              Created:
              Updated:
              Resolved: