{"action":"created","issue":{"url":"https://api.github.com/repos/go-mgo/mgo/issues/49","labels_url":"https://api.github.com/repos/go-mgo/mgo/issues/49/labels{/name}","comments_url":"https://api.github.com/repos/go-mgo/mgo/issues/49/comments","events_url":"https://api.github.com/repos/go-mgo/mgo/issues/49/events","html_url":"https://github.com/go-mgo/mgo/issues/49","id":49394547,"number":49,"title":"Failover management does not work","user":{"login":"polomsky","id":1607273,"avatar_url":"https://avatars.githubusercontent.com/u/1607273?v=3","gravatar_id":"","url":"https://api.github.com/users/polomsky","html_url":"https://github.com/polomsky","followers_url":"https://api.github.com/users/polomsky/followers","following_url":"https://api.github.com/users/polomsky/following{/other_user}","gists_url":"https://api.github.com/users/polomsky/gists{/gist_id}","starred_url":"https://api.github.com/users/polomsky/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/polomsky/subscriptions","organizations_url":"https://api.github.com/users/polomsky/orgs","repos_url":"https://api.github.com/users/polomsky/repos","events_url":"https://api.github.com/users/polomsky/events{/privacy}","received_events_url":"https://api.github.com/users/polomsky/received_events","type":"User","site_admin":false},"labels":[],"state":"closed","locked":false,"assignee":null,"milestone":null,"comments":12,"created_at":"2014-11-19T14:01:50Z","updated_at":"2016-01-20T15:57:35Z","closed_at":"2014-12-01T19:44:44Z","body":"EOF error with method Collection.Insert()\r\nThis bug was observed with code revision: 231ce7e0549b5ce60d35ed805bff505cab7098e4.\r\n\r\nTest scenario:\r\nMongoDB 2.4.9\r\nreplication set, 3 configured servers, one was down, mgo was connected and worked (connected after shutting down a server). Primary server was restarted and after changing role to secondary and 3rd server became primary we tried use mgo for inserting. In failed with error EOF (type `errors.errorString`).\r\nEven rs.stepDown is sufficient for triggering this error. EOF was detected when replica set had primary.\r\n"},"comment":{"url":"https://api.github.com/repos/go-mgo/mgo/issues/comments/173248181","html_url":"https://github.com/go-mgo/mgo/issues/49#issuecomment-173248181","issue_url":"https://api.github.com/repos/go-mgo/mgo/issues/49","id":173248181,"user":{"login":"niemeyer","id":378683,"avatar_url":"https://avatars.githubusercontent.com/u/378683?v=3","gravatar_id":"","url":"https://api.github.com/users/niemeyer","html_url":"https://github.com/niemeyer","followers_url":"https://api.github.com/users/niemeyer/followers","following_url":"https://api.github.com/users/niemeyer/following{/other_user}","gists_url":"https://api.github.com/users/niemeyer/gists{/gist_id}","starred_url":"https://api.github.com/users/niemeyer/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/niemeyer/subscriptions","organizations_url":"https://api.github.com/users/niemeyer/orgs","repos_url":"https://api.github.com/users/niemeyer/repos","events_url":"https://api.github.com/users/niemeyer/events{/privacy}","received_events_url":"https://api.github.com/users/niemeyer/received_events","type":"User","site_admin":false},"created_at":"2016-01-20T15:57:35Z","updated_at":"2016-01-20T15:57:35Z","body":"The difference between Strong and Eventual is mainly that Eventual makes no promises about which server it's talking to on sequential operations. The server and data state may change behind the session arbitrarily. That's why Eventual continues working.. it was already talking to whatever server seemed most appropriate at the time even before the failure. A Strong session, on the other hand, gives you a promise to be talking to the primary, uninterruptedly. If it fails, it will tell you."}}