typeorm 0.2.39-dev.0bc194c → 0.2.39-dev.dd94c9d
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.
- package/browser/driver/aurora-data-api/AuroraDataApiQueryRunner.js +17 -46
- package/browser/driver/aurora-data-api/AuroraDataApiQueryRunner.js.map +1 -1
- package/browser/driver/aurora-data-api-pg/AuroraDataApiPostgresQueryRunner.js +17 -46
- package/browser/driver/aurora-data-api-pg/AuroraDataApiPostgresQueryRunner.js.map +1 -1
- package/browser/driver/cockroachdb/CockroachQueryRunner.js +44 -75
- package/browser/driver/cockroachdb/CockroachQueryRunner.js.map +1 -1
- package/browser/driver/expo/ExpoQueryRunner.js +12 -43
- package/browser/driver/expo/ExpoQueryRunner.js.map +1 -1
- package/browser/driver/mysql/MysqlQueryRunner.js +22 -52
- package/browser/driver/mysql/MysqlQueryRunner.js.map +1 -1
- package/browser/driver/oracle/OracleQueryRunner.js +18 -46
- package/browser/driver/oracle/OracleQueryRunner.js.map +1 -1
- package/browser/driver/postgres/PostgresQueryRunner.js +19 -49
- package/browser/driver/postgres/PostgresQueryRunner.js.map +1 -1
- package/browser/driver/sap/SapQueryRunner.js +18 -48
- package/browser/driver/sap/SapQueryRunner.js.map +1 -1
- package/browser/driver/sqlite-abstract/AbstractSqliteQueryRunner.js +17 -47
- package/browser/driver/sqlite-abstract/AbstractSqliteQueryRunner.js.map +1 -1
- package/browser/driver/sqlserver/SqlServerQueryRunner.js +74 -106
- package/browser/driver/sqlserver/SqlServerQueryRunner.js.map +1 -1
- package/browser/entity-manager/MongoEntityManager.js +8 -13
- package/browser/entity-manager/MongoEntityManager.js.map +1 -1
- package/browser/query-builder/DeleteQueryBuilder.js +3 -10
- package/browser/query-builder/DeleteQueryBuilder.js.map +1 -1
- package/browser/query-builder/InsertQueryBuilder.js +2 -4
- package/browser/query-builder/InsertQueryBuilder.js.map +1 -1
- package/browser/query-builder/SelectQueryBuilder.js +2 -6
- package/browser/query-builder/SelectQueryBuilder.js.map +1 -1
- package/browser/query-builder/SoftDeleteQueryBuilder.js +3 -10
- package/browser/query-builder/SoftDeleteQueryBuilder.js.map +1 -1
- package/browser/query-builder/UpdateQueryBuilder.js +3 -10
- package/browser/query-builder/UpdateQueryBuilder.js.map +1 -1
- package/browser/subscriber/Broadcaster.d.ts +23 -2
- package/browser/subscriber/Broadcaster.js +35 -2
- package/browser/subscriber/Broadcaster.js.map +1 -1
- package/browser/subscriber/BroadcasterResult.d.ts +4 -0
- package/browser/subscriber/BroadcasterResult.js +19 -0
- package/browser/subscriber/BroadcasterResult.js.map +1 -1
- package/cli.js +0 -5
- package/cli.js.map +1 -1
- package/driver/aurora-data-api/AuroraDataApiQueryRunner.js +17 -46
- package/driver/aurora-data-api/AuroraDataApiQueryRunner.js.map +1 -1
- package/driver/aurora-data-api-pg/AuroraDataApiPostgresQueryRunner.js +17 -46
- package/driver/aurora-data-api-pg/AuroraDataApiPostgresQueryRunner.js.map +1 -1
- package/driver/cockroachdb/CockroachQueryRunner.js +44 -75
- package/driver/cockroachdb/CockroachQueryRunner.js.map +1 -1
- package/driver/expo/ExpoQueryRunner.js +12 -43
- package/driver/expo/ExpoQueryRunner.js.map +1 -1
- package/driver/mysql/MysqlQueryRunner.js +22 -52
- package/driver/mysql/MysqlQueryRunner.js.map +1 -1
- package/driver/oracle/OracleQueryRunner.js +18 -46
- package/driver/oracle/OracleQueryRunner.js.map +1 -1
- package/driver/postgres/PostgresQueryRunner.js +19 -49
- package/driver/postgres/PostgresQueryRunner.js.map +1 -1
- package/driver/sap/SapQueryRunner.js +18 -48
- package/driver/sap/SapQueryRunner.js.map +1 -1
- package/driver/sqlite-abstract/AbstractSqliteQueryRunner.js +17 -47
- package/driver/sqlite-abstract/AbstractSqliteQueryRunner.js.map +1 -1
- package/driver/sqlserver/SqlServerQueryRunner.js +74 -106
- package/driver/sqlserver/SqlServerQueryRunner.js.map +1 -1
- package/entity-manager/MongoEntityManager.js +8 -13
- package/entity-manager/MongoEntityManager.js.map +1 -1
- package/package.json +1 -1
- package/query-builder/DeleteQueryBuilder.js +3 -10
- package/query-builder/DeleteQueryBuilder.js.map +1 -1
- package/query-builder/InsertQueryBuilder.js +2 -4
- package/query-builder/InsertQueryBuilder.js.map +1 -1
- package/query-builder/SelectQueryBuilder.js +2 -6
- package/query-builder/SelectQueryBuilder.js.map +1 -1
- package/query-builder/SoftDeleteQueryBuilder.js +3 -10
- package/query-builder/SoftDeleteQueryBuilder.js.map +1 -1
- package/query-builder/UpdateQueryBuilder.js +3 -10
- package/query-builder/UpdateQueryBuilder.js.map +1 -1
- package/subscriber/Broadcaster.d.ts +23 -2
- package/subscriber/Broadcaster.js +35 -2
- package/subscriber/Broadcaster.js.map +1 -1
- package/subscriber/BroadcasterResult.d.ts +4 -0
- package/subscriber/BroadcasterResult.js +19 -0
- package/subscriber/BroadcasterResult.js.map +1 -1
|
@@ -3,7 +3,6 @@ import { QueryRunnerAlreadyReleasedError } from "../../error/QueryRunnerAlreadyR
|
|
|
3
3
|
import { TransactionAlreadyStartedError } from "../../error/TransactionAlreadyStartedError";
|
|
4
4
|
import { TransactionNotStartedError } from "../../error/TransactionNotStartedError";
|
|
5
5
|
import { PostgresQueryRunner } from "../postgres/PostgresQueryRunner";
|
|
6
|
-
import { BroadcasterResult } from "../../subscriber/BroadcasterResult";
|
|
7
6
|
import { QueryResult } from "../../query-runner/QueryResult";
|
|
8
7
|
var PostgresQueryRunnerWrapper = /** @class */ (function (_super) {
|
|
9
8
|
__extends(PostgresQueryRunnerWrapper, _super);
|
|
@@ -63,32 +62,22 @@ var AuroraDataApiPostgresQueryRunner = /** @class */ (function (_super) {
|
|
|
63
62
|
*/
|
|
64
63
|
AuroraDataApiPostgresQueryRunner.prototype.startTransaction = function (isolationLevel) {
|
|
65
64
|
return __awaiter(this, void 0, void 0, function () {
|
|
66
|
-
var beforeBroadcastResult, afterBroadcastResult;
|
|
67
65
|
return __generator(this, function (_a) {
|
|
68
66
|
switch (_a.label) {
|
|
69
67
|
case 0:
|
|
70
68
|
if (this.isTransactionActive)
|
|
71
69
|
throw new TransactionAlreadyStartedError();
|
|
72
|
-
|
|
73
|
-
this.broadcaster.broadcastBeforeTransactionStartEvent(beforeBroadcastResult);
|
|
74
|
-
if (!(beforeBroadcastResult.promises.length > 0)) return [3 /*break*/, 2];
|
|
75
|
-
return [4 /*yield*/, Promise.all(beforeBroadcastResult.promises)];
|
|
70
|
+
return [4 /*yield*/, this.broadcaster.broadcast('BeforeTransactionStart')];
|
|
76
71
|
case 1:
|
|
77
72
|
_a.sent();
|
|
78
|
-
_a.label = 2;
|
|
79
|
-
case 2:
|
|
80
73
|
this.isTransactionActive = true;
|
|
81
74
|
return [4 /*yield*/, this.client.startTransaction()];
|
|
82
|
-
case
|
|
75
|
+
case 2:
|
|
83
76
|
_a.sent();
|
|
84
|
-
|
|
85
|
-
|
|
86
|
-
if (!(afterBroadcastResult.promises.length > 0)) return [3 /*break*/, 5];
|
|
87
|
-
return [4 /*yield*/, Promise.all(afterBroadcastResult.promises)];
|
|
88
|
-
case 4:
|
|
77
|
+
return [4 /*yield*/, this.broadcaster.broadcast('AfterTransactionStart')];
|
|
78
|
+
case 3:
|
|
89
79
|
_a.sent();
|
|
90
|
-
|
|
91
|
-
case 5: return [2 /*return*/];
|
|
80
|
+
return [2 /*return*/];
|
|
92
81
|
}
|
|
93
82
|
});
|
|
94
83
|
});
|
|
@@ -99,31 +88,22 @@ var AuroraDataApiPostgresQueryRunner = /** @class */ (function (_super) {
|
|
|
99
88
|
*/
|
|
100
89
|
AuroraDataApiPostgresQueryRunner.prototype.commitTransaction = function () {
|
|
101
90
|
return __awaiter(this, void 0, void 0, function () {
|
|
102
|
-
var beforeBroadcastResult, afterBroadcastResult;
|
|
103
91
|
return __generator(this, function (_a) {
|
|
104
92
|
switch (_a.label) {
|
|
105
93
|
case 0:
|
|
106
94
|
if (!this.isTransactionActive)
|
|
107
95
|
throw new TransactionNotStartedError();
|
|
108
|
-
|
|
109
|
-
this.broadcaster.broadcastBeforeTransactionCommitEvent(beforeBroadcastResult);
|
|
110
|
-
if (!(beforeBroadcastResult.promises.length > 0)) return [3 /*break*/, 2];
|
|
111
|
-
return [4 /*yield*/, Promise.all(beforeBroadcastResult.promises)];
|
|
96
|
+
return [4 /*yield*/, this.broadcaster.broadcast('BeforeTransactionCommit')];
|
|
112
97
|
case 1:
|
|
113
98
|
_a.sent();
|
|
114
|
-
|
|
115
|
-
case 2:
|
|
116
|
-
case 3:
|
|
99
|
+
return [4 /*yield*/, this.client.commitTransaction()];
|
|
100
|
+
case 2:
|
|
117
101
|
_a.sent();
|
|
118
102
|
this.isTransactionActive = false;
|
|
119
|
-
|
|
120
|
-
|
|
121
|
-
if (!(afterBroadcastResult.promises.length > 0)) return [3 /*break*/, 5];
|
|
122
|
-
return [4 /*yield*/, Promise.all(afterBroadcastResult.promises)];
|
|
123
|
-
case 4:
|
|
103
|
+
return [4 /*yield*/, this.broadcaster.broadcast('AfterTransactionCommit')];
|
|
104
|
+
case 3:
|
|
124
105
|
_a.sent();
|
|
125
|
-
|
|
126
|
-
case 5: return [2 /*return*/];
|
|
106
|
+
return [2 /*return*/];
|
|
127
107
|
}
|
|
128
108
|
});
|
|
129
109
|
});
|
|
@@ -134,30 +114,21 @@ var AuroraDataApiPostgresQueryRunner = /** @class */ (function (_super) {
|
|
|
134
114
|
*/
|
|
135
115
|
AuroraDataApiPostgresQueryRunner.prototype.rollbackTransaction = function () {
|
|
136
116
|
return __awaiter(this, void 0, void 0, function () {
|
|
137
|
-
var beforeBroadcastResult, afterBroadcastResult;
|
|
138
117
|
return __generator(this, function (_a) {
|
|
139
118
|
switch (_a.label) {
|
|
140
119
|
case 0:
|
|
141
120
|
if (!this.isTransactionActive)
|
|
142
121
|
throw new TransactionNotStartedError();
|
|
143
|
-
|
|
144
|
-
this.broadcaster.broadcastBeforeTransactionRollbackEvent(beforeBroadcastResult);
|
|
145
|
-
if (!(beforeBroadcastResult.promises.length > 0)) return [3 /*break*/, 2];
|
|
146
|
-
return [4 /*yield*/, Promise.all(beforeBroadcastResult.promises)];
|
|
122
|
+
return [4 /*yield*/, this.broadcaster.broadcast('BeforeTransactionRollback')];
|
|
147
123
|
case 1:
|
|
148
124
|
_a.sent();
|
|
149
|
-
|
|
150
|
-
case 2:
|
|
151
|
-
case 3:
|
|
125
|
+
return [4 /*yield*/, this.client.rollbackTransaction()];
|
|
126
|
+
case 2:
|
|
152
127
|
_a.sent();
|
|
153
|
-
|
|
154
|
-
|
|
155
|
-
if (!(afterBroadcastResult.promises.length > 0)) return [3 /*break*/, 5];
|
|
156
|
-
return [4 /*yield*/, Promise.all(afterBroadcastResult.promises)];
|
|
157
|
-
case 4:
|
|
128
|
+
return [4 /*yield*/, this.broadcaster.broadcast('AfterTransactionRollback')];
|
|
129
|
+
case 3:
|
|
158
130
|
_a.sent();
|
|
159
|
-
|
|
160
|
-
case 5: return [2 /*return*/];
|
|
131
|
+
return [2 /*return*/];
|
|
161
132
|
}
|
|
162
133
|
});
|
|
163
134
|
});
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../browser/src/driver/aurora-data-api-pg/AuroraDataApiPostgresQueryRunner.ts"],"names":[],"mappings":"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","file":"AuroraDataApiPostgresQueryRunner.js","sourcesContent":["import {QueryRunnerAlreadyReleasedError} from \"../../error/QueryRunnerAlreadyReleasedError\";\nimport {TransactionAlreadyStartedError} from \"../../error/TransactionAlreadyStartedError\";\nimport {TransactionNotStartedError} from \"../../error/TransactionNotStartedError\";\nimport {QueryRunner} from \"../../query-runner/QueryRunner\";\nimport {IsolationLevel} from \"../types/IsolationLevel\";\nimport {AuroraDataApiPostgresDriver} from \"./AuroraDataApiPostgresDriver\";\nimport {PostgresQueryRunner} from \"../postgres/PostgresQueryRunner\";\nimport {ReplicationMode} from \"../types/ReplicationMode\";\nimport {BroadcasterResult} from \"../../subscriber/BroadcasterResult\";\nimport { QueryResult } from \"../../query-runner/QueryResult\";\n\nclass PostgresQueryRunnerWrapper extends PostgresQueryRunner {\n driver: any;\n\n constructor(driver: any, mode: ReplicationMode) {\n super(driver, mode);\n }\n}\n\n/**\n * Runs queries on a single postgres database connection.\n */\nexport class AuroraDataApiPostgresQueryRunner extends PostgresQueryRunnerWrapper implements QueryRunner {\n\n // -------------------------------------------------------------------------\n // Public Implemented Properties\n // -------------------------------------------------------------------------\n\n /**\n * Database driver used by connection.\n */\n driver: AuroraDataApiPostgresDriver;\n\n protected client: any;\n\n // -------------------------------------------------------------------------\n // Protected Properties\n // -------------------------------------------------------------------------\n\n /**\n * Promise used to obtain a database connection for a first time.\n */\n protected databaseConnectionPromise: Promise<any>;\n\n // -------------------------------------------------------------------------\n // Constructor\n // -------------------------------------------------------------------------\n\n constructor(driver: AuroraDataApiPostgresDriver, client: any, mode: ReplicationMode) {\n super(driver, mode);\n\n this.client = client\n }\n\n // -------------------------------------------------------------------------\n // Public Methods\n // -------------------------------------------------------------------------\n\n /**\n * Creates/uses database connection from the connection pool to perform further operations.\n * Returns obtained database connection.\n */\n connect(): Promise<any> {\n if (this.databaseConnection)\n return Promise.resolve(this.databaseConnection);\n\n if (this.databaseConnectionPromise)\n return this.databaseConnectionPromise;\n\n if (this.mode === \"slave\" && this.driver.isReplicated) {\n this.databaseConnectionPromise = this.driver.obtainSlaveConnection().then(([ connection, release]: any[]) => {\n this.driver.connectedQueryRunners.push(this);\n this.databaseConnection = connection;\n this.releaseCallback = release;\n return this.databaseConnection;\n });\n\n } else { // master\n this.databaseConnectionPromise = this.driver.obtainMasterConnection().then(([connection, release]: any[]) => {\n this.driver.connectedQueryRunners.push(this);\n this.databaseConnection = connection;\n this.releaseCallback = release;\n return this.databaseConnection;\n });\n }\n\n return this.databaseConnectionPromise;\n }\n\n /**\n * Starts transaction on the current connection.\n */\n async startTransaction(isolationLevel?: IsolationLevel): Promise<void> {\n if (this.isTransactionActive)\n throw new TransactionAlreadyStartedError();\n\n const beforeBroadcastResult = new BroadcasterResult();\n this.broadcaster.broadcastBeforeTransactionStartEvent(beforeBroadcastResult);\n if (beforeBroadcastResult.promises.length > 0) await Promise.all(beforeBroadcastResult.promises);\n\n this.isTransactionActive = true;\n \n await this.client.startTransaction();\n\n const afterBroadcastResult = new BroadcasterResult();\n this.broadcaster.broadcastAfterTransactionStartEvent(afterBroadcastResult);\n if (afterBroadcastResult.promises.length > 0) await Promise.all(afterBroadcastResult.promises);\n }\n\n /**\n * Commits transaction.\n * Error will be thrown if transaction was not started.\n */\n async commitTransaction(): Promise<void> {\n if (!this.isTransactionActive)\n throw new TransactionNotStartedError();\n \n const beforeBroadcastResult = new BroadcasterResult();\n this.broadcaster.broadcastBeforeTransactionCommitEvent(beforeBroadcastResult);\n if (beforeBroadcastResult.promises.length > 0) await Promise.all(beforeBroadcastResult.promises);\n\n await this.client.commitTransaction();\n\n this.isTransactionActive = false;\n\n const afterBroadcastResult = new BroadcasterResult();\n this.broadcaster.broadcastAfterTransactionCommitEvent(afterBroadcastResult);\n if (afterBroadcastResult.promises.length > 0) await Promise.all(afterBroadcastResult.promises);\n }\n\n /**\n * Rollbacks transaction.\n * Error will be thrown if transaction was not started.\n */\n async rollbackTransaction(): Promise<void> {\n if (!this.isTransactionActive)\n throw new TransactionNotStartedError();\n\n const beforeBroadcastResult = new BroadcasterResult();\n this.broadcaster.broadcastBeforeTransactionRollbackEvent(beforeBroadcastResult);\n if (beforeBroadcastResult.promises.length > 0) await Promise.all(beforeBroadcastResult.promises);\n\n await this.client.rollbackTransaction();\n\n const afterBroadcastResult = new BroadcasterResult();\n this.broadcaster.broadcastAfterTransactionRollbackEvent(afterBroadcastResult);\n if (afterBroadcastResult.promises.length > 0) await Promise.all(afterBroadcastResult.promises);\n }\n\n /**\n * Executes a given SQL query.\n */\n async query(query: string, parameters?: any[], useStructuredResult = false): Promise<any> {\n if (this.isReleased)\n throw new QueryRunnerAlreadyReleasedError();\n\n const raw = await this.client.query(query, parameters);\n\n const result = new QueryResult();\n\n result.raw = raw;\n\n if (raw?.hasOwnProperty('records') && Array.isArray(raw.records)) {\n result.records = raw.records;\n }\n\n if (raw?.hasOwnProperty('numberOfRecordsUpdated')) {\n result.affected = raw.numberOfRecordsUpdated;\n }\n\n if (!useStructuredResult) {\n return result.raw;\n }\n\n return result;\n }\n}\n"],"sourceRoot":"../.."}
|
|
1
|
+
{"version":3,"sources":["../browser/src/driver/aurora-data-api-pg/AuroraDataApiPostgresQueryRunner.ts"],"names":[],"mappings":"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","file":"AuroraDataApiPostgresQueryRunner.js","sourcesContent":["import {QueryRunnerAlreadyReleasedError} from \"../../error/QueryRunnerAlreadyReleasedError\";\nimport {TransactionAlreadyStartedError} from \"../../error/TransactionAlreadyStartedError\";\nimport {TransactionNotStartedError} from \"../../error/TransactionNotStartedError\";\nimport {QueryRunner} from \"../../query-runner/QueryRunner\";\nimport {IsolationLevel} from \"../types/IsolationLevel\";\nimport {AuroraDataApiPostgresDriver} from \"./AuroraDataApiPostgresDriver\";\nimport {PostgresQueryRunner} from \"../postgres/PostgresQueryRunner\";\nimport {ReplicationMode} from \"../types/ReplicationMode\";\nimport { QueryResult } from \"../../query-runner/QueryResult\";\n\nclass PostgresQueryRunnerWrapper extends PostgresQueryRunner {\n driver: any;\n\n constructor(driver: any, mode: ReplicationMode) {\n super(driver, mode);\n }\n}\n\n/**\n * Runs queries on a single postgres database connection.\n */\nexport class AuroraDataApiPostgresQueryRunner extends PostgresQueryRunnerWrapper implements QueryRunner {\n\n // -------------------------------------------------------------------------\n // Public Implemented Properties\n // -------------------------------------------------------------------------\n\n /**\n * Database driver used by connection.\n */\n driver: AuroraDataApiPostgresDriver;\n\n protected client: any;\n\n // -------------------------------------------------------------------------\n // Protected Properties\n // -------------------------------------------------------------------------\n\n /**\n * Promise used to obtain a database connection for a first time.\n */\n protected databaseConnectionPromise: Promise<any>;\n\n // -------------------------------------------------------------------------\n // Constructor\n // -------------------------------------------------------------------------\n\n constructor(driver: AuroraDataApiPostgresDriver, client: any, mode: ReplicationMode) {\n super(driver, mode);\n\n this.client = client\n }\n\n // -------------------------------------------------------------------------\n // Public Methods\n // -------------------------------------------------------------------------\n\n /**\n * Creates/uses database connection from the connection pool to perform further operations.\n * Returns obtained database connection.\n */\n connect(): Promise<any> {\n if (this.databaseConnection)\n return Promise.resolve(this.databaseConnection);\n\n if (this.databaseConnectionPromise)\n return this.databaseConnectionPromise;\n\n if (this.mode === \"slave\" && this.driver.isReplicated) {\n this.databaseConnectionPromise = this.driver.obtainSlaveConnection().then(([ connection, release]: any[]) => {\n this.driver.connectedQueryRunners.push(this);\n this.databaseConnection = connection;\n this.releaseCallback = release;\n return this.databaseConnection;\n });\n\n } else { // master\n this.databaseConnectionPromise = this.driver.obtainMasterConnection().then(([connection, release]: any[]) => {\n this.driver.connectedQueryRunners.push(this);\n this.databaseConnection = connection;\n this.releaseCallback = release;\n return this.databaseConnection;\n });\n }\n\n return this.databaseConnectionPromise;\n }\n\n /**\n * Starts transaction on the current connection.\n */\n async startTransaction(isolationLevel?: IsolationLevel): Promise<void> {\n if (this.isTransactionActive)\n throw new TransactionAlreadyStartedError();\n\n await this.broadcaster.broadcast('BeforeTransactionStart')\n\n this.isTransactionActive = true;\n\n await this.client.startTransaction();\n\n await this.broadcaster.broadcast('AfterTransactionStart')\n }\n\n /**\n * Commits transaction.\n * Error will be thrown if transaction was not started.\n */\n async commitTransaction(): Promise<void> {\n if (!this.isTransactionActive)\n throw new TransactionNotStartedError();\n\n await this.broadcaster.broadcast('BeforeTransactionCommit');\n\n await this.client.commitTransaction();\n\n this.isTransactionActive = false;\n\n await this.broadcaster.broadcast('AfterTransactionCommit');\n }\n\n /**\n * Rollbacks transaction.\n * Error will be thrown if transaction was not started.\n */\n async rollbackTransaction(): Promise<void> {\n if (!this.isTransactionActive)\n throw new TransactionNotStartedError();\n\n await this.broadcaster.broadcast('BeforeTransactionRollback');\n\n await this.client.rollbackTransaction();\n\n await this.broadcaster.broadcast('AfterTransactionRollback');\n }\n\n /**\n * Executes a given SQL query.\n */\n async query(query: string, parameters?: any[], useStructuredResult = false): Promise<any> {\n if (this.isReleased)\n throw new QueryRunnerAlreadyReleasedError();\n\n const raw = await this.client.query(query, parameters);\n\n const result = new QueryResult();\n\n result.raw = raw;\n\n if (raw?.hasOwnProperty('records') && Array.isArray(raw.records)) {\n result.records = raw.records;\n }\n\n if (raw?.hasOwnProperty('numberOfRecordsUpdated')) {\n result.affected = raw.numberOfRecordsUpdated;\n }\n\n if (!useStructuredResult) {\n return result.raw;\n }\n\n return result;\n }\n}\n"],"sourceRoot":"../.."}
|
|
@@ -16,7 +16,6 @@ import { BaseQueryRunner } from "../../query-runner/BaseQueryRunner";
|
|
|
16
16
|
import { OrmUtils } from "../../util/OrmUtils";
|
|
17
17
|
import { TableCheck } from "../../schema-builder/table/TableCheck";
|
|
18
18
|
import { TableExclusion } from "../../schema-builder/table/TableExclusion";
|
|
19
|
-
import { BroadcasterResult } from "../../subscriber/BroadcasterResult";
|
|
20
19
|
import { TypeORMError } from "../../error";
|
|
21
20
|
/**
|
|
22
21
|
* Runs queries on a single postgres database connection.
|
|
@@ -93,42 +92,32 @@ var CockroachQueryRunner = /** @class */ (function (_super) {
|
|
|
93
92
|
*/
|
|
94
93
|
CockroachQueryRunner.prototype.startTransaction = function (isolationLevel) {
|
|
95
94
|
return __awaiter(this, void 0, void 0, function () {
|
|
96
|
-
var beforeBroadcastResult, afterBroadcastResult;
|
|
97
95
|
return __generator(this, function (_a) {
|
|
98
96
|
switch (_a.label) {
|
|
99
97
|
case 0:
|
|
100
98
|
if (this.isTransactionActive)
|
|
101
99
|
throw new TransactionAlreadyStartedError();
|
|
102
|
-
|
|
103
|
-
this.broadcaster.broadcastBeforeTransactionStartEvent(beforeBroadcastResult);
|
|
104
|
-
if (!(beforeBroadcastResult.promises.length > 0)) return [3 /*break*/, 2];
|
|
105
|
-
return [4 /*yield*/, Promise.all(beforeBroadcastResult.promises)];
|
|
100
|
+
return [4 /*yield*/, this.broadcaster.broadcast('BeforeTransactionStart')];
|
|
106
101
|
case 1:
|
|
107
102
|
_a.sent();
|
|
108
|
-
_a.label = 2;
|
|
109
|
-
case 2:
|
|
110
103
|
this.isTransactionActive = true;
|
|
111
104
|
return [4 /*yield*/, this.query("START TRANSACTION")];
|
|
112
|
-
case
|
|
105
|
+
case 2:
|
|
113
106
|
_a.sent();
|
|
114
107
|
return [4 /*yield*/, this.query("SAVEPOINT cockroach_restart")];
|
|
115
|
-
case
|
|
108
|
+
case 3:
|
|
116
109
|
_a.sent();
|
|
117
|
-
if (!isolationLevel) return [3 /*break*/,
|
|
110
|
+
if (!isolationLevel) return [3 /*break*/, 5];
|
|
118
111
|
return [4 /*yield*/, this.query("SET TRANSACTION ISOLATION LEVEL " + isolationLevel)];
|
|
119
|
-
case
|
|
112
|
+
case 4:
|
|
120
113
|
_a.sent();
|
|
121
|
-
_a.label =
|
|
122
|
-
case
|
|
114
|
+
_a.label = 5;
|
|
115
|
+
case 5:
|
|
123
116
|
this.storeQueries = true;
|
|
124
|
-
|
|
125
|
-
|
|
126
|
-
if (!(afterBroadcastResult.promises.length > 0)) return [3 /*break*/, 8];
|
|
127
|
-
return [4 /*yield*/, Promise.all(afterBroadcastResult.promises)];
|
|
128
|
-
case 7:
|
|
117
|
+
return [4 /*yield*/, this.broadcaster.broadcast('AfterTransactionStart')];
|
|
118
|
+
case 6:
|
|
129
119
|
_a.sent();
|
|
130
|
-
|
|
131
|
-
case 8: return [2 /*return*/];
|
|
120
|
+
return [2 /*return*/];
|
|
132
121
|
}
|
|
133
122
|
});
|
|
134
123
|
});
|
|
@@ -139,80 +128,70 @@ var CockroachQueryRunner = /** @class */ (function (_super) {
|
|
|
139
128
|
*/
|
|
140
129
|
CockroachQueryRunner.prototype.commitTransaction = function () {
|
|
141
130
|
return __awaiter(this, void 0, void 0, function () {
|
|
142
|
-
var
|
|
131
|
+
var e_1, _a, _b, q, e_2_1;
|
|
143
132
|
var e_2, _c;
|
|
144
133
|
return __generator(this, function (_d) {
|
|
145
134
|
switch (_d.label) {
|
|
146
135
|
case 0:
|
|
147
136
|
if (!this.isTransactionActive)
|
|
148
137
|
throw new TransactionNotStartedError();
|
|
149
|
-
|
|
150
|
-
this.broadcaster.broadcastBeforeTransactionCommitEvent(beforeBroadcastResult);
|
|
151
|
-
if (!(beforeBroadcastResult.promises.length > 0)) return [3 /*break*/, 2];
|
|
152
|
-
return [4 /*yield*/, Promise.all(beforeBroadcastResult.promises)];
|
|
138
|
+
return [4 /*yield*/, this.broadcaster.broadcast('BeforeTransactionCommit')];
|
|
153
139
|
case 1:
|
|
154
140
|
_d.sent();
|
|
141
|
+
this.storeQueries = false;
|
|
155
142
|
_d.label = 2;
|
|
156
143
|
case 2:
|
|
157
|
-
|
|
158
|
-
_d.label = 3;
|
|
159
|
-
case 3:
|
|
160
|
-
_d.trys.push([3, 6, , 18]);
|
|
144
|
+
_d.trys.push([2, 5, , 17]);
|
|
161
145
|
return [4 /*yield*/, this.query("RELEASE SAVEPOINT cockroach_restart")];
|
|
162
|
-
case
|
|
146
|
+
case 3:
|
|
163
147
|
_d.sent();
|
|
164
148
|
return [4 /*yield*/, this.query("COMMIT")];
|
|
165
|
-
case
|
|
149
|
+
case 4:
|
|
166
150
|
_d.sent();
|
|
167
151
|
this.queries = [];
|
|
168
152
|
this.isTransactionActive = false;
|
|
169
|
-
return [3 /*break*/,
|
|
170
|
-
case
|
|
153
|
+
return [3 /*break*/, 17];
|
|
154
|
+
case 5:
|
|
171
155
|
e_1 = _d.sent();
|
|
172
|
-
if (!(e_1.code === "40001")) return [3 /*break*/,
|
|
156
|
+
if (!(e_1.code === "40001")) return [3 /*break*/, 16];
|
|
173
157
|
return [4 /*yield*/, this.query("ROLLBACK TO SAVEPOINT cockroach_restart")];
|
|
174
|
-
case
|
|
158
|
+
case 6:
|
|
175
159
|
_d.sent();
|
|
160
|
+
_d.label = 7;
|
|
161
|
+
case 7:
|
|
162
|
+
_d.trys.push([7, 12, 13, 14]);
|
|
163
|
+
_a = __values(this.queries), _b = _a.next();
|
|
176
164
|
_d.label = 8;
|
|
177
165
|
case 8:
|
|
178
|
-
|
|
179
|
-
_a = __values(this.queries), _b = _a.next();
|
|
180
|
-
_d.label = 9;
|
|
181
|
-
case 9:
|
|
182
|
-
if (!!_b.done) return [3 /*break*/, 12];
|
|
166
|
+
if (!!_b.done) return [3 /*break*/, 11];
|
|
183
167
|
q = _b.value;
|
|
184
168
|
return [4 /*yield*/, this.query(q.query, q.parameters)];
|
|
185
|
-
case
|
|
169
|
+
case 9:
|
|
186
170
|
_d.sent();
|
|
187
|
-
_d.label =
|
|
188
|
-
case
|
|
171
|
+
_d.label = 10;
|
|
172
|
+
case 10:
|
|
189
173
|
_b = _a.next();
|
|
190
|
-
return [3 /*break*/,
|
|
191
|
-
case
|
|
192
|
-
case
|
|
174
|
+
return [3 /*break*/, 8];
|
|
175
|
+
case 11: return [3 /*break*/, 14];
|
|
176
|
+
case 12:
|
|
193
177
|
e_2_1 = _d.sent();
|
|
194
178
|
e_2 = { error: e_2_1 };
|
|
195
|
-
return [3 /*break*/,
|
|
196
|
-
case
|
|
179
|
+
return [3 /*break*/, 14];
|
|
180
|
+
case 13:
|
|
197
181
|
try {
|
|
198
182
|
if (_b && !_b.done && (_c = _a.return)) _c.call(_a);
|
|
199
183
|
}
|
|
200
184
|
finally { if (e_2) throw e_2.error; }
|
|
201
185
|
return [7 /*endfinally*/];
|
|
202
|
-
case
|
|
203
|
-
case
|
|
186
|
+
case 14: return [4 /*yield*/, this.commitTransaction()];
|
|
187
|
+
case 15:
|
|
204
188
|
_d.sent();
|
|
205
|
-
_d.label =
|
|
206
|
-
case
|
|
189
|
+
_d.label = 16;
|
|
190
|
+
case 16: return [3 /*break*/, 17];
|
|
191
|
+
case 17: return [4 /*yield*/, this.broadcaster.broadcast('AfterTransactionCommit')];
|
|
207
192
|
case 18:
|
|
208
|
-
afterBroadcastResult = new BroadcasterResult();
|
|
209
|
-
this.broadcaster.broadcastAfterTransactionCommitEvent(afterBroadcastResult);
|
|
210
|
-
if (!(afterBroadcastResult.promises.length > 0)) return [3 /*break*/, 20];
|
|
211
|
-
return [4 /*yield*/, Promise.all(afterBroadcastResult.promises)];
|
|
212
|
-
case 19:
|
|
213
193
|
_d.sent();
|
|
214
|
-
|
|
215
|
-
case 20: return [2 /*return*/];
|
|
194
|
+
return [2 /*return*/];
|
|
216
195
|
}
|
|
217
196
|
});
|
|
218
197
|
});
|
|
@@ -223,34 +202,24 @@ var CockroachQueryRunner = /** @class */ (function (_super) {
|
|
|
223
202
|
*/
|
|
224
203
|
CockroachQueryRunner.prototype.rollbackTransaction = function () {
|
|
225
204
|
return __awaiter(this, void 0, void 0, function () {
|
|
226
|
-
var beforeBroadcastResult, afterBroadcastResult;
|
|
227
205
|
return __generator(this, function (_a) {
|
|
228
206
|
switch (_a.label) {
|
|
229
207
|
case 0:
|
|
230
208
|
if (!this.isTransactionActive)
|
|
231
209
|
throw new TransactionNotStartedError();
|
|
232
|
-
|
|
233
|
-
this.broadcaster.broadcastBeforeTransactionRollbackEvent(beforeBroadcastResult);
|
|
234
|
-
if (!(beforeBroadcastResult.promises.length > 0)) return [3 /*break*/, 2];
|
|
235
|
-
return [4 /*yield*/, Promise.all(beforeBroadcastResult.promises)];
|
|
210
|
+
return [4 /*yield*/, this.broadcaster.broadcast('BeforeTransactionRollback')];
|
|
236
211
|
case 1:
|
|
237
212
|
_a.sent();
|
|
238
|
-
_a.label = 2;
|
|
239
|
-
case 2:
|
|
240
213
|
this.storeQueries = false;
|
|
241
214
|
return [4 /*yield*/, this.query("ROLLBACK")];
|
|
242
|
-
case
|
|
215
|
+
case 2:
|
|
243
216
|
_a.sent();
|
|
244
217
|
this.queries = [];
|
|
245
218
|
this.isTransactionActive = false;
|
|
246
|
-
|
|
247
|
-
|
|
248
|
-
if (!(afterBroadcastResult.promises.length > 0)) return [3 /*break*/, 5];
|
|
249
|
-
return [4 /*yield*/, Promise.all(afterBroadcastResult.promises)];
|
|
250
|
-
case 4:
|
|
219
|
+
return [4 /*yield*/, this.broadcaster.broadcast('AfterTransactionRollback')];
|
|
220
|
+
case 3:
|
|
251
221
|
_a.sent();
|
|
252
|
-
|
|
253
|
-
case 5: return [2 /*return*/];
|
|
222
|
+
return [2 /*return*/];
|
|
254
223
|
}
|
|
255
224
|
});
|
|
256
225
|
});
|