Skip to content

Commit

Permalink
docs(examples): fix error connection handling (#40633)
Browse files Browse the repository at this point in the history
When there's an error while connect to mongodb (timeout for example), it will be cached and need to restart next.js, by handling the error correctly (clear cached promise) it will try to reconnect to mongodb if the function is called again

## Bug

- [ ] Related issues linked using `fixes #number`
- [ ] Integration tests added
- [ ] Errors have a helpful link attached, see `contributing.md`

## Feature

- [ ] Implements an existing feature request or RFC. Make sure the feature request has been accepted for implementation before opening a PR.
- [ ] Related issues linked using `fixes #number`
- [ ] Integration tests added
- [ ] Documentation added
- [ ] Telemetry added. In case of a feature if it's used or not.
- [ ] Errors have a helpful link attached, see `contributing.md`

## Documentation / Examples

- [ ] Make sure the linting passes by running `pnpm lint`
- [ ] The "examples guidelines" are followed from [our contributing doc](https://github.com/vercel/next.js/blob/canary/contributing/examples/adding-examples.md)


Co-authored-by: JJ Kasper <22380829+ijjk@users.noreply.github.com>
  • Loading branch information
chornos13 and ijjk committed Sep 19, 2022
1 parent 5a50a99 commit a03cdc6
Showing 1 changed file with 8 additions and 1 deletion.
9 changes: 8 additions & 1 deletion examples/with-mongodb-mongoose/lib/dbConnect.js
Expand Up @@ -33,7 +33,14 @@ async function dbConnect() {
return mongoose
})
}
cached.conn = await cached.promise

try {
cached.conn = await cached.promise
} catch (e) {
cached.promise = null
throw e
}

return cached.conn
}

Expand Down

0 comments on commit a03cdc6

Please sign in to comment.