typeorm 0.3.18-dev.022d2b5 → 0.3.18-dev.0f11739

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (268) hide show
  1. package/browser/data-source/BaseDataSourceOptions.d.ts +4 -0
  2. package/browser/data-source/BaseDataSourceOptions.js.map +1 -1
  3. package/browser/data-source/DataSource.d.ts +4 -0
  4. package/browser/data-source/DataSource.js +14 -0
  5. package/browser/data-source/DataSource.js.map +1 -1
  6. package/browser/decorator/Index.js +1 -0
  7. package/browser/decorator/Index.js.map +1 -1
  8. package/browser/decorator/options/IndexOptions.d.ts +5 -0
  9. package/browser/decorator/options/IndexOptions.js.map +1 -1
  10. package/browser/driver/Driver.d.ts +4 -0
  11. package/browser/driver/Driver.js.map +1 -1
  12. package/browser/driver/aurora-mysql/AuroraMysqlQueryRunner.js +9 -6
  13. package/browser/driver/aurora-mysql/AuroraMysqlQueryRunner.js.map +1 -1
  14. package/browser/driver/aurora-postgres/AuroraPostgresQueryRunner.js +9 -6
  15. package/browser/driver/aurora-postgres/AuroraPostgresQueryRunner.js.map +1 -1
  16. package/browser/driver/cockroachdb/CockroachConnectionOptions.d.ts +6 -0
  17. package/browser/driver/cockroachdb/CockroachConnectionOptions.js.map +1 -1
  18. package/browser/driver/cockroachdb/CockroachDriver.d.ts +4 -0
  19. package/browser/driver/cockroachdb/CockroachDriver.js +10 -1
  20. package/browser/driver/cockroachdb/CockroachDriver.js.map +1 -1
  21. package/browser/driver/cockroachdb/CockroachQueryRunner.d.ts +6 -1
  22. package/browser/driver/cockroachdb/CockroachQueryRunner.js +38 -17
  23. package/browser/driver/cockroachdb/CockroachQueryRunner.js.map +1 -1
  24. package/browser/driver/mongodb/MongoQueryRunner.d.ts +3 -3
  25. package/browser/driver/mongodb/MongoQueryRunner.js.map +1 -1
  26. package/browser/driver/mongodb/typings.d.ts +3 -3
  27. package/browser/driver/mongodb/typings.js.map +1 -1
  28. package/browser/driver/mysql/MysqlConnectionOptions.d.ts +6 -0
  29. package/browser/driver/mysql/MysqlConnectionOptions.js.map +1 -1
  30. package/browser/driver/mysql/MysqlQueryRunner.js +9 -6
  31. package/browser/driver/mysql/MysqlQueryRunner.js.map +1 -1
  32. package/browser/driver/oracle/OracleConnectionOptions.d.ts +14 -0
  33. package/browser/driver/oracle/OracleConnectionOptions.js.map +1 -1
  34. package/browser/driver/oracle/OracleDriver.d.ts +4 -0
  35. package/browser/driver/oracle/OracleDriver.js +17 -2
  36. package/browser/driver/oracle/OracleDriver.js.map +1 -1
  37. package/browser/driver/oracle/OracleQueryRunner.js +40 -6
  38. package/browser/driver/oracle/OracleQueryRunner.js.map +1 -1
  39. package/browser/driver/postgres/PostgresConnectionCredentialsOptions.d.ts +5 -0
  40. package/browser/driver/postgres/PostgresConnectionCredentialsOptions.js.map +1 -1
  41. package/browser/driver/postgres/PostgresConnectionOptions.d.ts +6 -5
  42. package/browser/driver/postgres/PostgresConnectionOptions.js.map +1 -1
  43. package/browser/driver/postgres/PostgresDriver.d.ts +4 -0
  44. package/browser/driver/postgres/PostgresDriver.js +13 -4
  45. package/browser/driver/postgres/PostgresDriver.js.map +1 -1
  46. package/browser/driver/postgres/PostgresQueryRunner.js +38 -23
  47. package/browser/driver/postgres/PostgresQueryRunner.js.map +1 -1
  48. package/browser/driver/sap/SapDriver.d.ts +8 -0
  49. package/browser/driver/sap/SapDriver.js +14 -3
  50. package/browser/driver/sap/SapDriver.js.map +1 -1
  51. package/browser/driver/sap/SapQueryRunner.d.ts +5 -14
  52. package/browser/driver/sap/SapQueryRunner.js +65 -61
  53. package/browser/driver/sap/SapQueryRunner.js.map +1 -1
  54. package/browser/driver/spanner/SpannerConnectionOptions.d.ts +6 -0
  55. package/browser/driver/spanner/SpannerConnectionOptions.js.map +1 -1
  56. package/browser/driver/spanner/SpannerDriver.d.ts +4 -0
  57. package/browser/driver/spanner/SpannerDriver.js +10 -1
  58. package/browser/driver/spanner/SpannerDriver.js.map +1 -1
  59. package/browser/driver/sqlite-abstract/AbstractSqliteQueryRunner.js +10 -16
  60. package/browser/driver/sqlite-abstract/AbstractSqliteQueryRunner.js.map +1 -1
  61. package/browser/driver/sqlserver/SqlServerConnectionOptions.d.ts +6 -5
  62. package/browser/driver/sqlserver/SqlServerConnectionOptions.js.map +1 -1
  63. package/browser/driver/sqlserver/SqlServerDriver.d.ts +4 -0
  64. package/browser/driver/sqlserver/SqlServerDriver.js +10 -1
  65. package/browser/driver/sqlserver/SqlServerDriver.js.map +1 -1
  66. package/browser/driver/sqlserver/SqlServerQueryRunner.js +6 -5
  67. package/browser/driver/sqlserver/SqlServerQueryRunner.js.map +1 -1
  68. package/browser/entity-manager/EntityManager.d.ts +5 -1
  69. package/browser/entity-manager/EntityManager.js +10 -1
  70. package/browser/entity-manager/EntityManager.js.map +1 -1
  71. package/browser/entity-manager/MongoEntityManager.d.ts +8 -4
  72. package/browser/entity-manager/MongoEntityManager.js +12 -10
  73. package/browser/entity-manager/MongoEntityManager.js.map +1 -1
  74. package/browser/entity-schema/EntitySchemaOptions.d.ts +4 -0
  75. package/browser/entity-schema/EntitySchemaOptions.js.map +1 -1
  76. package/browser/entity-schema/EntitySchemaTransformer.js +7 -0
  77. package/browser/entity-schema/EntitySchemaTransformer.js.map +1 -1
  78. package/browser/error/EntityNotFoundError.d.ts +2 -0
  79. package/browser/error/EntityNotFoundError.js +2 -0
  80. package/browser/error/EntityNotFoundError.js.map +1 -1
  81. package/browser/find-options/FindOptionsWhere.d.ts +1 -1
  82. package/browser/find-options/FindOptionsWhere.js.map +1 -1
  83. package/browser/logger/AbstractLogger.js +1 -1
  84. package/browser/logger/AbstractLogger.js.map +1 -1
  85. package/browser/metadata/IndexMetadata.d.ts +5 -0
  86. package/browser/metadata/IndexMetadata.js +1 -0
  87. package/browser/metadata/IndexMetadata.js.map +1 -1
  88. package/browser/metadata-args/IndexMetadataArgs.d.ts +5 -0
  89. package/browser/metadata-args/IndexMetadataArgs.js.map +1 -1
  90. package/browser/metadata-builder/EntityMetadataBuilder.js +22 -0
  91. package/browser/metadata-builder/EntityMetadataBuilder.js.map +1 -1
  92. package/browser/persistence/SubjectExecutor.js +4 -1
  93. package/browser/persistence/SubjectExecutor.js.map +1 -1
  94. package/browser/persistence/subject-builder/ManyToManySubjectBuilder.js +6 -2
  95. package/browser/persistence/subject-builder/ManyToManySubjectBuilder.js.map +1 -1
  96. package/browser/platform/BrowserPlatformTools.js +3 -2
  97. package/browser/platform/BrowserPlatformTools.js.map +1 -1
  98. package/browser/platform/PlatformTools.js +2 -0
  99. package/browser/platform/PlatformTools.js.map +1 -1
  100. package/browser/query-builder/InsertQueryBuilder.js +19 -6
  101. package/browser/query-builder/InsertQueryBuilder.js.map +1 -1
  102. package/browser/query-builder/QueryBuilder.d.ts +5 -0
  103. package/browser/query-builder/QueryBuilder.js +26 -23
  104. package/browser/query-builder/QueryBuilder.js.map +1 -1
  105. package/browser/query-builder/SelectQueryBuilder.js +13 -3
  106. package/browser/query-builder/SelectQueryBuilder.js.map +1 -1
  107. package/browser/query-builder/index.d.ts +1 -0
  108. package/browser/query-builder/index.js +17 -0
  109. package/browser/query-builder/index.js.map +1 -0
  110. package/browser/repository/BaseEntity.d.ts +12 -0
  111. package/browser/repository/BaseEntity.js +12 -0
  112. package/browser/repository/BaseEntity.js.map +1 -1
  113. package/browser/repository/MongoRepository.d.ts +8 -4
  114. package/browser/repository/MongoRepository.js +6 -0
  115. package/browser/repository/MongoRepository.js.map +1 -1
  116. package/browser/repository/Repository.d.ts +13 -1
  117. package/browser/repository/Repository.js +17 -1
  118. package/browser/repository/Repository.js.map +1 -1
  119. package/browser/schema-builder/options/TableIndexOptions.d.ts +5 -0
  120. package/browser/schema-builder/options/TableIndexOptions.js.map +1 -1
  121. package/browser/schema-builder/table/TableIndex.d.ts +5 -0
  122. package/browser/schema-builder/table/TableIndex.js +3 -0
  123. package/browser/schema-builder/table/TableIndex.js.map +1 -1
  124. package/browser/subscriber/Broadcaster.d.ts +1 -1
  125. package/browser/subscriber/Broadcaster.js +2 -1
  126. package/browser/subscriber/Broadcaster.js.map +1 -1
  127. package/browser/subscriber/event/InsertEvent.d.ts +5 -0
  128. package/browser/subscriber/event/InsertEvent.js.map +1 -1
  129. package/browser/util/DateUtils.js +4 -2
  130. package/browser/util/DateUtils.js.map +1 -1
  131. package/browser/util/OrmUtils.d.ts +6 -0
  132. package/browser/util/OrmUtils.js +66 -0
  133. package/browser/util/OrmUtils.js.map +1 -1
  134. package/commands/MigrationGenerateCommand.js +3 -1
  135. package/commands/MigrationGenerateCommand.js.map +1 -1
  136. package/data-source/BaseDataSourceOptions.d.ts +4 -0
  137. package/data-source/BaseDataSourceOptions.js.map +1 -1
  138. package/data-source/DataSource.d.ts +4 -0
  139. package/data-source/DataSource.js +14 -0
  140. package/data-source/DataSource.js.map +1 -1
  141. package/decorator/Index.js +1 -0
  142. package/decorator/Index.js.map +1 -1
  143. package/decorator/options/IndexOptions.d.ts +5 -0
  144. package/decorator/options/IndexOptions.js.map +1 -1
  145. package/driver/Driver.d.ts +4 -0
  146. package/driver/Driver.js.map +1 -1
  147. package/driver/aurora-mysql/AuroraMysqlQueryRunner.js +9 -6
  148. package/driver/aurora-mysql/AuroraMysqlQueryRunner.js.map +1 -1
  149. package/driver/aurora-postgres/AuroraPostgresQueryRunner.js +9 -6
  150. package/driver/aurora-postgres/AuroraPostgresQueryRunner.js.map +1 -1
  151. package/driver/cockroachdb/CockroachConnectionOptions.d.ts +6 -0
  152. package/driver/cockroachdb/CockroachConnectionOptions.js.map +1 -1
  153. package/driver/cockroachdb/CockroachDriver.d.ts +4 -0
  154. package/driver/cockroachdb/CockroachDriver.js +10 -1
  155. package/driver/cockroachdb/CockroachDriver.js.map +1 -1
  156. package/driver/cockroachdb/CockroachQueryRunner.d.ts +6 -1
  157. package/driver/cockroachdb/CockroachQueryRunner.js +38 -17
  158. package/driver/cockroachdb/CockroachQueryRunner.js.map +1 -1
  159. package/driver/mongodb/MongoQueryRunner.d.ts +3 -3
  160. package/driver/mongodb/MongoQueryRunner.js.map +1 -1
  161. package/driver/mongodb/typings.d.ts +3 -3
  162. package/driver/mongodb/typings.js.map +1 -1
  163. package/driver/mysql/MysqlConnectionOptions.d.ts +6 -0
  164. package/driver/mysql/MysqlConnectionOptions.js.map +1 -1
  165. package/driver/mysql/MysqlQueryRunner.js +9 -6
  166. package/driver/mysql/MysqlQueryRunner.js.map +1 -1
  167. package/driver/oracle/OracleConnectionOptions.d.ts +14 -0
  168. package/driver/oracle/OracleConnectionOptions.js.map +1 -1
  169. package/driver/oracle/OracleDriver.d.ts +4 -0
  170. package/driver/oracle/OracleDriver.js +17 -2
  171. package/driver/oracle/OracleDriver.js.map +1 -1
  172. package/driver/oracle/OracleQueryRunner.js +40 -6
  173. package/driver/oracle/OracleQueryRunner.js.map +1 -1
  174. package/driver/postgres/PostgresConnectionCredentialsOptions.d.ts +5 -0
  175. package/driver/postgres/PostgresConnectionCredentialsOptions.js.map +1 -1
  176. package/driver/postgres/PostgresConnectionOptions.d.ts +6 -5
  177. package/driver/postgres/PostgresConnectionOptions.js.map +1 -1
  178. package/driver/postgres/PostgresDriver.d.ts +4 -0
  179. package/driver/postgres/PostgresDriver.js +13 -4
  180. package/driver/postgres/PostgresDriver.js.map +1 -1
  181. package/driver/postgres/PostgresQueryRunner.js +38 -23
  182. package/driver/postgres/PostgresQueryRunner.js.map +1 -1
  183. package/driver/sap/SapDriver.d.ts +8 -0
  184. package/driver/sap/SapDriver.js +15 -4
  185. package/driver/sap/SapDriver.js.map +1 -1
  186. package/driver/sap/SapQueryRunner.d.ts +5 -14
  187. package/driver/sap/SapQueryRunner.js +65 -61
  188. package/driver/sap/SapQueryRunner.js.map +1 -1
  189. package/driver/spanner/SpannerConnectionOptions.d.ts +6 -0
  190. package/driver/spanner/SpannerConnectionOptions.js.map +1 -1
  191. package/driver/spanner/SpannerDriver.d.ts +4 -0
  192. package/driver/spanner/SpannerDriver.js +10 -1
  193. package/driver/spanner/SpannerDriver.js.map +1 -1
  194. package/driver/sqlite-abstract/AbstractSqliteQueryRunner.js +10 -16
  195. package/driver/sqlite-abstract/AbstractSqliteQueryRunner.js.map +1 -1
  196. package/driver/sqlserver/SqlServerConnectionOptions.d.ts +6 -5
  197. package/driver/sqlserver/SqlServerConnectionOptions.js.map +1 -1
  198. package/driver/sqlserver/SqlServerDriver.d.ts +4 -0
  199. package/driver/sqlserver/SqlServerDriver.js +10 -1
  200. package/driver/sqlserver/SqlServerDriver.js.map +1 -1
  201. package/driver/sqlserver/SqlServerQueryRunner.js +6 -5
  202. package/driver/sqlserver/SqlServerQueryRunner.js.map +1 -1
  203. package/entity-manager/EntityManager.d.ts +5 -1
  204. package/entity-manager/EntityManager.js +10 -1
  205. package/entity-manager/EntityManager.js.map +1 -1
  206. package/entity-manager/MongoEntityManager.d.ts +8 -4
  207. package/entity-manager/MongoEntityManager.js +12 -10
  208. package/entity-manager/MongoEntityManager.js.map +1 -1
  209. package/entity-schema/EntitySchemaOptions.d.ts +4 -0
  210. package/entity-schema/EntitySchemaOptions.js.map +1 -1
  211. package/entity-schema/EntitySchemaTransformer.js +7 -0
  212. package/entity-schema/EntitySchemaTransformer.js.map +1 -1
  213. package/error/EntityNotFoundError.d.ts +2 -0
  214. package/error/EntityNotFoundError.js +2 -0
  215. package/error/EntityNotFoundError.js.map +1 -1
  216. package/find-options/FindOptionsWhere.d.ts +1 -1
  217. package/find-options/FindOptionsWhere.js.map +1 -1
  218. package/logger/AbstractLogger.js +1 -1
  219. package/logger/AbstractLogger.js.map +1 -1
  220. package/metadata/IndexMetadata.d.ts +5 -0
  221. package/metadata/IndexMetadata.js +1 -0
  222. package/metadata/IndexMetadata.js.map +1 -1
  223. package/metadata-args/IndexMetadataArgs.d.ts +5 -0
  224. package/metadata-args/IndexMetadataArgs.js.map +1 -1
  225. package/metadata-builder/EntityMetadataBuilder.js +22 -0
  226. package/metadata-builder/EntityMetadataBuilder.js.map +1 -1
  227. package/package.json +1 -1
  228. package/persistence/SubjectExecutor.js +4 -1
  229. package/persistence/SubjectExecutor.js.map +1 -1
  230. package/persistence/subject-builder/ManyToManySubjectBuilder.js +6 -2
  231. package/persistence/subject-builder/ManyToManySubjectBuilder.js.map +1 -1
  232. package/platform/PlatformTools.js +2 -0
  233. package/platform/PlatformTools.js.map +1 -1
  234. package/query-builder/InsertQueryBuilder.js +19 -6
  235. package/query-builder/InsertQueryBuilder.js.map +1 -1
  236. package/query-builder/QueryBuilder.d.ts +5 -0
  237. package/query-builder/QueryBuilder.js +26 -23
  238. package/query-builder/QueryBuilder.js.map +1 -1
  239. package/query-builder/SelectQueryBuilder.js +13 -3
  240. package/query-builder/SelectQueryBuilder.js.map +1 -1
  241. package/query-builder/index.d.ts +1 -0
  242. package/query-builder/index.js +21 -0
  243. package/query-builder/index.js.map +1 -0
  244. package/repository/BaseEntity.d.ts +12 -0
  245. package/repository/BaseEntity.js +12 -0
  246. package/repository/BaseEntity.js.map +1 -1
  247. package/repository/MongoRepository.d.ts +8 -4
  248. package/repository/MongoRepository.js +6 -0
  249. package/repository/MongoRepository.js.map +1 -1
  250. package/repository/Repository.d.ts +13 -1
  251. package/repository/Repository.js +17 -1
  252. package/repository/Repository.js.map +1 -1
  253. package/schema-builder/options/TableIndexOptions.d.ts +5 -0
  254. package/schema-builder/options/TableIndexOptions.js.map +1 -1
  255. package/schema-builder/table/TableIndex.d.ts +5 -0
  256. package/schema-builder/table/TableIndex.js +3 -0
  257. package/schema-builder/table/TableIndex.js.map +1 -1
  258. package/subscriber/Broadcaster.d.ts +1 -1
  259. package/subscriber/Broadcaster.js +2 -1
  260. package/subscriber/Broadcaster.js.map +1 -1
  261. package/subscriber/event/InsertEvent.d.ts +5 -0
  262. package/subscriber/event/InsertEvent.js.map +1 -1
  263. package/typeorm-model-shim.js +61 -53
  264. package/util/DateUtils.js +5 -2
  265. package/util/DateUtils.js.map +1 -1
  266. package/util/OrmUtils.d.ts +6 -0
  267. package/util/OrmUtils.js +66 -0
  268. package/util/OrmUtils.js.map +1 -1
