diff options
| author | Simon Riggs | 2016-04-07 11:08:33 +0000 |
|---|---|---|
| committer | Simon Riggs | 2016-04-07 11:08:33 +0000 |
| commit | 015e88942aa50f0d419ddac00e63bb06d6e62e86 (patch) | |
| tree | 5f8bffa51675e88ebdfb9f35ae2a62ce8dbc63d9 /src/include/utils | |
| parent | f2b1b3079ce9d2965f6e450585f24d18cdf5647b (diff) | |
Load FK defs into relcache for use by planner
Fastpath ignores this if no triggers defined.
Author: Tomas Vondra, with fastpath and comments added by me
Reviewers: David Rowley, Simon Riggs
Diffstat (limited to 'src/include/utils')
| -rw-r--r-- | src/include/utils/rel.h | 3 | ||||
| -rw-r--r-- | src/include/utils/relcache.h | 1 |
2 files changed, 4 insertions, 0 deletions
diff --git a/src/include/utils/rel.h b/src/include/utils/rel.h index f2bebf2c3dd..51eb27a381b 100644 --- a/src/include/utils/rel.h +++ b/src/include/utils/rel.h @@ -94,6 +94,9 @@ typedef struct RelationData Oid rd_oidindex; /* OID of unique index on OID, if any */ Oid rd_replidindex; /* OID of replica identity index, if any */ + /* data managed by RelationGetFKList: */ + List *rd_fkeylist; /* OIDs of foreign keys */ + /* data managed by RelationGetIndexAttrBitmap: */ Bitmapset *rd_indexattr; /* identifies columns used in indexes */ Bitmapset *rd_keyattr; /* cols that can be ref'd by foreign keys */ diff --git a/src/include/utils/relcache.h b/src/include/utils/relcache.h index 1b4830462d5..7f07c269145 100644 --- a/src/include/utils/relcache.h +++ b/src/include/utils/relcache.h @@ -38,6 +38,7 @@ extern void RelationClose(Relation relation); * Routines to compute/retrieve additional cached information */ extern List *RelationGetIndexList(Relation relation); +extern List *RelationGetFKeyList(Relation relation); extern Oid RelationGetOidIndex(Relation relation); extern Oid RelationGetReplicaIndex(Relation relation); extern List *RelationGetIndexExpressions(Relation relation); |
