Can you create this as it's own thread? The last reply on this was about 2 years ago, so the information contained within is outdated and will not accurately reflect the issue you're running into.
If you created a username firstname.lastname@example.org with password, then a user is created in the user collection. Then if you log out and use Facebook, whose email is also email@example.com, to log in (with Facebook), you actually created another user whose username is also firstname.lastname@example.org. This is a violation of unique username. Then many errors will follow....