typeorm 0.3.22-dev.206af0a → 0.3.22-dev.3d79786

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 (296) hide show
  1. package/browser/cache/DbQueryResultCache.js +1 -1
  2. package/browser/cache/DbQueryResultCache.js.map +1 -1
  3. package/browser/connection/ConnectionOptionsReader.js +5 -9
  4. package/browser/connection/ConnectionOptionsReader.js.map +1 -1
  5. package/browser/data-source/DataSource.js +2 -2
  6. package/browser/data-source/DataSource.js.map +1 -1
  7. package/browser/decorator/relations/RelationCount.d.ts +2 -1
  8. package/browser/decorator/relations/RelationCount.js +2 -1
  9. package/browser/decorator/relations/RelationCount.js.map +1 -1
  10. package/browser/driver/DriverUtils.js +4 -5
  11. package/browser/driver/DriverUtils.js.map +1 -1
  12. package/browser/driver/aurora-mysql/AuroraMysqlDriver.js +3 -3
  13. package/browser/driver/aurora-mysql/AuroraMysqlDriver.js.map +1 -1
  14. package/browser/driver/aurora-mysql/AuroraMysqlQueryRunner.js +7 -10
  15. package/browser/driver/aurora-mysql/AuroraMysqlQueryRunner.js.map +1 -1
  16. package/browser/driver/aurora-postgres/AuroraPostgresQueryRunner.js +6 -9
  17. package/browser/driver/aurora-postgres/AuroraPostgresQueryRunner.js.map +1 -1
  18. package/browser/driver/cockroachdb/CockroachDriver.js +6 -8
  19. package/browser/driver/cockroachdb/CockroachDriver.js.map +1 -1
  20. package/browser/driver/cockroachdb/CockroachQueryRunner.d.ts +1 -1
  21. package/browser/driver/cockroachdb/CockroachQueryRunner.js +14 -15
  22. package/browser/driver/cockroachdb/CockroachQueryRunner.js.map +1 -1
  23. package/browser/driver/cordova/CordovaQueryRunner.js +1 -1
  24. package/browser/driver/cordova/CordovaQueryRunner.js.map +1 -1
  25. package/browser/driver/expo/ExpoQueryRunner.js +1 -1
  26. package/browser/driver/expo/ExpoQueryRunner.js.map +1 -1
  27. package/browser/driver/mongodb/MongoConnectionOptions.d.ts +111 -142
  28. package/browser/driver/mongodb/MongoConnectionOptions.js.map +1 -1
  29. package/browser/driver/mongodb/MongoDriver.d.ts +2 -3
  30. package/browser/driver/mongodb/MongoDriver.js +57 -65
  31. package/browser/driver/mongodb/MongoDriver.js.map +1 -1
  32. package/browser/driver/mysql/MysqlDriver.js +10 -12
  33. package/browser/driver/mysql/MysqlDriver.js.map +1 -1
  34. package/browser/driver/mysql/MysqlQueryRunner.d.ts +1 -1
  35. package/browser/driver/mysql/MysqlQueryRunner.js +15 -12
  36. package/browser/driver/mysql/MysqlQueryRunner.js.map +1 -1
  37. package/browser/driver/oracle/OracleDriver.js +3 -3
  38. package/browser/driver/oracle/OracleDriver.js.map +1 -1
  39. package/browser/driver/oracle/OracleQueryRunner.js +6 -8
  40. package/browser/driver/oracle/OracleQueryRunner.js.map +1 -1
  41. package/browser/driver/postgres/PostgresDriver.d.ts +2 -1
  42. package/browser/driver/postgres/PostgresDriver.js +15 -20
  43. package/browser/driver/postgres/PostgresDriver.js.map +1 -1
  44. package/browser/driver/postgres/PostgresQueryRunner.d.ts +1 -1
  45. package/browser/driver/postgres/PostgresQueryRunner.js +18 -17
  46. package/browser/driver/postgres/PostgresQueryRunner.js.map +1 -1
  47. package/browser/driver/react-native/ReactNativeDriver.js +1 -1
  48. package/browser/driver/react-native/ReactNativeDriver.js.map +1 -1
  49. package/browser/driver/react-native/ReactNativeQueryRunner.js +1 -1
  50. package/browser/driver/react-native/ReactNativeQueryRunner.js.map +1 -1
  51. package/browser/driver/sap/SapDriver.d.ts +6 -1
  52. package/browser/driver/sap/SapDriver.js +59 -46
  53. package/browser/driver/sap/SapDriver.js.map +1 -1
  54. package/browser/driver/sap/SapQueryRunner.d.ts +7 -0
  55. package/browser/driver/sap/SapQueryRunner.js +19 -22
  56. package/browser/driver/sap/SapQueryRunner.js.map +1 -1
  57. package/browser/driver/spanner/SpannerDriver.js +3 -3
  58. package/browser/driver/spanner/SpannerDriver.js.map +1 -1
  59. package/browser/driver/spanner/SpannerQueryRunner.js +7 -7
  60. package/browser/driver/spanner/SpannerQueryRunner.js.map +1 -1
  61. package/browser/driver/sqlite-abstract/AbstractSqliteDriver.js +1 -1
  62. package/browser/driver/sqlite-abstract/AbstractSqliteDriver.js.map +1 -1
  63. package/browser/driver/sqlite-abstract/AbstractSqliteQueryRunner.js +13 -16
  64. package/browser/driver/sqlite-abstract/AbstractSqliteQueryRunner.js.map +1 -1
  65. package/browser/driver/sqljs/SqljsDriver.js +1 -1
  66. package/browser/driver/sqljs/SqljsDriver.js.map +1 -1
  67. package/browser/driver/sqlserver/SqlServerDriver.js +3 -3
  68. package/browser/driver/sqlserver/SqlServerDriver.js.map +1 -1
  69. package/browser/driver/sqlserver/SqlServerQueryRunner.js +9 -10
  70. package/browser/driver/sqlserver/SqlServerQueryRunner.js.map +1 -1
  71. package/browser/driver/types/ColumnTypes.d.ts +1 -1
  72. package/browser/driver/types/ColumnTypes.js.map +1 -1
  73. package/browser/entity-manager/EntityManager.js.map +1 -1
  74. package/browser/entity-manager/MongoEntityManager.js +1 -1
  75. package/browser/entity-manager/MongoEntityManager.js.map +1 -1
  76. package/browser/find-options/FindOptionsSelect.d.ts +1 -1
  77. package/browser/find-options/FindOptionsSelect.js.map +1 -1
  78. package/browser/find-options/FindOptionsUtils.js +1 -1
  79. package/browser/find-options/FindOptionsUtils.js.map +1 -1
  80. package/browser/index.d.ts +1 -0
  81. package/browser/index.js +1 -0
  82. package/browser/index.js.map +1 -1
  83. package/browser/logger/AdvancedConsoleLogger.js +1 -1
  84. package/browser/logger/AdvancedConsoleLogger.js.map +1 -1
  85. package/browser/logger/DebugLogger.js +1 -1
  86. package/browser/logger/DebugLogger.js.map +1 -1
  87. package/browser/logger/FileLogger.js +1 -1
  88. package/browser/logger/FileLogger.js.map +1 -1
  89. package/browser/logger/SimpleConsoleLogger.js +1 -1
  90. package/browser/logger/SimpleConsoleLogger.js.map +1 -1
  91. package/browser/metadata/ColumnMetadata.js +1 -1
  92. package/browser/metadata/ColumnMetadata.js.map +1 -1
  93. package/browser/metadata/EmbeddedMetadata.js +1 -1
  94. package/browser/metadata/EmbeddedMetadata.js.map +1 -1
  95. package/browser/migration/MigrationExecutor.js +4 -4
  96. package/browser/migration/MigrationExecutor.js.map +1 -1
  97. package/browser/persistence/EntityPersistExecutor.js +2 -2
  98. package/browser/persistence/EntityPersistExecutor.js.map +1 -1
  99. package/browser/persistence/SubjectDatabaseEntityLoader.js +1 -1
  100. package/browser/persistence/SubjectDatabaseEntityLoader.js.map +1 -1
  101. package/browser/persistence/SubjectExecutor.js +1 -1
  102. package/browser/persistence/SubjectExecutor.js.map +1 -1
  103. package/browser/persistence/SubjectTopologicalSorter.js +5 -5
  104. package/browser/persistence/SubjectTopologicalSorter.js.map +1 -1
  105. package/browser/persistence/subject-builder/OneToOneInverseSideSubjectBuilder.js +1 -1
  106. package/browser/persistence/subject-builder/OneToOneInverseSideSubjectBuilder.js.map +1 -1
  107. package/browser/persistence/tree/NestedSetSubjectExecutor.js +2 -2
  108. package/browser/persistence/tree/NestedSetSubjectExecutor.js.map +1 -1
  109. package/browser/query-builder/InsertQueryBuilder.js +2 -1
  110. package/browser/query-builder/InsertQueryBuilder.js.map +1 -1
  111. package/browser/query-builder/JoinAttribute.js +2 -2
  112. package/browser/query-builder/JoinAttribute.js.map +1 -1
  113. package/browser/query-builder/QueryBuilder.js +2 -2
  114. package/browser/query-builder/QueryBuilder.js.map +1 -1
  115. package/browser/query-builder/RelationIdLoader.js +5 -4
  116. package/browser/query-builder/RelationIdLoader.js.map +1 -1
  117. package/browser/query-builder/SelectQueryBuilder.js +27 -14
  118. package/browser/query-builder/SelectQueryBuilder.js.map +1 -1
  119. package/browser/query-builder/SoftDeleteQueryBuilder.js +1 -1
  120. package/browser/query-builder/SoftDeleteQueryBuilder.js.map +1 -1
  121. package/browser/query-builder/UpdateQueryBuilder.js +3 -3
  122. package/browser/query-builder/UpdateQueryBuilder.js.map +1 -1
  123. package/browser/query-builder/transformer/RawSqlResultsToEntityTransformer.js +2 -2
  124. package/browser/query-builder/transformer/RawSqlResultsToEntityTransformer.js.map +1 -1
  125. package/browser/repository/Repository.js.map +1 -1
  126. package/browser/subscriber/event/QueryEvent.d.ts +1 -1
  127. package/browser/subscriber/event/QueryEvent.js.map +1 -1
  128. package/browser/util/DepGraph.js +13 -13
  129. package/browser/util/DepGraph.js.map +1 -1
  130. package/browser/util/DirectoryExportedClassesLoader.js +2 -2
  131. package/browser/util/DirectoryExportedClassesLoader.js.map +1 -1
  132. package/browser/util/InstanceChecker.js.map +1 -1
  133. package/browser/util/ObjectUtils.d.ts +2 -2
  134. package/browser/util/ObjectUtils.js.map +1 -1
  135. package/browser/util/OrmUtils.js +4 -4
  136. package/browser/util/OrmUtils.js.map +1 -1
  137. package/browser/util/RandomGenerator.js +6 -6
  138. package/browser/util/RandomGenerator.js.map +1 -1
  139. package/browser/util/VersionUtils.d.ts +1 -2
  140. package/browser/util/VersionUtils.js +14 -7
  141. package/browser/util/VersionUtils.js.map +1 -1
  142. package/browser/util/escapeRegExp.d.ts +1 -1
  143. package/browser/util/escapeRegExp.js.map +1 -1
  144. package/cache/DbQueryResultCache.js +1 -1
  145. package/cache/DbQueryResultCache.js.map +1 -1
  146. package/commands/CommandUtils.js +1 -0
  147. package/commands/CommandUtils.js.map +1 -1
  148. package/commands/InitCommand.js +37 -43
  149. package/commands/InitCommand.js.map +1 -1
  150. package/commands/MigrationCreateCommand.js +1 -3
  151. package/commands/MigrationCreateCommand.js.map +1 -1
  152. package/commands/MigrationGenerateCommand.js +3 -5
  153. package/commands/MigrationGenerateCommand.js.map +1 -1
  154. package/connection/ConnectionOptionsReader.js +5 -9
  155. package/connection/ConnectionOptionsReader.js.map +1 -1
  156. package/data-source/DataSource.js +2 -2
  157. package/data-source/DataSource.js.map +1 -1
  158. package/decorator/relations/RelationCount.d.ts +2 -1
  159. package/decorator/relations/RelationCount.js +2 -1
  160. package/decorator/relations/RelationCount.js.map +1 -1
  161. package/driver/DriverUtils.js +4 -5
  162. package/driver/DriverUtils.js.map +1 -1
  163. package/driver/aurora-mysql/AuroraMysqlDriver.js +3 -3
  164. package/driver/aurora-mysql/AuroraMysqlDriver.js.map +1 -1
  165. package/driver/aurora-mysql/AuroraMysqlQueryRunner.js +7 -10
  166. package/driver/aurora-mysql/AuroraMysqlQueryRunner.js.map +1 -1
  167. package/driver/aurora-postgres/AuroraPostgresQueryRunner.js +6 -9
  168. package/driver/aurora-postgres/AuroraPostgresQueryRunner.js.map +1 -1
  169. package/driver/cockroachdb/CockroachDriver.js +6 -8
  170. package/driver/cockroachdb/CockroachDriver.js.map +1 -1
  171. package/driver/cockroachdb/CockroachQueryRunner.d.ts +1 -1
  172. package/driver/cockroachdb/CockroachQueryRunner.js +14 -15
  173. package/driver/cockroachdb/CockroachQueryRunner.js.map +1 -1
  174. package/driver/cordova/CordovaQueryRunner.js +1 -1
  175. package/driver/cordova/CordovaQueryRunner.js.map +1 -1
  176. package/driver/expo/ExpoQueryRunner.js +1 -1
  177. package/driver/expo/ExpoQueryRunner.js.map +1 -1
  178. package/driver/mongodb/MongoConnectionOptions.d.ts +111 -142
  179. package/driver/mongodb/MongoConnectionOptions.js.map +1 -1
  180. package/driver/mongodb/MongoDriver.d.ts +2 -3
  181. package/driver/mongodb/MongoDriver.js +57 -65
  182. package/driver/mongodb/MongoDriver.js.map +1 -1
  183. package/driver/mysql/MysqlDriver.js +10 -12
  184. package/driver/mysql/MysqlDriver.js.map +1 -1
  185. package/driver/mysql/MysqlQueryRunner.d.ts +1 -1
  186. package/driver/mysql/MysqlQueryRunner.js +15 -12
  187. package/driver/mysql/MysqlQueryRunner.js.map +1 -1
  188. package/driver/oracle/OracleDriver.js +3 -3
  189. package/driver/oracle/OracleDriver.js.map +1 -1
  190. package/driver/oracle/OracleQueryRunner.js +6 -8
  191. package/driver/oracle/OracleQueryRunner.js.map +1 -1
  192. package/driver/postgres/PostgresDriver.d.ts +2 -1
  193. package/driver/postgres/PostgresDriver.js +15 -20
  194. package/driver/postgres/PostgresDriver.js.map +1 -1
  195. package/driver/postgres/PostgresQueryRunner.d.ts +1 -1
  196. package/driver/postgres/PostgresQueryRunner.js +18 -17
  197. package/driver/postgres/PostgresQueryRunner.js.map +1 -1
  198. package/driver/react-native/ReactNativeDriver.js +1 -1
  199. package/driver/react-native/ReactNativeDriver.js.map +1 -1
  200. package/driver/react-native/ReactNativeQueryRunner.js +1 -1
  201. package/driver/react-native/ReactNativeQueryRunner.js.map +1 -1
  202. package/driver/sap/SapDriver.d.ts +6 -1
  203. package/driver/sap/SapDriver.js +59 -46
  204. package/driver/sap/SapDriver.js.map +1 -1
  205. package/driver/sap/SapQueryRunner.d.ts +7 -0
  206. package/driver/sap/SapQueryRunner.js +19 -22
  207. package/driver/sap/SapQueryRunner.js.map +1 -1
  208. package/driver/spanner/SpannerDriver.js +3 -3
  209. package/driver/spanner/SpannerDriver.js.map +1 -1
  210. package/driver/spanner/SpannerQueryRunner.js +7 -7
  211. package/driver/spanner/SpannerQueryRunner.js.map +1 -1
  212. package/driver/sqlite-abstract/AbstractSqliteDriver.js +1 -1
  213. package/driver/sqlite-abstract/AbstractSqliteDriver.js.map +1 -1
  214. package/driver/sqlite-abstract/AbstractSqliteQueryRunner.js +13 -16
  215. package/driver/sqlite-abstract/AbstractSqliteQueryRunner.js.map +1 -1
  216. package/driver/sqljs/SqljsDriver.js +1 -1
  217. package/driver/sqljs/SqljsDriver.js.map +1 -1
  218. package/driver/sqlserver/SqlServerDriver.js +3 -3
  219. package/driver/sqlserver/SqlServerDriver.js.map +1 -1
  220. package/driver/sqlserver/SqlServerQueryRunner.js +9 -10
  221. package/driver/sqlserver/SqlServerQueryRunner.js.map +1 -1
  222. package/driver/types/ColumnTypes.d.ts +1 -1
  223. package/driver/types/ColumnTypes.js.map +1 -1
  224. package/entity-manager/EntityManager.js.map +1 -1
  225. package/entity-manager/MongoEntityManager.js +1 -1
  226. package/entity-manager/MongoEntityManager.js.map +1 -1
  227. package/find-options/FindOptionsSelect.d.ts +1 -1
  228. package/find-options/FindOptionsSelect.js.map +1 -1
  229. package/find-options/FindOptionsUtils.js +1 -1
  230. package/find-options/FindOptionsUtils.js.map +1 -1
  231. package/index.d.ts +1 -0
  232. package/index.js +1 -0
  233. package/index.js.map +1 -1
  234. package/logger/AdvancedConsoleLogger.js +1 -1
  235. package/logger/AdvancedConsoleLogger.js.map +1 -1
  236. package/logger/DebugLogger.js +1 -1
  237. package/logger/DebugLogger.js.map +1 -1
  238. package/logger/FileLogger.js +1 -1
  239. package/logger/FileLogger.js.map +1 -1
  240. package/logger/SimpleConsoleLogger.js +1 -1
  241. package/logger/SimpleConsoleLogger.js.map +1 -1
  242. package/metadata/ColumnMetadata.js +1 -1
  243. package/metadata/ColumnMetadata.js.map +1 -1
  244. package/metadata/EmbeddedMetadata.js +1 -1
  245. package/metadata/EmbeddedMetadata.js.map +1 -1
  246. package/migration/MigrationExecutor.js +4 -4
  247. package/migration/MigrationExecutor.js.map +1 -1
  248. package/package.json +1 -1
  249. package/persistence/EntityPersistExecutor.js +2 -2
  250. package/persistence/EntityPersistExecutor.js.map +1 -1
  251. package/persistence/SubjectDatabaseEntityLoader.js +1 -1
  252. package/persistence/SubjectDatabaseEntityLoader.js.map +1 -1
  253. package/persistence/SubjectExecutor.js +1 -1
  254. package/persistence/SubjectExecutor.js.map +1 -1
  255. package/persistence/SubjectTopologicalSorter.js +5 -5
  256. package/persistence/SubjectTopologicalSorter.js.map +1 -1
  257. package/persistence/subject-builder/OneToOneInverseSideSubjectBuilder.js +1 -1
  258. package/persistence/subject-builder/OneToOneInverseSideSubjectBuilder.js.map +1 -1
  259. package/persistence/tree/NestedSetSubjectExecutor.js +2 -2
  260. package/persistence/tree/NestedSetSubjectExecutor.js.map +1 -1
  261. package/query-builder/InsertQueryBuilder.js +2 -1
  262. package/query-builder/InsertQueryBuilder.js.map +1 -1
  263. package/query-builder/JoinAttribute.js +2 -2
  264. package/query-builder/JoinAttribute.js.map +1 -1
  265. package/query-builder/QueryBuilder.js +2 -2
  266. package/query-builder/QueryBuilder.js.map +1 -1
  267. package/query-builder/RelationIdLoader.js +5 -4
  268. package/query-builder/RelationIdLoader.js.map +1 -1
  269. package/query-builder/SelectQueryBuilder.js +27 -14
  270. package/query-builder/SelectQueryBuilder.js.map +1 -1
  271. package/query-builder/SoftDeleteQueryBuilder.js +1 -1
  272. package/query-builder/SoftDeleteQueryBuilder.js.map +1 -1
  273. package/query-builder/UpdateQueryBuilder.js +3 -3
  274. package/query-builder/UpdateQueryBuilder.js.map +1 -1
  275. package/query-builder/transformer/RawSqlResultsToEntityTransformer.js +2 -2
  276. package/query-builder/transformer/RawSqlResultsToEntityTransformer.js.map +1 -1
  277. package/repository/Repository.js.map +1 -1
  278. package/subscriber/event/QueryEvent.d.ts +1 -1
  279. package/subscriber/event/QueryEvent.js.map +1 -1
  280. package/typeorm-model-shim.js +4 -1
  281. package/util/DepGraph.js +13 -13
  282. package/util/DepGraph.js.map +1 -1
  283. package/util/DirectoryExportedClassesLoader.js +2 -2
  284. package/util/DirectoryExportedClassesLoader.js.map +1 -1
  285. package/util/InstanceChecker.js.map +1 -1
  286. package/util/ObjectUtils.d.ts +2 -2
  287. package/util/ObjectUtils.js.map +1 -1
  288. package/util/OrmUtils.js +4 -4
  289. package/util/OrmUtils.js.map +1 -1
  290. package/util/RandomGenerator.js +6 -6
  291. package/util/RandomGenerator.js.map +1 -1
  292. package/util/VersionUtils.d.ts +1 -2
  293. package/util/VersionUtils.js +14 -7
  294. package/util/VersionUtils.js.map +1 -1
  295. package/util/escapeRegExp.d.ts +1 -1
  296. package/util/escapeRegExp.js.map +1 -1
