From: | Peter Eisentraut <peter_e(at)gmx(dot)net> |
---|---|
To: | Robert Haas <robertmhaas(at)gmail(dot)com> |
Cc: | "pgsql-hackers(at)postgresql(dot)org" <pgsql-hackers(at)postgresql(dot)org> |
Subject: | Re: RFC: replace pg_stat_activity.waiting with something more descriptive |
Date: | 2015-06-26 19:49:28 |
Message-ID: | 558DACC8.4080201@gmx.net |
Views: | Raw Message | Whole Thread | Download mbox | Resend email |
Thread: | |
Lists: | pgsql-hackers |
On 6/25/15 11:39 PM, Robert Haas wrote:
>> Could that also cover waiting on network?
>
> Possibly. My approach requires that the number of wait states be kept
> relatively small, ideally fitting in a single byte. And it also
> requires that we insert pgstat_report_waiting() calls around the thing
> that is notionally blocking. So, if there are a small number of
> places in the code where we do network I/O, we could stick those calls
> around those places, and this would work just fine. But if a foreign
> data wrapper, or any other piece of code, does network I/O - or any
> other blocking operation - without calling pgstat_report_waiting(), we
> just won't know about it.
That sounds doable, assuming that extension authors play along.
I see that network problems because of connection poolers, foreign-data
connections, and so on, are a significant cause of session "hangs", so
it would be good if they could be covered.
From | Date | Subject | |
---|---|---|---|
Next Message | Jeff Janes | 2015-06-26 19:53:14 | Re: PANIC in GIN code |
Previous Message | Andres Freund | 2015-06-26 19:49:19 | Re: checkpointer continuous flushing |