Searching for a contact by e-mail address in CiviCRM returns results only if the e-mail address happens to also be primary. The only way to search through contacts by e-mail address regardless of it's location type is to use the Search Builder. This functionality is "unrealistic". If you are searching for a contact in your database exclusively by e-mail address, it doesn't matter what the location is. It only matters whether the contact is in the system or not and if it is in the system, it should be returned.