public inbox for [email protected]
help / color / mirror / Atom feedFrom: Colin 't Hart <[email protected]>
To: Adrian Klaver <[email protected]>
Cc: PostgreSQL General <[email protected]>
Subject: Re: pgBadger and postgres_fdw
Date: Wed, 21 Jan 2026 17:12:44 +0100
Message-ID: <CAMon-aT92+JQVTD54iwEmPpkFRDHDnhOzZGHMG6GoH_8Qh_EDg@mail.gmail.com> (raw)
In-Reply-To: <[email protected]>
References: <CAMon-aR8f3zi1Wytg-TCrbLa=sAooi4kTzbjukcvdt8G4mycbw@mail.gmail.com>
<[email protected]>
1. Migration from one server to another. Newer OS (Debian 12 vs Ubuntu
20.04), same version of Postgres (17).
2. postgres_fdw is to different databases within the same cluster.
3. 17
4. No new analyze was done; migration was achieved by moving the disks
between the virtual servers. We reindexed all text indexes to allow for the
new glibc version on Debian 12.
5. That's the thing: I have no idea which queries the `fetch 100 from c2`
are associated with because the `c2` seems to be reused for each query. The
psycopg python library generates unique server-side cursor names, but
postgres_fdw doesn't.
6. The 19 slowest queries in a 4 hour period are between 2 and 37 minutes,
with an average of over 10 minutes; they are all `fetch 100 from c2`.
The slowness itself isn't my question here; it was caused by having too few
cores in the new environment, while the application was still assuming the
higher core count and generating too many concurrent processes.
My question is how to identify which connections / queries from
postgres_fdw are generating the `fetch 100 from c2` queries, which, in
turn, may quite possibly lead to a feature request for having these named
uniquely.
Thanks,
Colin
On Wed, 21 Jan 2026 at 16:43, Adrian Klaver <[email protected]>
wrote:
> On 1/21/26 00:18, Colin 't Hart wrote:
> > Hi,
> >
> > One of my clients makes extensive use of postgres_fdw. After a migration
> > performance isn't great. pgBadger reports show the slowest queries all
> > being `fetch 100 from c2`.
> >
> > Anyone have any tricks for being able to associate those fetches with
> > the queries that were used when declaring the server-side cursor?
>
> This is going to need a lot more information. To start:
>
> 1) Migration of what and from what version to what version?
>
> 2) Where are the Postgres databases relative to each other on the network?
>
> 3) What versions of Postgres if not covered in 1.
>
> 4) If Postgres was what was being updated was an analyze done on the
> instances?
>
> 5) Show a complete query using EXPLAIN ANALYZE.
>
> 6) Define slow.
>
> >
> > Thanks,
> >
> > Colin
>
>
> --
> Adrian Klaver
> [email protected]
>
view thread (3+ messages) latest in thread
reply
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Reply to all the recipients using the --to and --cc options:
reply via email
To: [email protected]
Cc: [email protected], [email protected], [email protected]
Subject: Re: pgBadger and postgres_fdw
In-Reply-To: <CAMon-aT92+JQVTD54iwEmPpkFRDHDnhOzZGHMG6GoH_8Qh_EDg@mail.gmail.com>
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
This inbox is served by agora; see mirroring instructions
for how to clone and mirror all data and code used for this inbox