Quick Repair keeps saying Differences found between database and vardefs

Differences found between database and vardefs

/* Table : users */
/*INDEX MISMATCH WITH DATABASE - idx_user_name -  ROW <name> idx_user_name <type> index <fields>[0] => 'user_name'  [1] => 'is_group'  [2] => 'status'  [3] => 'last_name'  [4] => 'first_name'  [5] => 'id'  */
/* VARDEF - idx_user_name -  ROW<name> idx_user_name <type> index <fields>[0] => 'user_name'  [1] => 'is_group'  [2] => 'status'  [3] => 'last_name (30)'  [4] => 'first_name (30)'  [5] => 'id'  */
ALTER TABLE users   DROP INDEX idx_user_name,  ADD INDEX idx_user_name (user_name,is_group,status,last_name (30),first_name (30),id);

When I click Execute it says “Database tables are synced with vardefs”, but it is still there when I run Quick Repair again. How can I solve this? Log attached

Version 7.11.7

Got the exact same issue (with the same query), here is another topic where admin are trying to help us :


If I found a fix I’ll post it there.

Hi @farkle @holdusback

I’ve been working in a fix for this issue here.

Would be great if you can test this fix.
You can read an explanation of the issue here

Long story short: SuiteCRM is not detecting correctly these index and drop and create it every time you run QuickRepair.


1 Like