MP038WARNINGFree

prefer-bigint-over-int

What It Detects

INT primary keys and foreign keys can overflow at ~2.1 billion rows.

Why It's Dangerous

INT (4 bytes) maxes out at 2,147,483,647. Fast-growing tables or high-throughput systems can hit this limit. Changing from INT to BIGINT requires a full table rewrite. Start with BIGINT.

Bad Example

CREATE TABLE orders (id INT PRIMARY KEY);

Good Example

CREATE TABLE orders (id BIGINT GENERATED ALWAYS AS IDENTITY PRIMARY KEY);

Configuration

Disable this rule:

# .migrationpilotrc.yml
rules:
  MP038: false

Or change its severity:

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