Login via google when username is already taken

let us say a username named john is already registered.
Now john@gmail.com tries to create an account (via provider Gmail) and he gets username already taken
How can I sove this problem