MP050WARNINGFree
prefer-hnsw-over-ivfflat
What It Detects
IVFFlat indexes require training data and periodic reindexing. HNSW provides better recall without retraining.
Why It's Dangerous
pgvector IVFFlat indexes need representative data at creation time to build clusters. As data changes, recall degrades and periodic REINDEX is needed. HNSW indexes build incrementally, have consistently better recall, and never need retraining.
Bad Example
CREATE INDEX idx_embeddings ON items USING ivfflat (embedding vector_cosine_ops) WITH (lists = 100);
Good Example
CREATE INDEX idx_embeddings ON items USING hnsw (embedding vector_cosine_ops) WITH (m = 16, ef_construction = 64);
Configuration
Disable this rule:
# .migrationpilotrc.yml rules: MP050: false
Or change its severity:
# .migrationpilotrc.yml
rules:
MP050:
severity: warning