mirror of
https://github.com/postgres/postgres.git
synced 2025-11-25 12:03:53 +03:00
Remove planner's private fields from Query struct, and put them into
a new PlannerInfo struct, which is passed around instead of the bare Query in all the planning code. This commit is essentially just a code-beautification exercise, but it does open the door to making larger changes to the planner data structures without having to muck with the widely-known Query struct.
This commit is contained in:
@@ -6,7 +6,7 @@
|
||||
* Portions Copyright (c) 1996-2005, PostgreSQL Global Development Group
|
||||
* Portions Copyright (c) 1994, Regents of the University of California
|
||||
*
|
||||
* $PostgreSQL: pgsql/src/include/optimizer/geqo.h,v 1.38 2004/12/31 22:03:36 pgsql Exp $
|
||||
* $PostgreSQL: pgsql/src/include/optimizer/geqo.h,v 1.39 2005/06/05 22:32:58 tgl Exp $
|
||||
*
|
||||
*-------------------------------------------------------------------------
|
||||
*/
|
||||
@@ -72,13 +72,14 @@ extern double Geqo_selection_bias;
|
||||
*/
|
||||
typedef struct
|
||||
{
|
||||
Query *root; /* the query we are planning */
|
||||
PlannerInfo *root; /* the query we are planning */
|
||||
List *initial_rels; /* the base relations */
|
||||
} GeqoEvalData;
|
||||
|
||||
|
||||
/* routines in geqo_main.c */
|
||||
extern RelOptInfo *geqo(Query *root, int number_of_rels, List *initial_rels);
|
||||
extern RelOptInfo *geqo(PlannerInfo *root,
|
||||
int number_of_rels, List *initial_rels);
|
||||
|
||||
/* routines in geqo_eval.c */
|
||||
extern Cost geqo_eval(Gene *tour, int num_gene, GeqoEvalData *evaldata);
|
||||
|
||||
Reference in New Issue
Block a user