- Change idx_financing_plans_active to partial index (WHERE active = true) to avoid useless B-tree index on low-cardinality boolean column - Scope timingMiddleware to /api routes only (was globally registered, which caused noise from static asset requests) - Add unit tests for timing middleware (5 tests covering: next() call, timing log format, SLOW warning threshold, fast-request path, status code) Nightshift-Task: perf-regression Nightshift-Ref: https://github.com/marcus/nightshift
8 lines
598 B
SQL
8 lines
598 B
SQL
-- Performance indexes for high-traffic query patterns
|
|
CREATE INDEX IF NOT EXISTS idx_paychecks_period ON paychecks(period_year, period_month);
|
|
CREATE INDEX IF NOT EXISTS idx_paycheck_bills_paycheck_id ON paycheck_bills(paycheck_id);
|
|
CREATE INDEX IF NOT EXISTS idx_actuals_paycheck_id ON actuals(paycheck_id);
|
|
CREATE INDEX IF NOT EXISTS idx_one_time_expenses_paycheck_id ON one_time_expenses(paycheck_id);
|
|
CREATE INDEX IF NOT EXISTS idx_financing_payments_plan_id ON financing_payments(plan_id);
|
|
CREATE INDEX IF NOT EXISTS idx_financing_plans_active ON financing_plans(active) WHERE active = true;
|