Re: Idea: Avoid JOINs by using path expressions to follow FKs

Pavel Stehule <pavel.stehule@gmail.com>

From: Pavel Stehule <pavel.stehule@gmail.com>
To: Julien Rouhaud <rjuju123@gmail.com>
Cc: Joel Jacobson <joel@compiler.org>, Vik Fearing <vik@postgresfriends.org>, Tom Lane <tgl@sss.pgh.pa.us>, Andrew Dunstan <andrew@dunslane.net>, Alvaro Herrera <alvherre@alvh.no-ip.org>, PostgreSQL Hackers <pgsql-hackers@lists.postgresql.org>
Date: 2021-03-30T07:02:39Z
Lists: pgsql-hackers
út 30. 3. 2021 v 8:52 odesílatel Julien Rouhaud <rjuju123@gmail.com> napsal:

> On Tue, Mar 30, 2021 at 08:03:09AM +0200, Pavel Stehule wrote:
> >
> > On second hand, it can be very nice to have some special strict mode in
> > Postgres - maybe slower, not compatible, that disallow some dangerous or
> > unsafe queries. But it is possible to solve in extensions, but nobody did
> > it. Something like plpgsql_check for SQL - who will write sql_check?
>
> The #1 cause of problems is probably unqualified outer references, and
> unfortunately I don't think it's really possible to detect that in an
> extension, as the required information is only available in the raw
> parsetree.
>

the raw parsetree is available  I think. I didn't check it. But it can be
easy to attach or attach a copy to Query structure. Maybe there is no
necessary hook. But it can be a good reason for implementing a post parsing
hook.

It should be easy to check if all joins are related to foreign key
constraints.

Commits

  1. Clean up generation of default names for constraints, indexes, and serial