Hello,
I am using CB 1.9.1 in a JMS Multisites "shared extension" environment (meaning CB users are shared across multiple sites). To achieve this, I had to create MySQL VIEWs for the CB database tables for each shared site. This is working well except one situation:
The #__comprofiler_members table uses "FORCE INDEX" clause (in script "comprofiler.class.php", several occurences ), which is not allowed in MySQL for VIEWs. When I comment out this MySQL clause, everything works as desired.
So my questions are:
1) what is the reason you implemented this clause for "cb connections", and is it "save" or what happens to Community Builder, if I comment this out?
2) Is there a chance you remove this clause from the SQL queries in one of the next versions?
As those tables can be really huge, and the MySQL 4 optimizer didn't automatically use those indexes, we had to add those statements to have very fast accesses even with millions of connections.
We will be reviewing all CB queries in the next months as we raise minimum MySQL requirement.
In your case, you can remove those statements as long as you are happy with the performance and use a more recent MySQL engine, but for general case, as long as we support MySQL 4, we can't yet.