I thought the whole point of ConceptWord was that we looked at that rather than doing a query like the one Tammy mentions. (Tammy, which version of getConcepts is that?)
-Darius On Friday, October 7, 2011, Tammy Dugan wrote: > We have been testing CHICA with 1.7.x openmrs and have run into some > performance issues. It takes 4 or more times longer to create a form in > 1.7.x openmrs than 1.5 openmrs. We did some profiling this week and found > the major culprit was this line in getConcepts: > > criteria.add(Expression.ilike(**"names.name", name, matchmode)); > > If we change ilike to like, getConcepts runs over 6 times faster (60 > milliseconds verses 450 milliseconds). Making this change vastly improved > our timings. The reason this causes a problem is that MySQL columns are case > insensitive by default so "like" is case insensitive. When ilike is used in > the Expression it translates to "lower(name)". Applying the lower function > makes the query considerably slower. I know that this line is supposed to > work across multiple databases other than mysql, thus the ilike. However, it > causes an unacceptable performance hit for those that use MySQL. Is there a > way to identify whether the database being used is MySQL and add some logic > to use like instead of ilike when MySQL is the database? Also, I noticed > when like is used in exact mode for MySQL it is twice as fast to use "=". It > would be a good idea to use that performance optimization as well. > > Thanks, > > Tammy Dugan > > -- > Tammy Dugan > CHIRDL Technical Lead > Children's Health Services Research > IU School of Medicine > > ______________________________**___________ > > To unsubscribe from OpenMRS Developers' mailing list, send an e-mail to > [email protected] with "SIGNOFF openmrs-devel-l" in the body > (not the subject) of your e-mail. > > [mailto:[email protected]?body=SIGNOFF%**20openmrs-devel-l] > _________________________________________ To unsubscribe from OpenMRS Developers' mailing list, send an e-mail to [email protected] with "SIGNOFF openmrs-devel-l" in the body (not the subject) of your e-mail. [mailto:[email protected]?body=SIGNOFF%20openmrs-devel-l]

