1
0
mirror of https://github.com/postgres/postgres.git synced 2025-07-05 07:21:24 +03:00

Correct oversight in hashjoin cost estimation: nodeHash sizes its hash

table for an average of NTUP_PER_BUCKET tuples/bucket, but cost_hashjoin
was assuming a target load of one tuple/bucket.  This was causing a
noticeable underestimate of hashjoin costs.
This commit is contained in:
Tom Lane
2000-04-18 05:43:02 +00:00
parent 24864d048e
commit 25442d8d2f
3 changed files with 16 additions and 8 deletions

View File

@ -7,7 +7,7 @@
* Portions Copyright (c) 1996-2000, PostgreSQL, Inc
* Portions Copyright (c) 1994, Regents of the University of California
*
* $Id: nodeHash.h,v 1.15 2000/01/26 05:58:05 momjian Exp $
* $Id: nodeHash.h,v 1.16 2000/04/18 05:43:00 tgl Exp $
*
*-------------------------------------------------------------------------
*/
@ -16,6 +16,9 @@
#include "nodes/plannodes.h"
/* NTUP_PER_BUCKET is exported because planner wants to see it */
#define NTUP_PER_BUCKET 10
extern TupleTableSlot *ExecHash(Hash *node);
extern bool ExecInitHash(Hash *node, EState *estate, Plan *parent);
extern int ExecCountSlotsHash(Hash *node);