diff --git a/packages/db-d1-sqlite/src/connect.ts b/packages/db-d1-sqlite/src/connect.ts index 753b075a97c..4fbe9f9f0f7 100644 --- a/packages/db-d1-sqlite/src/connect.ts +++ b/packages/db-d1-sqlite/src/connect.ts @@ -51,7 +51,7 @@ export const connect: Connect = async function connect( this.rejectInitializing() } console.error(err) - process.exit(1) + throw new Error(`Error: cannot connect to SQLite: ${message}`) } // Only push schema if not in production diff --git a/packages/db-mongodb/src/connect.ts b/packages/db-mongodb/src/connect.ts index e9b02a6bff9..25d15cf4610 100644 --- a/packages/db-mongodb/src/connect.ts +++ b/packages/db-mongodb/src/connect.ts @@ -108,6 +108,6 @@ export const connect: Connect = async function connect( err, msg, }) - process.exit(1) + throw new Error(`Error: cannot connect to MongoDB: ${msg}`) } } diff --git a/packages/db-postgres/src/connect.ts b/packages/db-postgres/src/connect.ts index 49236862492..3a16d3045e4 100644 --- a/packages/db-postgres/src/connect.ts +++ b/packages/db-postgres/src/connect.ts @@ -108,7 +108,7 @@ export const connect: Connect = async function connect( if (typeof this.rejectInitializing === 'function') { this.rejectInitializing() } - process.exit(1) + throw new Error(`Error: cannot connect to Postgres: ${err.message}`) } await this.createExtensions() diff --git a/packages/db-sqlite/src/connect.ts b/packages/db-sqlite/src/connect.ts index e56e16dfc75..aa439d8e316 100644 --- a/packages/db-sqlite/src/connect.ts +++ b/packages/db-sqlite/src/connect.ts @@ -36,7 +36,7 @@ export const connect: Connect = async function connect( if (typeof this.rejectInitializing === 'function') { this.rejectInitializing() } - process.exit(1) + throw new Error(`Error: cannot connect to SQLite: ${message}`) } // Only push schema if not in production diff --git a/packages/db-vercel-postgres/src/connect.ts b/packages/db-vercel-postgres/src/connect.ts index d74f00c265b..42ef76fa867 100644 --- a/packages/db-vercel-postgres/src/connect.ts +++ b/packages/db-vercel-postgres/src/connect.ts @@ -90,7 +90,7 @@ export const connect: Connect = async function connect( if (typeof this.rejectInitializing === 'function') { this.rejectInitializing() } - process.exit(1) + throw new Error(`Error: cannot connect to Postgres: ${err.message}`) } await this.createExtensions() diff --git a/packages/drizzle/src/transactions/beginTransaction.ts b/packages/drizzle/src/transactions/beginTransaction.ts index 8a0ad8deeb6..7aa8b0a4ccd 100644 --- a/packages/drizzle/src/transactions/beginTransaction.ts +++ b/packages/drizzle/src/transactions/beginTransaction.ts @@ -59,7 +59,7 @@ export const beginTransaction: BeginTransaction = async function beginTransactio } } catch (err) { this.payload.logger.error({ err, msg: `Error: cannot begin transaction: ${err.message}` }) - process.exit(1) + throw new Error(`Error: cannot begin transaction: ${err.message}`) } return id diff --git a/packages/payload/src/index.ts b/packages/payload/src/index.ts index 840efd11a5b..39d82b8a1e8 100644 --- a/packages/payload/src/index.ts +++ b/packages/payload/src/index.ts @@ -1127,12 +1127,12 @@ export const getPayload = async ( return cached.payload } - if (!cached.promise) { - // no need to await options.config here, as it's already awaited in the BasePayload.init - cached.promise = new BasePayload().init(options) - } - try { + if (!cached.promise) { + // no need to await options.config here, as it's already awaited in the BasePayload.init + cached.promise = new BasePayload().init(options) + } + cached.payload = await cached.promise if (