diff options
author | Bruce Momjian <bruce@momjian.us> | 1999-11-23 20:07:06 +0000 |
---|---|---|
committer | Bruce Momjian <bruce@momjian.us> | 1999-11-23 20:07:06 +0000 |
commit | 6f9ff92cc0ff6a07d2fe38abe044286ee98d44a0 (patch) | |
tree | 797395e647f1e8a741214d5eaafb9ee66a64c462 /src/backend/optimizer/util/pathnode.c | |
parent | 54ffd4677aaf56e928af9e3f689297d6c06d1fe9 (diff) | |
download | postgresql-6f9ff92cc0ff6a07d2fe38abe044286ee98d44a0.tar.gz postgresql-6f9ff92cc0ff6a07d2fe38abe044286ee98d44a0.zip |
Tid access method feature from Hiroshi Inoue, Inoue@tpf.co.jp
Diffstat (limited to 'src/backend/optimizer/util/pathnode.c')
-rw-r--r-- | src/backend/optimizer/util/pathnode.c | 28 |
1 files changed, 27 insertions, 1 deletions
diff --git a/src/backend/optimizer/util/pathnode.c b/src/backend/optimizer/util/pathnode.c index f3b99f88929..0f9bf1b8bbb 100644 --- a/src/backend/optimizer/util/pathnode.c +++ b/src/backend/optimizer/util/pathnode.c @@ -7,7 +7,7 @@ * * * IDENTIFICATION - * $Header: /cvsroot/pgsql/src/backend/optimizer/util/pathnode.c,v 1.54 1999/08/16 02:17:58 tgl Exp $ + * $Header: /cvsroot/pgsql/src/backend/optimizer/util/pathnode.c,v 1.55 1999/11/23 20:07:00 momjian Exp $ * *------------------------------------------------------------------------- */ @@ -319,6 +319,32 @@ create_index_path(Query *root, } /* + * create_tidscan_path + * Creates a path corresponding to a tid_direct scan, returning the + * pathnode. + * + */ +TidPath * +create_tidscan_path(RelOptInfo *rel, List *tideval) +{ + TidPath *pathnode = makeNode(TidPath); + + pathnode->path.pathtype = T_TidScan; + pathnode->path.parent = rel; + pathnode->path.path_cost = 0.0; + pathnode->path.pathkeys = NIL; + + pathnode->path.path_cost = cost_tidscan(tideval); + /* divide selectivity for each clause to get an equal selectivity + * as IndexScan does OK ? + */ + pathnode->tideval = copyObject(tideval); + pathnode->unjoined_relids = NIL; + + return pathnode; +} + +/* * create_nestloop_path * Creates a pathnode corresponding to a nestloop join between two * relations. |