|
|
|
|
@ -3,10 +3,6 @@ |
|
|
|
|
* execGrouping.c |
|
|
|
|
* executor utility routines for grouping, hashing, and aggregation |
|
|
|
|
* |
|
|
|
|
* Note: we currently assume that equality and hashing functions are not |
|
|
|
|
* collation-sensitive, so the code in this file has no support for passing |
|
|
|
|
* collation settings through from callers. That may have to change someday. |
|
|
|
|
* |
|
|
|
|
* Portions Copyright (c) 1996-2020, PostgreSQL Global Development Group |
|
|
|
|
* Portions Copyright (c) 1994, Regents of the University of California |
|
|
|
|
* |
|
|
|
|
@ -28,8 +24,9 @@ |
|
|
|
|
static int TupleHashTableMatch(struct tuplehash_hash *tb, const MinimalTuple tuple1, const MinimalTuple tuple2); |
|
|
|
|
static uint32 TupleHashTableHash_internal(struct tuplehash_hash *tb, |
|
|
|
|
const MinimalTuple tuple); |
|
|
|
|
static TupleHashEntry LookupTupleHashEntry_internal( |
|
|
|
|
TupleHashTable hashtable, TupleTableSlot *slot, bool *isnew, uint32 hash); |
|
|
|
|
static TupleHashEntry LookupTupleHashEntry_internal(TupleHashTable hashtable, |
|
|
|
|
TupleTableSlot *slot, |
|
|
|
|
bool *isnew, uint32 hash); |
|
|
|
|
|
|
|
|
|
/*
|
|
|
|
|
* Define parameters for tuple hash table code generation. The interface is |
|
|
|
|
|