From 2feb47c6297280faab448f570ce6a696602bbf77 Mon Sep 17 00:00:00 2001 From: Aiden Foxx Date: Mon, 2 May 2022 16:19:30 +0200 Subject: [PATCH] Use older Oracle optimizer features for better data dictionary performance (#13076) --- packages/schema/src/dialects/oracledb.ts | 9 ++++++--- 1 file changed, 6 insertions(+), 3 deletions(-) diff --git a/packages/schema/src/dialects/oracledb.ts b/packages/schema/src/dialects/oracledb.ts index bfb7c8e4cd..4d1241ac9c 100644 --- a/packages/schema/src/dialects/oracledb.ts +++ b/packages/schema/src/dialects/oracledb.ts @@ -49,17 +49,20 @@ export default class Oracle extends KnexOracle implements SchemaInspector { */ const columns = await this.knex.raw(` WITH "uc" AS ( - SELECT /*+ materialize */ + SELECT /*+ MATERIALIZE */ "uc"."TABLE_NAME", "ucc"."COLUMN_NAME", "uc"."CONSTRAINT_TYPE", - COUNT(*) OVER(PARTITION BY "uc"."CONSTRAINT_NAME") "CONSTRAINT_COUNT" + COUNT(*) OVER( + PARTITION BY + "uc"."CONSTRAINT_NAME" + ) "CONSTRAINT_COUNT" FROM "USER_CONSTRAINTS" "uc" INNER JOIN "USER_CONS_COLUMNS" "ucc" ON "uc"."CONSTRAINT_NAME" = "ucc"."CONSTRAINT_NAME" AND "uc"."CONSTRAINT_TYPE" = 'P' ) - SELECT + SELECT /*+ OPTIMIZER_FEATURES_ENABLE('11.2.0.4') */ "c"."TABLE_NAME" "table_name", "c"."COLUMN_NAME" "column_name", "c"."DATA_DEFAULT" "default_value",