I would like to use transaction in wolkenkit-eventstore when saving events to eventstore and be able to rollback those events if something else fail, is it possible ? I saw in source code (in saveEvents method) that you are releasing connection pool:
try {
const result = await connection.query({ name: `save events ${committedEvents.length}`, text, values });
for (let i = 0; i < result.rows.length; i++) {
committedEvents[i].event.metadata.position = Number(result.rows[i].position);
}
} catch (ex) {
if (ex.code === '23505' && ex.detail.startsWith('Key ("aggregateId", revision)')) {
throw new Error('Aggregate id and revision already exist.');
}
throw ex;
} finally {
connection.release();
}
at the finally step, so i can't gain this connection pool in any way. Is there any way i can do transaction based system with wolkenkit-eventstore ?