@@ -62,7 +62,12 @@ export class CockroachQueryRunner extends BaseQueryRunner {
62
62
  .then(([connection, release]) => {
63
63
  this.driver.connectedQueryRunners.push(this);
64
64
  this.databaseConnection = connection;
65
- this.releaseCallback = release;
65
+ const onErrorCallback = (err) => this.releaseConnection(err);
66
+ this.releaseCallback = (err) => {
67
+ this.databaseConnection.removeListener("error", onErrorCallback);
68
+ release(err);
69
+ };
70
+ this.databaseConnection.on("error", onErrorCallback);
66
71
  return this.databaseConnection;
67
72
  });
68
73
  }
@@ -73,27 +78,41 @@ export class CockroachQueryRunner extends BaseQueryRunner {
73
78
  .then(([connection, release]) => {
74
79
  this.driver.connectedQueryRunners.push(this);
75
80
  this.databaseConnection = connection;
76
- this.releaseCallback = release;
81
+ const onErrorCallback = (err) => this.releaseConnection(err);
82
+ this.releaseCallback = (err) => {
83
+ this.databaseConnection.removeListener("error", onErrorCallback);
84
+ release(err);
85
+ };
86
+ this.databaseConnection.on("error", onErrorCallback);
77
87
  return this.databaseConnection;
78
88
  });
79
89
  }
