When an EID string is specified directly by a caller, the UserDirectoryService "cleans" it before performing other operations. This includes converting it to lower-case if the installation uses case-insensitive EIDs. However, no such cleaning is done when an EID is supplied by a User Directory Provider (by provided authentication, for example). If the provider returns a mixed-case EID, the UDS stores it unchanged in the SAKAI_USER_ID_MAP table and internal cache, even though all queries expect to deal with lowercase strings. This can result in multiple inconsistencies (see linked issues).