string_agg usage fix

This commit is contained in:
Jan Prochazka
2024-07-25 10:47:20 +02:00
parent 3867b7f5ba
commit be6e0f3bc8
2 changed files with 5 additions and 4 deletions

View File

@@ -55,8 +55,8 @@ class Analyser extends DatabaseAnalyser {
super(pool, driver, version); super(pool, driver, version);
} }
createQuery(resFileName, typeFields) { createQuery(resFileName, typeFields, replacements = {}) {
const query = super.createQuery(sql[resFileName], typeFields); const query = super.createQuery(sql[resFileName], typeFields, replacements);
return query; return query;
} }
@@ -139,7 +139,8 @@ class Analyser extends DatabaseAnalyser {
this.feedback({ analysingMessage: 'Loading routines' }); 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', $typeAggFunc: this.driver.dialect.stringAgg ? 'string_agg' : 'max',
$typeAggParam: this.driver.dialect.stringAgg ? ", '|'" : '',
}); });
this.feedback({ analysingMessage: 'Loading indexes' }); this.feedback({ analysingMessage: 'Loading indexes' });

View File

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