fix: string_agg not supported in redhist

This commit is contained in:
Jan Prochazka
2024-07-25 10:32:16 +02:00
parent 1b347c7e0b
commit 3867b7f5ba
3 changed files with 5 additions and 2 deletions

View File

@@ -138,7 +138,9 @@ class Analyser extends DatabaseAnalyser {
: null;
this.feedback({ analysingMessage: 'Loading routines' });
const routines = await this.analyserQuery('routines', ['procedures', 'functions']);
const routines = await this.analyserQuery('routines', ['procedures', 'functions'], {
$typeAgg: this.driver.dialect.stringAgg ? 'string_agg' : 'max',
});
this.feedback({ analysingMessage: 'Loading indexes' });
const indexes = this.driver.__analyserInternals.skipIndexes

View File

@@ -11,6 +11,7 @@ where
table_constraints.table_schema <> 'information_schema'
and table_constraints.table_schema <> 'pg_catalog'
and table_constraints.table_schema !~ '^pg_toast'
and table_constraints.table_schema !~ '^_timescaledb_'
and table_constraints.constraint_type = 'PRIMARY KEY'
and ('tables:' || table_constraints.table_schema || '.' || table_constraints.table_name) =OBJECT_ID_CONDITION
order by key_column_usage.ordinal_position

View File

@@ -5,7 +5,7 @@ select
max(routine_definition) as "definition",
max(md5(routine_definition)) as "hash_code",
routine_type as "object_type",
string_agg(data_type, '|') as "data_type",
$typeAgg(data_type, '|') as "data_type",
max(external_language) as "language"
from
information_schema.routines where routine_schema != 'information_schema' and routine_schema != 'pg_catalog' and routine_schema !~ '^_timescaledb_'