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.
- package/browser/data-source/BaseDataSourceOptions.d.ts +4 -0
- package/browser/data-source/BaseDataSourceOptions.js.map +1 -1
- package/browser/data-source/DataSource.d.ts +4 -0
- package/browser/data-source/DataSource.js +14 -0
- package/browser/data-source/DataSource.js.map +1 -1
- package/browser/decorator/Index.js +1 -0
- package/browser/decorator/Index.js.map +1 -1
- package/browser/decorator/options/IndexOptions.d.ts +5 -0
- package/browser/decorator/options/IndexOptions.js.map +1 -1
- package/browser/driver/Driver.d.ts +4 -0
- package/browser/driver/Driver.js.map +1 -1
- package/browser/driver/aurora-mysql/AuroraMysqlQueryRunner.js +9 -6
- package/browser/driver/aurora-mysql/AuroraMysqlQueryRunner.js.map +1 -1
- package/browser/driver/aurora-postgres/AuroraPostgresQueryRunner.js +9 -6
- package/browser/driver/aurora-postgres/AuroraPostgresQueryRunner.js.map +1 -1
- package/browser/driver/cockroachdb/CockroachConnectionOptions.d.ts +6 -0
- package/browser/driver/cockroachdb/CockroachConnectionOptions.js.map +1 -1
- package/browser/driver/cockroachdb/CockroachDriver.d.ts +4 -0
- package/browser/driver/cockroachdb/CockroachDriver.js +10 -1
- package/browser/driver/cockroachdb/CockroachDriver.js.map +1 -1
- package/browser/driver/cockroachdb/CockroachQueryRunner.d.ts +6 -1
- package/browser/driver/cockroachdb/CockroachQueryRunner.js +38 -17
- package/browser/driver/cockroachdb/CockroachQueryRunner.js.map +1 -1
- package/browser/driver/mongodb/MongoQueryRunner.d.ts +3 -3
- package/browser/driver/mongodb/MongoQueryRunner.js.map +1 -1
- package/browser/driver/mongodb/typings.d.ts +3 -3
- package/browser/driver/mongodb/typings.js.map +1 -1
- package/browser/driver/mysql/MysqlConnectionOptions.d.ts +6 -0
- package/browser/driver/mysql/MysqlConnectionOptions.js.map +1 -1
- package/browser/driver/mysql/MysqlQueryRunner.js +9 -6
- package/browser/driver/mysql/MysqlQueryRunner.js.map +1 -1
- package/browser/driver/oracle/OracleConnectionOptions.d.ts +14 -0
- package/browser/driver/oracle/OracleConnectionOptions.js.map +1 -1
- package/browser/driver/oracle/OracleDriver.d.ts +4 -0
- package/browser/driver/oracle/OracleDriver.js +17 -2
- package/browser/driver/oracle/OracleDriver.js.map +1 -1
- package/browser/driver/oracle/OracleQueryRunner.js +40 -6
- package/browser/driver/oracle/OracleQueryRunner.js.map +1 -1
- package/browser/driver/postgres/PostgresConnectionCredentialsOptions.d.ts +5 -0
- package/browser/driver/postgres/PostgresConnectionCredentialsOptions.js.map +1 -1
- package/browser/driver/postgres/PostgresConnectionOptions.d.ts +6 -5
- package/browser/driver/postgres/PostgresConnectionOptions.js.map +1 -1
- package/browser/driver/postgres/PostgresDriver.d.ts +4 -0
- package/browser/driver/postgres/PostgresDriver.js +13 -4
- package/browser/driver/postgres/PostgresDriver.js.map +1 -1
- package/browser/driver/postgres/PostgresQueryRunner.js +38 -23
- package/browser/driver/postgres/PostgresQueryRunner.js.map +1 -1
- package/browser/driver/sap/SapDriver.d.ts +8 -0
- package/browser/driver/sap/SapDriver.js +14 -3
- package/browser/driver/sap/SapDriver.js.map +1 -1
- package/browser/driver/sap/SapQueryRunner.d.ts +5 -14
- package/browser/driver/sap/SapQueryRunner.js +65 -61
- package/browser/driver/sap/SapQueryRunner.js.map +1 -1
- package/browser/driver/spanner/SpannerConnectionOptions.d.ts +6 -0
- package/browser/driver/spanner/SpannerConnectionOptions.js.map +1 -1
- package/browser/driver/spanner/SpannerDriver.d.ts +4 -0
- package/browser/driver/spanner/SpannerDriver.js +10 -1
- package/browser/driver/spanner/SpannerDriver.js.map +1 -1
- package/browser/driver/sqlite-abstract/AbstractSqliteQueryRunner.js +10 -16
- package/browser/driver/sqlite-abstract/AbstractSqliteQueryRunner.js.map +1 -1
- package/browser/driver/sqlserver/SqlServerConnectionOptions.d.ts +6 -5
- package/browser/driver/sqlserver/SqlServerConnectionOptions.js.map +1 -1
- package/browser/driver/sqlserver/SqlServerDriver.d.ts +4 -0
- package/browser/driver/sqlserver/SqlServerDriver.js +10 -1
- package/browser/driver/sqlserver/SqlServerDriver.js.map +1 -1
- package/browser/driver/sqlserver/SqlServerQueryRunner.js +6 -5
- package/browser/driver/sqlserver/SqlServerQueryRunner.js.map +1 -1
- package/browser/entity-manager/EntityManager.d.ts +5 -1
- package/browser/entity-manager/EntityManager.js +10 -1
- package/browser/entity-manager/EntityManager.js.map +1 -1
- package/browser/entity-manager/MongoEntityManager.d.ts +8 -4
- package/browser/entity-manager/MongoEntityManager.js +12 -10
- package/browser/entity-manager/MongoEntityManager.js.map +1 -1
- package/browser/entity-schema/EntitySchemaOptions.d.ts +4 -0
- package/browser/entity-schema/EntitySchemaOptions.js.map +1 -1
- package/browser/entity-schema/EntitySchemaTransformer.js +7 -0
- package/browser/entity-schema/EntitySchemaTransformer.js.map +1 -1
- package/browser/error/EntityNotFoundError.d.ts +2 -0
- package/browser/error/EntityNotFoundError.js +2 -0
- package/browser/error/EntityNotFoundError.js.map +1 -1
- package/browser/find-options/FindOptionsWhere.d.ts +1 -1
- package/browser/find-options/FindOptionsWhere.js.map +1 -1
- package/browser/logger/AbstractLogger.js +1 -1
- package/browser/logger/AbstractLogger.js.map +1 -1
- package/browser/metadata/IndexMetadata.d.ts +5 -0
- package/browser/metadata/IndexMetadata.js +1 -0
- package/browser/metadata/IndexMetadata.js.map +1 -1
- package/browser/metadata-args/IndexMetadataArgs.d.ts +5 -0
- package/browser/metadata-args/IndexMetadataArgs.js.map +1 -1
- package/browser/metadata-builder/EntityMetadataBuilder.js +22 -0
- package/browser/metadata-builder/EntityMetadataBuilder.js.map +1 -1
- package/browser/persistence/SubjectExecutor.js +4 -1
- package/browser/persistence/SubjectExecutor.js.map +1 -1
- package/browser/persistence/subject-builder/ManyToManySubjectBuilder.js +6 -2
- package/browser/persistence/subject-builder/ManyToManySubjectBuilder.js.map +1 -1
- package/browser/platform/BrowserPlatformTools.js +3 -2
- package/browser/platform/BrowserPlatformTools.js.map +1 -1
- package/browser/platform/PlatformTools.js +2 -0
- package/browser/platform/PlatformTools.js.map +1 -1
- package/browser/query-builder/InsertQueryBuilder.js +19 -6
- package/browser/query-builder/InsertQueryBuilder.js.map +1 -1
- package/browser/query-builder/QueryBuilder.d.ts +5 -0
- package/browser/query-builder/QueryBuilder.js +26 -23
- package/browser/query-builder/QueryBuilder.js.map +1 -1
- package/browser/query-builder/SelectQueryBuilder.js +13 -3
- package/browser/query-builder/SelectQueryBuilder.js.map +1 -1
- package/browser/query-builder/index.d.ts +1 -0
- package/browser/query-builder/index.js +17 -0
- package/browser/query-builder/index.js.map +1 -0
- package/browser/repository/BaseEntity.d.ts +12 -0
- package/browser/repository/BaseEntity.js +12 -0
- package/browser/repository/BaseEntity.js.map +1 -1
- package/browser/repository/MongoRepository.d.ts +8 -4
- package/browser/repository/MongoRepository.js +6 -0
- package/browser/repository/MongoRepository.js.map +1 -1
- package/browser/repository/Repository.d.ts +13 -1
- package/browser/repository/Repository.js +17 -1
- package/browser/repository/Repository.js.map +1 -1
- package/browser/schema-builder/options/TableIndexOptions.d.ts +5 -0
- package/browser/schema-builder/options/TableIndexOptions.js.map +1 -1
- package/browser/schema-builder/table/TableIndex.d.ts +5 -0
- package/browser/schema-builder/table/TableIndex.js +3 -0
- package/browser/schema-builder/table/TableIndex.js.map +1 -1
- package/browser/subscriber/Broadcaster.d.ts +1 -1
- package/browser/subscriber/Broadcaster.js +2 -1
- package/browser/subscriber/Broadcaster.js.map +1 -1
- package/browser/subscriber/event/InsertEvent.d.ts +5 -0
- package/browser/subscriber/event/InsertEvent.js.map +1 -1
- package/browser/util/DateUtils.js +4 -2
- package/browser/util/DateUtils.js.map +1 -1
- package/browser/util/OrmUtils.d.ts +6 -0
- package/browser/util/OrmUtils.js +66 -0
- package/browser/util/OrmUtils.js.map +1 -1
- package/commands/MigrationGenerateCommand.js +3 -1
- package/commands/MigrationGenerateCommand.js.map +1 -1
- package/data-source/BaseDataSourceOptions.d.ts +4 -0
- package/data-source/BaseDataSourceOptions.js.map +1 -1
- package/data-source/DataSource.d.ts +4 -0
- package/data-source/DataSource.js +14 -0
- package/data-source/DataSource.js.map +1 -1
- package/decorator/Index.js +1 -0
- package/decorator/Index.js.map +1 -1
- package/decorator/options/IndexOptions.d.ts +5 -0
- package/decorator/options/IndexOptions.js.map +1 -1
- package/driver/Driver.d.ts +4 -0
- package/driver/Driver.js.map +1 -1
- package/driver/aurora-mysql/AuroraMysqlQueryRunner.js +9 -6
- package/driver/aurora-mysql/AuroraMysqlQueryRunner.js.map +1 -1
- package/driver/aurora-postgres/AuroraPostgresQueryRunner.js +9 -6
- package/driver/aurora-postgres/AuroraPostgresQueryRunner.js.map +1 -1
- package/driver/cockroachdb/CockroachConnectionOptions.d.ts +6 -0
- package/driver/cockroachdb/CockroachConnectionOptions.js.map +1 -1
- package/driver/cockroachdb/CockroachDriver.d.ts +4 -0
- package/driver/cockroachdb/CockroachDriver.js +10 -1
- package/driver/cockroachdb/CockroachDriver.js.map +1 -1
- package/driver/cockroachdb/CockroachQueryRunner.d.ts +6 -1
- package/driver/cockroachdb/CockroachQueryRunner.js +38 -17
- package/driver/cockroachdb/CockroachQueryRunner.js.map +1 -1
- package/driver/mongodb/MongoQueryRunner.d.ts +3 -3
- package/driver/mongodb/MongoQueryRunner.js.map +1 -1
- package/driver/mongodb/typings.d.ts +3 -3
- package/driver/mongodb/typings.js.map +1 -1
- package/driver/mysql/MysqlConnectionOptions.d.ts +6 -0
- package/driver/mysql/MysqlConnectionOptions.js.map +1 -1
- package/driver/mysql/MysqlQueryRunner.js +9 -6
- package/driver/mysql/MysqlQueryRunner.js.map +1 -1
- package/driver/oracle/OracleConnectionOptions.d.ts +14 -0
- package/driver/oracle/OracleConnectionOptions.js.map +1 -1
- package/driver/oracle/OracleDriver.d.ts +4 -0
- package/driver/oracle/OracleDriver.js +17 -2
- package/driver/oracle/OracleDriver.js.map +1 -1
- package/driver/oracle/OracleQueryRunner.js +40 -6
- package/driver/oracle/OracleQueryRunner.js.map +1 -1
- package/driver/postgres/PostgresConnectionCredentialsOptions.d.ts +5 -0
- package/driver/postgres/PostgresConnectionCredentialsOptions.js.map +1 -1
- package/driver/postgres/PostgresConnectionOptions.d.ts +6 -5
- package/driver/postgres/PostgresConnectionOptions.js.map +1 -1
- package/driver/postgres/PostgresDriver.d.ts +4 -0
- package/driver/postgres/PostgresDriver.js +13 -4
- package/driver/postgres/PostgresDriver.js.map +1 -1
- package/driver/postgres/PostgresQueryRunner.js +38 -23
- package/driver/postgres/PostgresQueryRunner.js.map +1 -1
- package/driver/sap/SapDriver.d.ts +8 -0
- package/driver/sap/SapDriver.js +15 -4
- package/driver/sap/SapDriver.js.map +1 -1
- package/driver/sap/SapQueryRunner.d.ts +5 -14
- package/driver/sap/SapQueryRunner.js +65 -61
- package/driver/sap/SapQueryRunner.js.map +1 -1
- package/driver/spanner/SpannerConnectionOptions.d.ts +6 -0
- package/driver/spanner/SpannerConnectionOptions.js.map +1 -1
- package/driver/spanner/SpannerDriver.d.ts +4 -0
- package/driver/spanner/SpannerDriver.js +10 -1
- package/driver/spanner/SpannerDriver.js.map +1 -1
- package/driver/sqlite-abstract/AbstractSqliteQueryRunner.js +10 -16
- package/driver/sqlite-abstract/AbstractSqliteQueryRunner.js.map +1 -1
- package/driver/sqlserver/SqlServerConnectionOptions.d.ts +6 -5
- package/driver/sqlserver/SqlServerConnectionOptions.js.map +1 -1
- package/driver/sqlserver/SqlServerDriver.d.ts +4 -0
- package/driver/sqlserver/SqlServerDriver.js +10 -1
- package/driver/sqlserver/SqlServerDriver.js.map +1 -1
- package/driver/sqlserver/SqlServerQueryRunner.js +6 -5
- package/driver/sqlserver/SqlServerQueryRunner.js.map +1 -1
- package/entity-manager/EntityManager.d.ts +5 -1
- package/entity-manager/EntityManager.js +10 -1
- package/entity-manager/EntityManager.js.map +1 -1
- package/entity-manager/MongoEntityManager.d.ts +8 -4
- package/entity-manager/MongoEntityManager.js +12 -10
- package/entity-manager/MongoEntityManager.js.map +1 -1
- package/entity-schema/EntitySchemaOptions.d.ts +4 -0
- package/entity-schema/EntitySchemaOptions.js.map +1 -1
- package/entity-schema/EntitySchemaTransformer.js +7 -0
- package/entity-schema/EntitySchemaTransformer.js.map +1 -1
- package/error/EntityNotFoundError.d.ts +2 -0
- package/error/EntityNotFoundError.js +2 -0
- package/error/EntityNotFoundError.js.map +1 -1
- package/find-options/FindOptionsWhere.d.ts +1 -1
- package/find-options/FindOptionsWhere.js.map +1 -1
- package/logger/AbstractLogger.js +1 -1
- package/logger/AbstractLogger.js.map +1 -1
- package/metadata/IndexMetadata.d.ts +5 -0
- package/metadata/IndexMetadata.js +1 -0
- package/metadata/IndexMetadata.js.map +1 -1
- package/metadata-args/IndexMetadataArgs.d.ts +5 -0
- package/metadata-args/IndexMetadataArgs.js.map +1 -1
- package/metadata-builder/EntityMetadataBuilder.js +22 -0
- package/metadata-builder/EntityMetadataBuilder.js.map +1 -1
- package/package.json +1 -1
- package/persistence/SubjectExecutor.js +4 -1
- package/persistence/SubjectExecutor.js.map +1 -1
- package/persistence/subject-builder/ManyToManySubjectBuilder.js +6 -2
- package/persistence/subject-builder/ManyToManySubjectBuilder.js.map +1 -1
- package/platform/PlatformTools.js +2 -0
- package/platform/PlatformTools.js.map +1 -1
- package/query-builder/InsertQueryBuilder.js +19 -6
- package/query-builder/InsertQueryBuilder.js.map +1 -1
- package/query-builder/QueryBuilder.d.ts +5 -0
- package/query-builder/QueryBuilder.js +26 -23
- package/query-builder/QueryBuilder.js.map +1 -1
- package/query-builder/SelectQueryBuilder.js +13 -3
- package/query-builder/SelectQueryBuilder.js.map +1 -1
- package/query-builder/index.d.ts +1 -0
- package/query-builder/index.js +21 -0
- package/query-builder/index.js.map +1 -0
- package/repository/BaseEntity.d.ts +12 -0
- package/repository/BaseEntity.js +12 -0
- package/repository/BaseEntity.js.map +1 -1
- package/repository/MongoRepository.d.ts +8 -4
- package/repository/MongoRepository.js +6 -0
- package/repository/MongoRepository.js.map +1 -1
- package/repository/Repository.d.ts +13 -1
- package/repository/Repository.js +17 -1
- package/repository/Repository.js.map +1 -1
- package/schema-builder/options/TableIndexOptions.d.ts +5 -0
- package/schema-builder/options/TableIndexOptions.js.map +1 -1
- package/schema-builder/table/TableIndex.d.ts +5 -0
- package/schema-builder/table/TableIndex.js +3 -0
- package/schema-builder/table/TableIndex.js.map +1 -1
- package/subscriber/Broadcaster.d.ts +1 -1
- package/subscriber/Broadcaster.js +2 -1
- package/subscriber/Broadcaster.js.map +1 -1
- package/subscriber/event/InsertEvent.d.ts +5 -0
- package/subscriber/event/InsertEvent.js.map +1 -1
- package/typeorm-model-shim.js +61 -53
- package/util/DateUtils.js +5 -2
- package/util/DateUtils.js.map +1 -1
- package/util/OrmUtils.d.ts +6 -0
- package/util/OrmUtils.js +66 -0
- package/util/OrmUtils.js.map +1 -1
|
@@ -115,15 +115,16 @@ export class PostgresQueryRunner extends BaseQueryRunner {
|
|
|
115
115
|
throw err;
|
|
116
116
|
}
|
|
117
117
|
if (this.transactionDepth === 0) {
|
|
118
|
+
this.transactionDepth += 1;
|
|
118
119
|
await this.query("START TRANSACTION");
|
|
119
120
|
if (isolationLevel) {
|
|
120
121
|
await this.query("SET TRANSACTION ISOLATION LEVEL " + isolationLevel);
|
|
121
122
|
}
|
|
122
123
|
}
|
|
123
124
|
else {
|
|
124
|
-
|
|
125
|
+
this.transactionDepth += 1;
|
|
126
|
+
await this.query(`SAVEPOINT typeorm_${this.transactionDepth - 1}`);
|
|
125
127
|
}
|
|
126
|
-
this.transactionDepth += 1;
|
|
127
128
|
await this.broadcaster.broadcast("AfterTransactionStart");
|
|
128
129
|
}
|
|
129
130
|
/**
|
|
@@ -135,13 +136,14 @@ export class PostgresQueryRunner extends BaseQueryRunner {
|
|
|
135
136
|
throw new TransactionNotStartedError();
|
|
136
137
|
await this.broadcaster.broadcast("BeforeTransactionCommit");
|
|
137
138
|
if (this.transactionDepth > 1) {
|
|
138
|
-
|
|
139
|
+
this.transactionDepth -= 1;
|
|
140
|
+
await this.query(`RELEASE SAVEPOINT typeorm_${this.transactionDepth}`);
|
|
139
141
|
}
|
|
140
142
|
else {
|
|
143
|
+
this.transactionDepth -= 1;
|
|
141
144
|
await this.query("COMMIT");
|
|
142
145
|
this.isTransactionActive = false;
|
|
143
146
|
}
|
|
144
|
-
this.transactionDepth -= 1;
|
|
145
147
|
await this.broadcaster.broadcast("AfterTransactionCommit");
|
|
146
148
|
}
|
|
147
149
|
/**
|
|
@@ -153,13 +155,14 @@ export class PostgresQueryRunner extends BaseQueryRunner {
|
|
|
153
155
|
throw new TransactionNotStartedError();
|
|
154
156
|
await this.broadcaster.broadcast("BeforeTransactionRollback");
|
|
155
157
|
if (this.transactionDepth > 1) {
|
|
156
|
-
|
|
158
|
+
this.transactionDepth -= 1;
|
|
159
|
+
await this.query(`ROLLBACK TO SAVEPOINT typeorm_${this.transactionDepth}`);
|
|
157
160
|
}
|
|
158
161
|
else {
|
|
162
|
+
this.transactionDepth -= 1;
|
|
159
163
|
await this.query("ROLLBACK");
|
|
160
164
|
this.isTransactionActive = false;
|
|
161
165
|
}
|
|
162
|
-
this.transactionDepth -= 1;
|
|
163
166
|
await this.broadcaster.broadcast("AfterTransactionRollback");
|
|
164
167
|
}
|
|
165
168
|
/**
|
|
@@ -1781,13 +1784,14 @@ export class PostgresQueryRunner extends BaseQueryRunner {
|
|
|
1781
1784
|
`WHERE "t"."relkind" IN ('r', 'p') AND (${constraintsCondition})`;
|
|
1782
1785
|
const indicesSql = `SELECT "ns"."nspname" AS "table_schema", "t"."relname" AS "table_name", "i"."relname" AS "constraint_name", "a"."attname" AS "column_name", ` +
|
|
1783
1786
|
`CASE "ix"."indisunique" WHEN 't' THEN 'TRUE' ELSE'FALSE' END AS "is_unique", pg_get_expr("ix"."indpred", "ix"."indrelid") AS "condition", ` +
|
|
1784
|
-
`"types"."typname" AS "type_name" ` +
|
|
1787
|
+
`"types"."typname" AS "type_name", "am"."amname" AS "index_type" ` +
|
|
1785
1788
|
`FROM "pg_class" "t" ` +
|
|
1786
1789
|
`INNER JOIN "pg_index" "ix" ON "ix"."indrelid" = "t"."oid" ` +
|
|
1787
1790
|
`INNER JOIN "pg_attribute" "a" ON "a"."attrelid" = "t"."oid" AND "a"."attnum" = ANY ("ix"."indkey") ` +
|
|
1788
1791
|
`INNER JOIN "pg_namespace" "ns" ON "ns"."oid" = "t"."relnamespace" ` +
|
|
1789
1792
|
`INNER JOIN "pg_class" "i" ON "i"."oid" = "ix"."indexrelid" ` +
|
|
1790
1793
|
`INNER JOIN "pg_type" "types" ON "types"."oid" = "a"."atttypid" ` +
|
|
1794
|
+
`INNER JOIN "pg_am" "am" ON "i"."relam" = "am"."oid" ` +
|
|
1791
1795
|
`LEFT JOIN "pg_constraint" "cnst" ON "cnst"."conname" = "i"."relname" ` +
|
|
1792
1796
|
`WHERE "t"."relkind" IN ('r', 'p') AND "cnst"."contype" IS NULL AND (${constraintsCondition})`;
|
|
1793
1797
|
const foreignKeysCondition = dbTables
|
|
@@ -1857,26 +1861,34 @@ export class PostgresQueryRunner extends BaseQueryRunner {
|
|
|
1857
1861
|
tableColumn.name = dbColumn["column_name"];
|
|
1858
1862
|
tableColumn.type = dbColumn["regtype"].toLowerCase();
|
|
1859
1863
|
if (tableColumn.type === "numeric" ||
|
|
1864
|
+
tableColumn.type === "numeric[]" ||
|
|
1860
1865
|
tableColumn.type === "decimal" ||
|
|
1861
1866
|
tableColumn.type === "float") {
|
|
1867
|
+
let numericPrecision = dbColumn["numeric_precision"];
|
|
1868
|
+
let numericScale = dbColumn["numeric_scale"];
|
|
1869
|
+
if (dbColumn["data_type"] === "ARRAY") {
|
|
1870
|
+
const numericSize = dbColumn["format_type"].match(/^numeric\(([0-9]+),([0-9]+)\)\[\]$/);
|
|
1871
|
+
if (numericSize) {
|
|
1872
|
+
numericPrecision = +numericSize[1];
|
|
1873
|
+
numericScale = +numericSize[2];
|
|
1874
|
+
}
|
|
1875
|
+
}
|
|
1862
1876
|
// If one of these properties was set, and another was not, Postgres sets '0' in to unspecified property
|
|
1863
1877
|
// we set 'undefined' in to unspecified property to avoid changing column on sync
|
|
1864
|
-
if (
|
|
1865
|
-
!this.isDefaultColumnPrecision(table, tableColumn,
|
|
1866
|
-
tableColumn.precision =
|
|
1867
|
-
dbColumn["numeric_precision"];
|
|
1878
|
+
if (numericPrecision !== null &&
|
|
1879
|
+
!this.isDefaultColumnPrecision(table, tableColumn, numericPrecision)) {
|
|
1880
|
+
tableColumn.precision = numericPrecision;
|
|
1868
1881
|
}
|
|
1869
|
-
else if (
|
|
1870
|
-
!this.isDefaultColumnScale(table, tableColumn,
|
|
1882
|
+
else if (numericScale !== null &&
|
|
1883
|
+
!this.isDefaultColumnScale(table, tableColumn, numericScale)) {
|
|
1871
1884
|
tableColumn.precision = undefined;
|
|
1872
1885
|
}
|
|
1873
|
-
if (
|
|
1874
|
-
!this.isDefaultColumnScale(table, tableColumn,
|
|
1875
|
-
tableColumn.scale =
|
|
1876
|
-
dbColumn["numeric_scale"];
|
|
1886
|
+
if (numericScale !== null &&
|
|
1887
|
+
!this.isDefaultColumnScale(table, tableColumn, numericScale)) {
|
|
1888
|
+
tableColumn.scale = numericScale;
|
|
1877
1889
|
}
|
|
1878
|
-
else if (
|
|
1879
|
-
!this.isDefaultColumnPrecision(table, tableColumn,
|
|
1890
|
+
else if (numericPrecision !== null &&
|
|
1891
|
+
!this.isDefaultColumnPrecision(table, tableColumn, numericPrecision)) {
|
|
1880
1892
|
tableColumn.scale = undefined;
|
|
1881
1893
|
}
|
|
1882
1894
|
}
|
|
@@ -2159,7 +2171,7 @@ export class PostgresQueryRunner extends BaseQueryRunner {
|
|
|
2159
2171
|
columnNames: indices.map((i) => i["column_name"]),
|
|
2160
2172
|
isUnique: constraint["is_unique"] === "TRUE",
|
|
2161
2173
|
where: constraint["condition"],
|
|
2162
|
-
isSpatial:
|
|
2174
|
+
isSpatial: constraint["index_type"] === "gist",
|
|
2163
2175
|
isFulltext: false,
|
|
2164
2176
|
});
|
|
2165
2177
|
});
|
|
@@ -2380,7 +2392,7 @@ export class PostgresQueryRunner extends BaseQueryRunner {
|
|
|
2380
2392
|
const columns = index.columnNames
|
|
2381
2393
|
.map((columnName) => `"${columnName}"`)
|
|
2382
2394
|
.join(", ");
|
|
2383
|
-
return new Query(`CREATE ${index.isUnique ? "UNIQUE " : ""}INDEX "${index.name}" ON ${this.escapePath(table)} ${index.isSpatial ? "USING GiST " : ""}(${columns}) ${index.where ? "WHERE " + index.where : ""}`);
|
|
2395
|
+
return new Query(`CREATE ${index.isUnique ? "UNIQUE " : ""}${index.isConcurrent ? "CONCURRENTLY " : ""}INDEX "${index.name}" ON ${this.escapePath(table)} ${index.isSpatial ? "USING GiST " : ""}(${columns}) ${index.where ? "WHERE " + index.where : ""}`);
|
|
2384
2396
|
}
|
|
2385
2397
|
/**
|
|
2386
2398
|
* Builds create view index sql.
|
|
@@ -2398,10 +2410,13 @@ export class PostgresQueryRunner extends BaseQueryRunner {
|
|
|
2398
2410
|
let indexName = InstanceChecker.isTableIndex(indexOrName)
|
|
2399
2411
|
? indexOrName.name
|
|
2400
2412
|
: indexOrName;
|
|
2413
|
+
const concurrent = InstanceChecker.isTableIndex(indexOrName)
|
|
2414
|
+
? indexOrName.isConcurrent
|
|
2415
|
+
: false;
|
|
2401
2416
|
const { schema } = this.driver.parseTableName(table);
|
|
2402
2417
|
return schema
|
|
2403
|
-
? new Query(`DROP INDEX "${schema}"."${indexName}"`)
|
|
2404
|
-
: new Query(`DROP INDEX "${indexName}"`);
|
|
2418
|
+
? new Query(`DROP INDEX ${concurrent ? "CONCURRENTLY" : ""}"${schema}"."${indexName}"`)
|
|
2419
|
+
: new Query(`DROP INDEX ${concurrent ? "CONCURRENTLY" : ""}"${indexName}"`);
|
|
2405
2420
|
}
|
|
2406
2421
|
/**
|
|
2407
2422
|
* Builds create primary key sql.
|