1
0
mirror of https://github.com/postgres/postgres.git synced 2025-07-03 20:02:46 +03:00

Better solution to integer overflow problem in hash batch-number

computation: reduce the bucket number mod nbatch.  This changes the
association between original bucket numbers and batches, but that
doesn't matter.  Minor other cleanups in hashjoin code to help
centralize decisions.
This commit is contained in:
Tom Lane
2002-12-30 15:21:23 +00:00
parent e533e7dcf5
commit a0fa0117a5
4 changed files with 60 additions and 91 deletions

View File

@ -7,7 +7,7 @@
* Portions Copyright (c) 1996-2002, PostgreSQL Global Development Group
* Portions Copyright (c) 1994, Regents of the University of California
*
* $Id: nodeHash.h,v 1.27 2002/12/05 15:50:37 tgl Exp $
* $Id: nodeHash.h,v 1.28 2002/12/30 15:21:23 tgl Exp $
*
*-------------------------------------------------------------------------
*/
@ -30,6 +30,7 @@ extern void ExecHashTableInsert(HashJoinTable hashtable,
extern int ExecHashGetBucket(HashJoinTable hashtable,
ExprContext *econtext,
List *hashkeys);
extern int ExecHashGetBatch(int bucketno, HashJoinTable hashtable);
extern HeapTuple ExecScanHashBucket(HashJoinState *hjstate, List *hjclauses,
ExprContext *econtext);
extern void ExecHashTableReset(HashJoinTable hashtable, long ntuples);