diff --git a/packages/runtime/src/client/crud/operations/base.ts b/packages/runtime/src/client/crud/operations/base.ts index 975fd6e0..f27001fa 100644 --- a/packages/runtime/src/client/crud/operations/base.ts +++ b/packages/runtime/src/client/crud/operations/base.ts @@ -2083,7 +2083,7 @@ export abstract class BaseOperationHandler { } else { // otherwise, create a new transaction and execute the callback let txBuilder = this.kysely.transaction(); - txBuilder = txBuilder.setIsolationLevel(isolationLevel ?? TransactionIsolationLevel.RepeatableRead); + txBuilder = txBuilder.setIsolationLevel(isolationLevel ?? TransactionIsolationLevel.ReadCommitted); return txBuilder.execute(callback); } } diff --git a/packages/runtime/src/client/executor/zenstack-query-executor.ts b/packages/runtime/src/client/executor/zenstack-query-executor.ts index e1fb6298..a2005bff 100644 --- a/packages/runtime/src/client/executor/zenstack-query-executor.ts +++ b/packages/runtime/src/client/executor/zenstack-query-executor.ts @@ -90,7 +90,7 @@ export class ZenStackQueryExecutor extends DefaultQuer // mutations are wrapped in tx if not already in one if (this.isMutationNode(compiledQuery.query) && !this.driver.isTransactionConnection(connection)) { await this.driver.beginTransaction(connection, { - isolationLevel: TransactionIsolationLevel.RepeatableRead, + isolationLevel: TransactionIsolationLevel.ReadCommitted, }); startedTx = true; }