We are also running on Vercel with the mongodb driver and are receiving these errors randomly.
Just for comparison, we are running:
- Vercel Pro plan
These packages:
“next-auth”: “^4.24.4”,
“mongodb”: “^4.13.0”,
“next”: “^14.1.0”
Does everyone also have next-auth running?
This is my mongodb connection implementation:
import { MongoClient } from "mongodb";
const uri = process.env.MONGODB_URI;
const options = {
useUnifiedTopology: true,
useNewUrlParser: true,
};
let mongoClient = null;
let database = null;
if (!process.env.MONGODB_URI) {
throw new Error('Invalid/Missing environment variable: "MONGODB_URI"')
}
export async function connectToDatabase() {
try {
if (mongoClient && database) {
return { mongoClient, database };
}
if (process.env.NODE_ENV === "development") {
if (!global._mongoClient) {
mongoClient = await (new MongoClient(uri, options)).connect();
global._mongoClient = mongoClient;
} else {
mongoClient = global._mongoClient;
}
} else {
mongoClient = await (new MongoClient(uri, options)).connect();
}
database = await mongoClient.db(process.env.NEXT_ATLAS_DATABASE);
return { mongoClient, database };
} catch (e) {
console.error(e);
}
}