On Mon, Apr 7, 2014 at 2:32 PM, Fabian Topfstedt
<notifications@github.com>wrote:

> The root of all the evil here seems to be MySQL's implementation of a
> string comparison, which is case insensitive. Therefore tags like
> *awesome* and *AWESOME* are equal and considered a duplicate, resulting
> in an IntegrityError due to the index that forces uniqueness. Case
> sensitive comparisons are possible, but require at least one of the two
> strings to be stored as binary, e.g. as a varbinary.


You just need to choose a case sensitive collation afaik.



> But is something *AWESOME* really not *awesome* and vice verca?
>

A "tag" is not necessarily the "TAG" (Treatment Action Group) -- so this
would be highly backwards incompatible.