Skip to content

Conversation

@artemgavrilov
Copy link

@artemgavrilov artemgavrilov commented Oct 10, 2025

BupycHuk and others added 16 commits October 31, 2025 17:44
Introduce support for PostgreSQL 18, adding enhanced metrics for checkpointer, vacuum/analyze timings, and parallel worker activity. Implement new collectors for `pg_stat_io` and `pg_backend_memory_contexts` with version-specific queries, along with comprehensive tests. Update README and CI to reflect PostgreSQL 18 compatibility.
Refactored IO and statistics queries to accommodate PostgreSQL 18 features, including byte-level statistics and WAL I/O. Updated tests to validate new columns and ensure query expectation checks are correctly enforced. Improved test coverage across different PostgreSQL versions.
@artemgavrilov artemgavrilov force-pushed the PMM-14368-pg18-support branch from ae4ce36 to d21e5e5 Compare October 31, 2025 15:44
const statCheckpointerQuery = `SELECT
num_timed
,num_requested
CASE WHEN current_setting('server_version_num')::int >= 180000
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggested change
CASE WHEN current_setting('server_version_num')::int >= 180000
,CASE WHEN current_setting('server_version_num')::int >= 180000

,blk_read_time
,blk_write_time
,stats_reset
CASE WHEN current_setting('server_version_num')::int >= 180000
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggested change
CASE WHEN current_setting('server_version_num')::int >= 180000
,CASE WHEN current_setting('server_version_num')::int >= 180000

CASE WHEN current_setting('server_version_num')::int >= 180000
THEN parallel_workers_to_launch
ELSE NULL END as parallel_workers_to_launch
CASE WHEN current_setting('server_version_num')::int >= 180000
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggested change
CASE WHEN current_setting('server_version_num')::int >= 180000
,CASE WHEN current_setting('server_version_num')::int >= 180000

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

5 participants