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

Joel Jacobson <joel@compiler.org>

From: "Joel Jacobson" <joel@compiler.org>
To: "Vik Fearing" <vik@postgresfriends.org>, "Tom Lane" <tgl@sss.pgh.pa.us>, "Andrew Dunstan" <andrew@dunslane.net>
Cc: "Alvaro Herrera" <alvherre@alvh.no-ip.org>, pgsql-hackers@lists.postgresql.org
Date: 2021-03-29T20:59:38Z
Lists: pgsql-hackers
On Mon, Mar 29, 2021, at 20:53, Vik Fearing wrote:
> On 3/29/21 7:55 PM, Joel Jacobson wrote:
> > Do you know if REF is meant to be a replacement for foreign keys?
> > 
> > Are they a different thing meant to co-exist with foreign keys,
> > or are they actually foreign keys "under the hood"
> > or something else entirely?
> 
> They're supposed to be OOP where each row in the typed table is an
> instance of the object.  Types can also have methods associated with
> them, and the instance tables can have subtables similar to our table
> inheritance.  The dereference operator is replaced by a subquery.
> 
> There is a whole slew of things in this area of the standard that
> apparently never caught on.

Hmm. Since it never caught on, maybe it was partly due to too much complexity, and maybe can invent a simpler solution?

I would also be against this idea if the complexity cost would be too high,
but I think Tom's foreign key constraint name idea looks fruitful since it's simple and non-invasive.

/Joel

Commits

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