Refactor database performance diagnostics: Update SQL queries in diagnose-db-performance.js to use 'relname' instead of 'tablename' for improved accuracy in table and index size calculations. This change enhances the clarity and correctness of performance diagnostics.
This commit is contained in:
@@ -173,10 +173,10 @@ async function checkTableSizes() {
|
|||||||
|
|
||||||
const [tableSizes] = await sequelize.query(`
|
const [tableSizes] = await sequelize.query(`
|
||||||
SELECT
|
SELECT
|
||||||
schemaname || '.' || tablename as full_table_name,
|
schemaname || '.' || relname as full_table_name,
|
||||||
pg_size_pretty(pg_total_relation_size(schemaname||'.'||tablename)) as total_size,
|
pg_size_pretty(pg_total_relation_size(schemaname||'.'||relname)) as total_size,
|
||||||
pg_size_pretty(pg_relation_size(schemaname||'.'||tablename)) as table_size,
|
pg_size_pretty(pg_relation_size(schemaname||'.'||relname)) as table_size,
|
||||||
pg_size_pretty(pg_total_relation_size(schemaname||'.'||tablename) - pg_relation_size(schemaname||'.'||tablename)) as indexes_size,
|
pg_size_pretty(pg_total_relation_size(schemaname||'.'||relname) - pg_relation_size(schemaname||'.'||relname)) as indexes_size,
|
||||||
n_live_tup as row_count,
|
n_live_tup as row_count,
|
||||||
n_dead_tup as dead_rows,
|
n_dead_tup as dead_rows,
|
||||||
CASE
|
CASE
|
||||||
@@ -189,7 +189,7 @@ async function checkTableSizes() {
|
|||||||
last_autoanalyze
|
last_autoanalyze
|
||||||
FROM pg_stat_user_tables
|
FROM pg_stat_user_tables
|
||||||
WHERE schemaname IN ('falukant_data', 'falukant_type', 'community', 'logs')
|
WHERE schemaname IN ('falukant_data', 'falukant_type', 'community', 'logs')
|
||||||
ORDER BY pg_total_relation_size(schemaname||'.'||tablename) DESC
|
ORDER BY pg_total_relation_size(schemaname||'.'||relname) DESC
|
||||||
LIMIT 20;
|
LIMIT 20;
|
||||||
`);
|
`);
|
||||||
|
|
||||||
@@ -222,7 +222,7 @@ async function checkIndexes() {
|
|||||||
// Fehlende Indizes (basierend auf pg_stat_user_tables)
|
// Fehlende Indizes (basierend auf pg_stat_user_tables)
|
||||||
const [missingIndexes] = await sequelize.query(`
|
const [missingIndexes] = await sequelize.query(`
|
||||||
SELECT
|
SELECT
|
||||||
schemaname || '.' || tablename as table_name,
|
schemaname || '.' || relname as table_name,
|
||||||
seq_scan,
|
seq_scan,
|
||||||
seq_tup_read,
|
seq_tup_read,
|
||||||
idx_scan,
|
idx_scan,
|
||||||
@@ -247,7 +247,7 @@ async function checkIndexes() {
|
|||||||
const [unusedIndexes] = await sequelize.query(`
|
const [unusedIndexes] = await sequelize.query(`
|
||||||
SELECT
|
SELECT
|
||||||
schemaname || '.' || indexrelname as index_name,
|
schemaname || '.' || indexrelname as index_name,
|
||||||
schemaname || '.' || tablename as table_name,
|
schemaname || '.' || relname as table_name,
|
||||||
pg_size_pretty(pg_relation_size(indexrelid)) as index_size,
|
pg_size_pretty(pg_relation_size(indexrelid)) as index_size,
|
||||||
idx_scan as scans
|
idx_scan as scans
|
||||||
FROM pg_stat_user_indexes
|
FROM pg_stat_user_indexes
|
||||||
@@ -270,7 +270,7 @@ async function checkIndexes() {
|
|||||||
const [indexBloat] = await sequelize.query(`
|
const [indexBloat] = await sequelize.query(`
|
||||||
SELECT
|
SELECT
|
||||||
schemaname || '.' || indexrelname as index_name,
|
schemaname || '.' || indexrelname as index_name,
|
||||||
schemaname || '.' || tablename as table_name,
|
schemaname || '.' || relname as table_name,
|
||||||
pg_size_pretty(pg_relation_size(indexrelid)) as index_size,
|
pg_size_pretty(pg_relation_size(indexrelid)) as index_size,
|
||||||
idx_scan as scans,
|
idx_scan as scans,
|
||||||
idx_tup_read as tuples_read,
|
idx_tup_read as tuples_read,
|
||||||
@@ -296,7 +296,7 @@ async function checkVacuumStatus() {
|
|||||||
|
|
||||||
const [vacuumStats] = await sequelize.query(`
|
const [vacuumStats] = await sequelize.query(`
|
||||||
SELECT
|
SELECT
|
||||||
schemaname || '.' || tablename as table_name,
|
schemaname || '.' || relname as table_name,
|
||||||
last_vacuum,
|
last_vacuum,
|
||||||
last_autovacuum,
|
last_autovacuum,
|
||||||
last_analyze,
|
last_analyze,
|
||||||
|
|||||||
Reference in New Issue
Block a user