cayenne-commits mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Ari Maniatis (JIRA)" <>
Subject [jira] Commented: (CAY-1210) mysql does not use index for case insensitive searches
Date Mon, 10 Jan 2011 09:45:46 GMT


Ari Maniatis commented on CAY-1210:

I'd like to solve this one since it also affects other database types and is a bit of a performance
issue for us right now. What about this as a solution:

* Add new column to Cayenne modeler in the dbAttribute called "case sensitive". It is a checkbox
which is ticked by default (to preserve existing behaviour).
* Change the SQL generator to not spit out UPPER for those fields

> mysql does not use index for case insensitive searches
> ------------------------------------------------------
>                 Key: CAY-1210
>                 URL:
>             Project: Cayenne
>          Issue Type: Improvement
>          Components: Database integration
>            Reporter: Ari Maniatis
>            Assignee: Ari Maniatis
>             Fix For: 3.1M1
> When performing a case insensitive search Cayenne spits out SQL which looks like this
> SELECT .... WHERE upper(name) LIKE upper("fred")
> This prevents any index being used for the search. Since mysql already performed case
insensitive searches on text fields we need to suppress the 'upper' functions being used in
these situations. All searches on these fields are already case insensitive.

This message is automatically generated by JIRA.
You can reply to this email to add a comment to the issue online.

View raw message