MP011WARNINGFree

unbatched-data-backfill

What It Detects

UPDATE without WHERE clause scans the entire table, holding row locks for the duration.

Why It's Dangerous

A full-table UPDATE locks every row, generates massive WAL, and can cause replication lag. Batch updates with WHERE and LIMIT to control impact.

Bad Example

UPDATE users SET status = 'active';

Good Example

-- Batch in chunks
UPDATE users SET status = 'active'
  WHERE id IN (SELECT id FROM users WHERE status IS NULL LIMIT 1000);

Configuration

Disable this rule:

# .migrationpilotrc.yml
rules:
  MP011: false

Or change its severity:

# .migrationpilotrc.yml
rules:
  MP011:
    severity: warning