From: SourceForge.net <no...@so...> - 2012-09-10 13:54:33
|
Bugs item #3561288, was opened at 2012-08-24 06:15 Message generated for change (Comment added) made by ajlittoz You can respond by visiting: https://sourceforge.net/tracker/?func=detail&atid=390117&aid=3561288&group_id=27350 Please note that this message will contain a full copy of the comment thread, including the initial issue submission, for this request, not just the latest update. Category: Database interface Group: current cvs >Status: Closed >Resolution: Fixed Priority: 7 Private: No Submitted By: Andre-Littoz (ajlittoz) Assigned to: Andre-Littoz (ajlittoz) Summary: Spurious symbols in usage table with MySQL Initial Comment: When comparing indexation results between MySQL, PostgreSQL and SQLite, MySQL records more symbol usages in table lxr_usages. After diff'ing the tables, it appears the extra usages hit on similar looking symbols (with a different case). MySQL manual says: "By default, string comparisons are not case sensitive and use the current character set." This may be correct for natural languages but definitely wrong for computer science and case-sensitive languages. The easiest way to solve that issue is to change the type of the columns in the table description to BINARY. Thus, we keep method common factoring in the Index class. ---------------------------------------------------------------------- >Comment By: Andre-Littoz (ajlittoz) Date: 2012-09-10 06:54 Message: CHAR data in MySQL tables changed to BINARY to force bit comparisons instead of locale. Did the same for PostgreSQL(failsafe though it works as is): CHAR -> BYTEA. Nothing done for SQLite (it works as is). Could not do anything for Oracle since I could not test with it. Fix effective as of release 1.0 ---------------------------------------------------------------------- You can respond by visiting: https://sourceforge.net/tracker/?func=detail&atid=390117&aid=3561288&group_id=27350 |