On Thu, Aug 28, 2025 at 5:40 PM Greg Sabino Mullane <htamfids@gmail.com> wrote:
If I am reading the code in utils/activity/backend_status.c correctly, I not only see where it is happening (pgstat_report_activity), but why it is happening as well.
sorry for half cooked analysis ,the reason is pgstat_report_query_id() zeroes st_query_id before the new one is computed in exec_simple_query(). A concurrent reader of pg_stat_activity during that narrow timing gap observes 0 (displayed as NULL). The fix I tried is to retain the previous query_id (prev_st_query_id) and return it when st_query_id is still 0 but query_id computation is enabled, thoughts?