Open
Description
I am using nestjs with typeorm and recentrly I added transaction support with typeorm-transactional-cls-hooked.
I made the following method:
@Injectable()
class ConnectionService {
constructor(
@InjectRepository(Connection)
private connectionsRepository: ConnectionsRepository,
) {}
@Transactional()
public async updateConnection(userId: string, connectionId: string) {
const connection = await this.getConnectionById(userId, connectionId);
connection.name = '111';
await this.connectionsRepository.save(connection);
throw new Error('error test');
connection.name = '222';
await this.connectionsRepository.save(connection);
}
}
connectionsRepository
is defined like that:
import { EntityRepository } from 'typeorm';
import { BaseRepository } from 'typeorm-transactional-cls-hooked';
import { Connection } from '../entities/connection.entity';
@EntityRepository(Connection)
export class ConnectionsRepository extends BaseRepository<Connection> {}
When I am calling updateConnection
, I end up with connection.name
equals to 111
even though the transaction was rejected.
What I am missing?
Metadata
Metadata
Assignees
Labels
No labels