The easiest answer is "ask again once you know yourself".
The biggest problem in relationships, by far, is trying to leapfrog self-awareness and understanding one's own needs, in favor of trying to be something to someone else, or get something from someone else that seems to be missing.
Now, that's not the same thing as "have no relationships until you've figured yourself out"… But, it is very important to not put too much effort into identifying faults and compatibility issues with others, until you're certain that you both:
(a) understand your own faults and issues completely, and
(b) are able to communicate these explicitly to a potential partner
If you can just do those two things, you'll likely have figured out the "real answer", which is that it doesn't matter if you NEVER figure them out, so long as you're happy with your shared relationship.
Put into a simple soundbite: It's hard to deal with the worst in others, if you can't find the best of yourself.