Skip to content
Merged
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
20 changes: 10 additions & 10 deletions apps/docs/content/docs/guides/next/upgrade-prisma-orm/mongodb.mdx
Original file line number Diff line number Diff line change
Expand Up @@ -428,16 +428,16 @@ npx prisma-next db verify --db "$DATABASE_URL" # check the DB matches the cont

Work through this list before you switch production traffic over:

- [ ] **Same database.** Your Prisma Next config points at the **same** database and connection string as v6.
- [ ] **Server version.** Your MongoDB server is on 8.0 or newer.
- [ ] **Dry run first.** Rehearse the whole flow on a throwaway copy of your database (`contract emit`, `db update --dry-run`, `db update`, `db verify`) and make sure `db verify` passes before you touch production.
- [ ] **Index parity.** The indexes on each collection (`db.collection.getIndexes()`) match your contract.
- [ ] **Validators.** Your existing documents pass the strict validators Prisma Next adds to each collection (see *Good to know* in step 4).
- [ ] **Addressing.** Every call site uses storage names like `db.orm.users`, not model names.
- [ ] **Transactions.** Every v6 `$transaction` now has a driver-session equivalent.
- [ ] **Raw calls.** Every `$runCommandRaw`, `findRaw`, and `aggregateRaw` has a pipeline-builder or `mongodb`-driver replacement.
- [ ] **Read-only trial run.** Run Prisma Next read-only alongside your v6 app for a while and compare the results. This surfaces any differences while v6 is still handling all the writes.
- [ ] **Cutover and rollback.** Switch writes over only once the trial run looks good, and keep the v6 branch deployable. Rolling back is just a code rollback since your data never moved.
- **Same database.** Your Prisma Next config points at the **same** database and connection string as v6.
- **Server version.** Your MongoDB server is on 8.0 or newer.
- **Dry run first.** Rehearse the whole flow on a throwaway copy of your database (`contract emit`, `db update --dry-run`, `db update`, `db verify`) and make sure `db verify` passes before you touch production.
- **Index parity.** The indexes on each collection (`db.collection.getIndexes()`) match your contract.
- **Validators.** Your existing documents pass the strict validators Prisma Next adds to each collection (see *Good to know* in step 4).
- **Addressing.** Every call site uses storage names like `db.orm.users`, not model names.
- **Transactions.** Every v6 `$transaction` now has a driver-session equivalent.
- **Raw calls.** Every `$runCommandRaw`, `findRaw`, and `aggregateRaw` has a pipeline-builder or `mongodb`-driver replacement.
- **Read-only trial run.** Run Prisma Next read-only alongside your v6 app for a while and compare the results. This surfaces any differences while v6 is still handling all the writes.
- **Cutover and rollback.** Switch writes over only once the trial run looks good, and keep the v6 branch deployable. Rolling back is just a code rollback since your data never moved.

Don't delete the v6 client, schema, or dependencies until this checklist passes.

Expand Down
Loading