Django's icontains steered Postgres around a trigram index by wrapping the column in UPPER()
Django's icontains made Postgres filter UPPER(product_name) while a team's pg_trgm index covered the raw column, so product searches ran for several seconds. Having the indexes proved nothing until the team read the generated SQL beside the query plan.
Reality
- Evidence58
- Adoption
- Insufficient
- Hype gap−5
- Incentives
- Insufficient
- Confidence60