@@ -13,12 +13,12 @@ import { TableIndex } from "../../schema-builder/table/TableIndex";
13
13
  import { TableUnique } from "../../schema-builder/table/TableUnique";
14
14
  import { View } from "../../schema-builder/view/View";
15
15
  import { Broadcaster } from "../../subscriber/Broadcaster";
16
+ import { BroadcasterResult } from "../../subscriber/BroadcasterResult";
16
17
  import { InstanceChecker } from "../../util/InstanceChecker";
17
18
  import { OrmUtils } from "../../util/OrmUtils";
18
- import { VersionUtils } from "../../util/VersionUtils";
19
+ import { DriverUtils } from "../DriverUtils";
19
20
  import { Query } from "../Query";
20
21
  import { MetadataTableType } from "../types/MetadataTableType";
21
- import { BroadcasterResult } from "../../subscriber/BroadcasterResult";
22
22
  /**
23
23
  * Runs queries on a single postgres database connection.
24
24
  */
@@ -116,16 +116,15 @@ export class PostgresQueryRunner extends BaseQueryRunner {
116
116
  throw err;
117
117
  }
118
118
  if (this.transactionDepth === 0) {
119
- this.transactionDepth += 1;
120
119
  await this.query("START TRANSACTION");
121
120
  if (isolationLevel) {
122
121
  await this.query("SET TRANSACTION ISOLATION LEVEL " + isolationLevel);
123
122
  }
124
123
  }
