Re: WIP Join Removal
Heikki Linnakangas <[email protected]> Mon, 01 Sep 2008 22:23:19 +0300
| Newsgroups | gmane.comp.db.postgresql.devel.patches |
|---|---|
| Organization | EnterpriseDB |
| Message-ID | <[email protected]> |
Simon Riggs wrote: > Patch works, but there's a bit I haven't finished yet - checking unique > indexes. Did plan invalidation make it safe to rely on the presence of a unique index for planning decisions? Couldn't we also do join removal for inner joins, when there's a foreign key reference that enforces that there's one and only one matching tuple in the removed table: SELECT child.data FROM child, parent WHERE child.fkey = parent.pkey ? > + /* > + * We can now remove join by pulling up child plan from the keeprel. > + * This needs to be done considering costs, since its possible for > + * a nested inner indexscan plan to be cheaper. So it isn't > + * always desirable to remove the join. Can you elaborate that a bit? I can't imagine a case where we wouldn't want to remove a join, when we know we can. -- Heikki Linnakangas EnterpriseDB http://www.enterprisedb.com -- Sent via pgsql-patches mailing list ([email protected]) To make changes to your subscription: http://www.postgresql.org/mailpref/pgsql-patches