From 53357af3b02f38e500a7edd5b7a98f02e5a4c065 Mon Sep 17 00:00:00 2001 From: Jan Klimke Date: Mon, 15 May 2017 18:54:11 +0200 Subject: [PATCH] Add options to unmanaged transaction call for sequelize --- types/sequelize/index.d.ts | 2 +- types/sequelize/sequelize-tests.ts | 12 ++++++++++++ types/sequelize/v3/index.d.ts | 2 +- types/sequelize/v3/sequelize-tests.ts | 12 ++++++++++++ 4 files changed, 26 insertions(+), 2 deletions(-) diff --git a/types/sequelize/index.d.ts b/types/sequelize/index.d.ts index 43196e4aec..38140b70e5 100644 --- a/types/sequelize/index.d.ts +++ b/types/sequelize/index.d.ts @@ -5728,7 +5728,7 @@ declare namespace sequelize { transaction(options: TransactionOptions, autoCallback: (t: Transaction) => PromiseLike): Promise; transaction(autoCallback: (t: Transaction) => PromiseLike): Promise; - transaction(): Promise; + transaction(options?: TransactionOptions): Promise; /** * Close all connections used by this sequelize instance, and free all references so the instance can be diff --git a/types/sequelize/sequelize-tests.ts b/types/sequelize/sequelize-tests.ts index a02b1a38f8..8e3a4e3b04 100644 --- a/types/sequelize/sequelize-tests.ts +++ b/types/sequelize/sequelize-tests.ts @@ -1619,6 +1619,18 @@ s.transaction().then( function( t ) { } ); +s.transaction({ + isolationLevel: s.Transaction.ISOLATION_LEVELS.READ_COMMITTED + }).then(function(t2) { + return User.find({ + where: { + username: 'jan' + }, + lock: t2.LOCK.UPDATE, + transaction: t2 + }); + }); + s.transaction( function() { return Bluebird.resolve(); } ); diff --git a/types/sequelize/v3/index.d.ts b/types/sequelize/v3/index.d.ts index 59c06f05bf..b0d920c32b 100644 --- a/types/sequelize/v3/index.d.ts +++ b/types/sequelize/v3/index.d.ts @@ -5706,7 +5706,7 @@ declare namespace sequelize { transaction(options: TransactionOptions, autoCallback: (t: Transaction) => PromiseLike): Promise; transaction(autoCallback: (t: Transaction) => PromiseLike): Promise; - transaction(): Promise; + transaction(options?: TransactionOptions): Promise; /** * Close all connections used by this sequelize instance, and free all references so the instance can be diff --git a/types/sequelize/v3/sequelize-tests.ts b/types/sequelize/v3/sequelize-tests.ts index 3cce75b440..8526eca809 100644 --- a/types/sequelize/v3/sequelize-tests.ts +++ b/types/sequelize/v3/sequelize-tests.ts @@ -1601,6 +1601,18 @@ s.transaction().then( function( t ) { } ); + +s.transaction({ + isolationLevel: s.Transaction.ISOLATION_LEVELS.READ_COMMITTED + }).then(function(t2) { + return User.find({ + where: { + username: 'jan' + }, + lock: t2.LOCK.UPDATE, + transaction: t2 + }); + }); s.transaction( function() { return Promise.resolve(); } );