125
124
  else {
126
- this.transactionDepth += 1;
127
- await this.query(`SAVEPOINT typeorm_${this.transactionDepth - 1}`);
125
+ await this.query(`SAVEPOINT typeorm_${this.transactionDepth}`);
128
126
  }
127
+ this.transactionDepth += 1;
129
128
  await this.broadcaster.broadcast("AfterTransactionStart");
130
129
  }
131
130
  /**
@@ -137,14 +136,13 @@ export class PostgresQueryRunner extends BaseQueryRunner {
137
136
  throw new TransactionNotStartedError();
138
137
  await this.broadcaster.broadcast("BeforeTransactionCommit");
139
138
  if (this.transactionDepth > 1) {
140
- this.transactionDepth -= 1;
141
- await this.query(`RELEASE SAVEPOINT typeorm_${this.transactionDepth}`);
139
+ await this.query(`RELEASE SAVEPOINT typeorm_${this.transactionDepth - 1}`);
142
140
  }
143
141
  else {
144
- this.transactionDepth -= 1;
145
142
  await this.query("COMMIT");
146
143
  this.isTransactionActive = false;
147
144
  }
145
+ this.transactionDepth -= 1;
148
146
  await this.broadcaster.broadcast("AfterTransactionCommit");
149
147
  }
150
148
  /**
@@ -156,14 +154,13 @@ export class PostgresQueryRunner extends BaseQueryRunner {
156
154
  throw new TransactionNotStartedError();
157
155
  await this.broadcaster.broadcast("BeforeTransactionRollback");
158
156
  if (this.transactionDepth > 1) {
159
- this.transactionDepth -= 1;
160
- await this.query(`ROLLBACK TO SAVEPOINT typeorm_${this.transactionDepth}`);
157
+ await this.query(`ROLLBACK TO SAVEPOINT typeorm_${this.transactionDepth - 1}`);
161
158
  }
162
159
  else {
163
- this.transactionDepth -= 1;
164
160
  await this.query("ROLLBACK");
165
161
  this.isTransactionActive = false;
166
162
  }
163
+ this.transactionDepth -= 1;
167
164
  await this.broadcaster.broadcast("AfterTransactionRollback");
168
165
  }
169
166
  /**
@@ -595,7 +592,7 @@ export class PostgresQueryRunner extends BaseQueryRunner {
595
592
  });
596
593
  // rename ENUM types
597
594
  const enumColumns = newTable.columns.filter((column) => column.type === "enum" || column.type === "simple-enum");
598
- for (let column of enumColumns) {
595
+ for (const column of enumColumns) {
599
596
  // skip renaming for user-defined enum name
600
597
  if (column.enumName)
601
598
  continue;
@@ -1606,7 +1603,6 @@ export class PostgresQueryRunner extends BaseQueryRunner {
1606
1603
  if (!isAnotherTransactionActive)
1607
1604
  await this.startTransaction();
1608
1605
  try {
1609
- const version = await this.getVersion();
1610
1606
  // drop views
1611
1607
  const selectViewDropsQuery = `SELECT 'DROP VIEW IF EXISTS "' || schemaname || '"."' || viewname || '" CASCADE;' as "query" ` +
1612
1608
  `FROM "pg_views" WHERE "schemaname" IN (${schemaNamesString}) AND "viewname" NOT IN ('geography_columns', 'geometry_columns', 'raster_columns', 'raster_overviews')`;
@@ -1614,7 +1610,7 @@ export class PostgresQueryRunner extends BaseQueryRunner {
1614
1610
  await Promise.all(dropViewQueries.map((q) => this.query(q["query"])));
1615
1611
  // drop materialized views
1616
1612
  // Note: materialized views introduced in Postgres 9.3
1617
- if (VersionUtils.isGreaterOrEqual(version, "9.3")) {
1613
+ if (DriverUtils.isReleaseVersionOrGreater(this.driver, "9.3")) {
1618
1614
  const selectMatViewDropsQuery = `SELECT 'DROP MATERIALIZED VIEW IF EXISTS "' || schemaname || '"."' || matviewname || '" CASCADE;' as "query" ` +
1619
1615
  `FROM "pg_matviews" WHERE "schemaname" IN (${schemaNamesString})`;
1620
1616
  const dropMatViewQueries = await this.query(selectMatViewDropsQuery);
@@ -1639,7 +1635,9 @@ export class PostgresQueryRunner extends BaseQueryRunner {
1639
1635
  await this.rollbackTransaction();
1640
1636
  }
1641
1637
  }
1642
- catch (rollbackError) { }
1638
+ catch {
1639
+ // no-op
1640
+ }
1643
1641
  throw error;
1644
1642
  }
1645
1643
  }
@@ -2296,7 +2294,10 @@ export class PostgresQueryRunner extends BaseQueryRunner {
2296
2294
  */
