# Expand and contract

> A schema change adds the new shape, backfills, then drops the old one: no table lock, so a migration can never stall writes.

## Prerequisites

Research these first: [Online schema migrations](https://wiki.playquorum.dev/research/online-migrations.md).

## Engineering terms

- [Expand and contract](https://wiki.playquorum.dev/glossary/expand-and-contract.md)
- [Tech debt](https://wiki.playquorum.dev/glossary/tech-debt.md)

## Facts

Expand and contract
- **Track:** Data
- **Era:** [Series B](https://wiki.playquorum.dev/eras/series-b.md)
- **Cost:** 3.33k 3.33k 3.33k
- **Requires:** [Online schema migrations](https://wiki.playquorum.dev/research/online-migrations.md)

## See also

- [Research tree](https://wiki.playquorum.dev/research.md)

Source: https://wiki.playquorum.dev/research/expand-contract
