7
7
* Portions Copyright (c) 1996-2002, PostgreSQL Global Development Group
8
8
* Portions Copyright (c) 1994, Regents of the University of California
9
9
*
10
- * $Id: relation.h,v 1.69 2002/11/24 21 :52:15 tgl Exp $
10
+ * $Id: relation.h,v 1.70 2002/11/27 20 :52:04 tgl Exp $
11
11
*
12
12
*-------------------------------------------------------------------------
13
13
*/
@@ -171,7 +171,7 @@ typedef struct RelOptInfo
171
171
RelOptKind reloptkind ;
172
172
173
173
/* all relations included in this RelOptInfo */
174
- Relids relids ; /* integer list of base relids (RT
174
+ Relids relids ; /* integer list of base relids (rangetable
175
175
* indexes) */
176
176
177
177
/* size estimates generated by planner */
@@ -304,6 +304,11 @@ typedef struct PathKeyItem
304
304
/*
305
305
* Type "Path" is used as-is for sequential-scan paths. For other
306
306
* path types it is the first component of a larger struct.
307
+ *
308
+ * Note: "pathtype" is the NodeTag of the Plan node we could build from this
309
+ * Path. It is partially redundant with the Path's NodeTag, but allows us
310
+ * to use the same Path type for multiple Plan types where there is no need
311
+ * to distinguish the Plan type during path processing.
307
312
*/
308
313
309
314
typedef struct Path
@@ -319,7 +324,6 @@ typedef struct Path
319
324
* fetched) */
320
325
321
326
NodeTag pathtype ; /* tag identifying scan/join method */
322
- /* XXX why is pathtype separate from the NodeTag? */
323
327
324
328
List * pathkeys ; /* sort ordering of path's output */
325
329
/* pathkeys is a List of Lists of PathKeyItem nodes; see above */
@@ -373,7 +377,7 @@ typedef struct IndexPath
373
377
typedef struct TidPath
374
378
{
375
379
Path path ;
376
- List * tideval ;
380
+ List * tideval ; /* qual(s) involving CTID = something */
377
381
Relids unjoined_relids ; /* some rels not yet part of my Path */
378
382
} TidPath ;
379
383
0 commit comments