Re: BUG #16583: merge join on tables with different DB collation behind postgres_fdw fails
Jeremy Schneider <schnjere@amazon.com>
From: Jeremy Schneider <schnjere@amazon.com>
To: Tom Lane <tgl@sss.pgh.pa.us>, Etsuro Fujita <etsuro.fujita@gmail.com>
Cc: Ibrar Ahmed <ibrar.ahmad@gmail.com>, PostgreSQL Hackers <pgsql-hackers@lists.postgresql.org>, Neil Chen <carpenter.nail.cz@gmail.com>
Date: 2021-10-01T19:37:31Z
Lists: pgsql-bugs, pgsql-hackers
On 9/25/21 06:59, Tom Lane wrote: > Etsuro Fujita <etsuro.fujita@gmail.com> writes: >> On Sat, Sep 25, 2021 at 4:11 AM Tom Lane <tgl@sss.pgh.pa.us> wrote: >>> Longer-term, it seems like we really have to be able to represent >>> the notion of a remote column that has an "unknown" collation (that >>> is, one that doesn't match any local collation, or at least is not >>> known to do so). > >> +1 > >> In addition, a) we should detect whether local “default” matches >> remote “default”, > > If we had a way to do that, most of the problem here wouldn't exist. > I don't believe we can do it reliably. (Maybe we could put it on > the user to tell us, say via a foreign-server property?) A related situation is local and remote servers having different versions of glibc - in particular, pre versus post 2.28. I think there's still a major brewing storm here that hasn't yet fully hit the world of PG users. I know PG throws the warning message for queries using the wrong collation library version, but I can't remember - does the query still execute? If so, then glibc 2.28 seems to significnatly raise the likelihood of wrong query results across the entire global PG install base. Does PostgreSQL handle cases which involve FDWs (ala this thread) or hot standbys? Would be nice if some approach could be found to solve that problem at the same time as the one discussed on this thread. -Jeremy -- Jeremy Schneider Database Engineer Amazon Web Services
Commits
-
Doc: extend warnings about collation-mismatch hazards in postgres_fdw.
- 2aa255588756 9.6.24 landed
- 1d7e8e772453 10.19 landed
- b274c982db67 11.14 landed
- 97c5651cea0f 12.9 landed
- 7b0be9fb2ddd 15.0 landed
- 739b872f6c98 13.5 landed
- 02c4e3533926 14.0 landed
-
Add support for asynchronous execution.
- 27e1f14563cf 14.0 cited
-
Suppress unnecessary RelabelType nodes in yet more cases.
- 814a57065ec9 12.5 landed
- 69ffc2f83899 13.0 landed
- 207293240780 14.0 landed