2297
2295
  async getVersion() {
2298
2296
  const result = await this.query(`SELECT version()`);
2299
- return result[0]["version"].replace(/^PostgreSQL ([\d.]+) .*$/, "$1");
2297
+ // Examples:
2298
+ // Postgres: "PostgreSQL 14.10 on x86_64-pc-linux-gnu, compiled by gcc (GCC) 8.5.0 20210514 (Red Hat 8.5.0-20), 64-bit"
2299
+ // Yugabyte: "PostgreSQL 11.2-YB-2.18.1.0-b0 on x86_64-pc-linux-gnu, compiled by clang version 15.0.3 (https://github.com/yugabyte/llvm-project.git 0b8d1183745fd3998d8beffeec8cbe99c1b20529), 64-bit"
2300
+ return result[0].version.replace(/^PostgreSQL ([\d.]+).*$/, "$1");
2300
2301
  }
2301
2302
  /**
2302
2303
  * Builds drop table sql.
@@ -2389,7 +2390,7 @@ export class PostgresQueryRunner extends BaseQueryRunner {
2389
2390
  if (!enumName)
2390
2391
  enumName = this.buildEnumName(table, column);
2391
2392
  const enumValues = column
2392
- .enum.map((value) => `'${value.replace("'", "''")}'`)
2393
+ .enum.map((value) => `'${value.replaceAll("'", "''")}'`)
2393
2394
  .join(", ");
2394
2395
  return new Query(`CREATE TYPE ${enumName} AS ENUM(${enumValues})`);
2395
2396
  }