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:
Torsten Schulz (local)
2026-01-29 13:55:07 +01:00
parent ae096eb4c3
commit 57d64a7ef8

View File

@@ -173,10 +173,10 @@ async function checkTableSizes() {
const [tableSizes] = await sequelize.query(`
SELECT
schemaname || '.' || tablename as full_table_name,
pg_size_pretty(pg_total_relation_size(schemaname||'.'||tablename)) as total_size,
pg_size_pretty(pg_relation_size(schemaname||'.'||tablename)) as table_size,
pg_size_pretty(pg_total_relation_size(schemaname||'.'||tablename) - pg_relation_size(schemaname||'.'||tablename)) as indexes_size,
schemaname || '.' || relname as full_table_name,
pg_size_pretty(pg_total_relation_size(schemaname||'.'||relname)) as total_size,
pg_size_pretty(pg_relation_size(schemaname||'.'||relname)) as table_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_dead_tup as dead_rows,
CASE
@@ -189,7 +189,7 @@ async function checkTableSizes() {
last_autoanalyze
FROM pg_stat_user_tables
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;
`);
@@ -222,7 +222,7 @@ async function checkIndexes() {
// Fehlende Indizes (basierend auf pg_stat_user_tables)
const [missingIndexes] = await sequelize.query(`
SELECT
schemaname || '.' || tablename as table_name,
schemaname || '.' || relname as table_name,
seq_scan,
seq_tup_read,
idx_scan,
@@ -247,7 +247,7 @@ async function checkIndexes() {
const [unusedIndexes] = await sequelize.query(`
SELECT
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,
idx_scan as scans
FROM pg_stat_user_indexes
@@ -270,7 +270,7 @@ async function checkIndexes() {
const [indexBloat] = await sequelize.query(`
SELECT
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,
idx_scan as scans,
idx_tup_read as tuples_read,
@@ -296,7 +296,7 @@ async function checkVacuumStatus() {
const [vacuumStats] = await sequelize.query(`
SELECT
schemaname || '.' || tablename as table_name,
schemaname || '.' || relname as table_name,
last_vacuum,
last_autovacuum,
last_analyze,