Documentation Index
Fetch the complete documentation index at: https://ship.paralect.com/docs/llms.txt
Use this file to discover all available pages before exploring further.
withTransaction
withTransaction: <TRes = any>(
transactionFn: (session: ClientSession) => Promise<TRes>,
): Promise<TRes>
Runs callbacks and automatically commits or rollbacks transaction.
import db from 'db';
const { user, company } = await db.withTransaction(async (session) => {
const createdUser = await usersService.insertOne({ fullName: 'Bahrimchuk' }, {}, { session });
const createdCompany = await companyService.insertOne(
{ users: [createdUser._id] }, {},
{ session },
);
return { user: createdUser, company: createdCompany };
});
Parameters
- transactionFn:
(session: ClientSession) => Promise<TRes>;
Function that accepts a client session and manages some business logic. Must return a Promise.
Returns Promise<TRes>.