refactor: Extract pg_stat_statements column logic to helper #133
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Summary
Follow-up to #132: Refactors version-dependent column logic into a reusable helper function.
What Changed
1. Added
_get_pg_stat_statements_columns()helperExtracts duplicated version logic from both
get_top_queries_by_time()andget_top_resource_queries()into a single helper function.Before: Version branching duplicated in 2 places
After: Single source of truth
Returns a
PgStatStatementsColumnsdataclass with all version-appropriate column names.2. Added comprehensive documentation
Benefits
✅ DRY - Eliminates duplication
✅ Maintainable - One place to update if future PG versions change
✅ Testable - Helper can be unit tested independently
✅ Type-safe - Dataclass prevents typos in column names
✅ Self-documenting - Clear structure shows version differences
Testing
Files Changed
src/postgres_mcp/top_queries/top_queries_calc.py- Extracted helper function🤖 Generated with Claude Code