80
90
  return this.databaseConnectionPromise;
81
91
  }
82
92
  /**
83
- * Releases used database connection.
84
- * You cannot use query runner methods once its released.
93
+ * Release a connection back to the pool, optionally specifying an Error to release with.
94
+ * Per pg-pool documentation this will prevent the pool from re-using the broken connection.
85
95
  */
86
- release() {
96
+ async releaseConnection(err) {
87
97
  if (this.isReleased) {
88
- return Promise.resolve();
98
+ return;
89
99
  }
90
100
  this.isReleased = true;
91
- if (this.releaseCallback)
92
- this.releaseCallback();
101
+ if (this.releaseCallback) {
102
+ this.releaseCallback(err);
103
+ this.releaseCallback = undefined;
104
+ }
93
105
  const index = this.driver.connectedQueryRunners.indexOf(this);
94
- if (index !== -1)
95
- this.driver.connectedQueryRunners.splice(index);
96
- return Promise.resolve();
106
+ if (index !== -1) {
107
+ this.driver.connectedQueryRunners.splice(index, 1);
108
+ }
109
+ }
110
+ /**
111
+ * Releases used database connection.
112
+ * You cannot use query runner methods once its released.
113
+ */
114
+ release() {
115
+ return this.releaseConnection();
97
116
  }
98
117
  /**
99
118
  * Starts transaction.
@@ -109,6 +128,7 @@ export class CockroachQueryRunner extends BaseQueryRunner {
109
128
  throw err;
110
129
  }
111
130
  if (this.transactionDepth === 0) {
131
+ this.transactionDepth += 1;
112
132
  await this.query("START TRANSACTION");
113
133
  await this.query("SAVEPOINT cockroach_restart");
114
134
  if (isolationLevel) {
@@ -116,9 +136,9 @@ export class CockroachQueryRunner extends BaseQueryRunner {
116
136
  }
117
137
  }
118
138
  else {
119
- await this.query(`SAVEPOINT typeorm_${this.transactionDepth}`);
139
+ this.transactionDepth += 1;
140
+ await this.query(`SAVEPOINT typeorm_${this.transactionDepth - 1}`);
120
141
  }
121
- this.transactionDepth += 1;
122
142
  this.storeQueries = true;
123
143
  await this.broadcaster.broadcast("AfterTransactionStart");
124
144
  }
@@ -131,17 +151,17 @@ export class CockroachQueryRunner extends BaseQueryRunner {
131
151
  throw new TransactionNotStartedError();
132
152
  await this.broadcaster.broadcast("BeforeTransactionCommit");
133
153
  if (this.transactionDepth > 1) {
134
- await this.query(`RELEASE SAVEPOINT typeorm_${this.transactionDepth - 1}`);
135
154
  this.transactionDepth -= 1;
155
+ await this.query(`RELEASE SAVEPOINT typeorm_${this.transactionDepth}`);
136
156
  }
137
157
  else {
138
158
  this.storeQueries = false;
159
+ this.transactionDepth -= 1;
139
160
  await this.query("RELEASE SAVEPOINT cockroach_restart");
140
161
  await this.query("COMMIT");
141
162
  this.queries = [];
142
163
  this.isTransactionActive = false;
143
164
  this.transactionRetries = 0;
144
- this.transactionDepth -= 1;
145
165
  }
146
166
  await this.broadcaster.broadcast("AfterTransactionCommit");
147
167
  }
@@ -154,16 +174,17 @@ export class CockroachQueryRunner extends BaseQueryRunner {
154
174
  throw new TransactionNotStartedError();
155
175
  await this.broadcaster.broadcast("BeforeTransactionRollback");
156
176
  if (this.transactionDepth > 1) {
157
- await this.query(`ROLLBACK TO SAVEPOINT typeorm_${this.transactionDepth - 1}`);
177
+ this.transactionDepth -= 1;
178
+ await this.query(`ROLLBACK TO SAVEPOINT typeorm_${this.transactionDepth}`);
158
179
  }
159
180
  else {
160
181
  this.storeQueries = false;
182
+ this.transactionDepth -= 1;
161
183
  await this.query("ROLLBACK");
162
184
  this.queries = [];
163
185
  this.isTransactionActive = false;
164
186
  this.transactionRetries = 0;
165
187
  }
166
- this.transactionDepth -= 1;
167
188
  await this.broadcaster.broadcast("AfterTransactionRollback");
168
189
  }
169
190
  /**