PostgreSQL Source Code
git master
|
#include "postgres.h"
#include "access/hash.h"
#include "commands/progress.h"
#include "miscadmin.h"
#include "pgstat.h"
#include "port/pg_bitutils.h"
#include "utils/tuplesort.h"
Go to the source code of this file.
Data Structures | |
struct | HSpool |
Functions | |
HSpool * | _h_spoolinit (Relation heap, Relation index, uint32 num_buckets) |
void | _h_spooldestroy (HSpool *hspool) |
void | _h_spool (HSpool *hspool, ItemPointer self, const Datum *values, const bool *isnull) |
void | _h_indexbuild (HSpool *hspool, Relation heapRel) |
Definition at line 120 of file hashsort.c.
References _hash_doinsert(), _hash_get_indextuple_hashkey(), _hash_hashkey2bucket(), Assert, CHECK_FOR_INTERRUPTS, HSpool::high_mask, HSpool::index, HSpool::low_mask, HSpool::max_buckets, pgstat_progress_update_param(), PROGRESS_CREATEIDX_TUPLES_DONE, HSpool::sortstate, tuplesort_getindextuple(), and tuplesort_performsort().
Referenced by hashbuild().
void _h_spool | ( | HSpool * | hspool, |
ItemPointer | self, | ||
const Datum * | values, | ||
const bool * | isnull | ||
) |
Definition at line 109 of file hashsort.c.
References HSpool::index, HSpool::sortstate, tuplesort_putindextuplevalues(), and values.
Referenced by hashbuildCallback().
void _h_spooldestroy | ( | HSpool * | hspool | ) |
Definition at line 99 of file hashsort.c.
References pfree(), HSpool::sortstate, and tuplesort_end().
Referenced by hashbuild().
Definition at line 60 of file hashsort.c.
References HSpool::high_mask, HSpool::index, HSpool::low_mask, maintenance_work_mem, HSpool::max_buckets, palloc0(), pg_nextpower2_32(), HSpool::sortstate, tuplesort_begin_index_hash(), and TUPLESORT_NONE.
Referenced by hashbuild().