Mongo secondary unable to connect to primary

I have a cluster made of 4 mongo members: 1 arbiter, 2 secondaries, and 1 primary. The configuration is as follows:

rs0:SECONDARY> rs.conf() {     "_id" : "rs0",     "version" : 220934,     "members" : [         {             "_id" : 5,             "host" : "secondaryA:27017",             "arbiterOnly" : false,             "buildIndexes" : true,             "hidden" : false,             "priority" : 1,             "tags" : {                              },             "slaveDelay" : NumberLong(0),             "votes" : 1         },         {             "_id" : 6,             "host" : "primary:27017",             "arbiterOnly" : false,             "buildIndexes" : true,             "hidden" : false,             "priority" : 10,             "tags" : {                              },             "slaveDelay" : NumberLong(0),             "votes" : 1         },         {             "_id" : 7,             "host" : "arbiter:27017",             "arbiterOnly" : true,             "buildIndexes" : true,             "hidden" : false,             "priority" : 1,             "tags" : {                              },             "slaveDelay" : NumberLong(0),             "votes" : 1         },         {             "_id" : 8,             "host" : "secondaryB:27017",             "arbiterOnly" : false,             "buildIndexes" : true,             "hidden" : false,             "priority" : 0,             "tags" : {                              },             "slaveDelay" : NumberLong(0),             "votes" : 0         }     ],     "settings" : {         "chainingAllowed" : true,         "heartbeatIntervalMillis" : 2000,         "heartbeatTimeoutSecs" : 10,         "electionTimeoutMillis" : 10000,         "catchUpTimeoutMillis" : 60000,         "getLastErrorModes" : {                      },         "getLastErrorDefaults" : {             "w" : 1,             "wtimeout" : 0         }     } } 

By mistake, when I was rebooting mongo hosts, I did it too fast, and 2 members (primary and secondary) became unavailable. I ended up with 3 secondaries and 1 arbiter. FYI – 1 secondaryB has 0 priority and 0 voting and only this mongo host along with arbiter were up and online. So of course mongo refuses to elect a primary in this situation. That is ok, I went ahead and force election of primary.

On the host that used to be primary I did:

cfg = rs.conf() rs.reconfig(cfg,{force:true}) 

This elected back the primary since it highest priority, and everything was back to normal except secondaryB. It had this error when doing rs.status() on it:

"lastHeartbeatMessage" : "Couldn't get a connection within the time limit", 

I tried removing this secondaryB member and adding it back, but still this error persists. It seems to be syncing, but from a secondary member. I don’t understand why this is happening or where to start. I don’t see the point of reinitiating a replica set since it is pretty much intact, I just need to get this secondary member to be back to normal.