|
PostgreSQL Source Code git master
|


Go to the source code of this file.
Macros | |
| #define | SHARED_TUPLESTORE_SINGLE_PASS 0x01 |
Typedefs | |
| typedef struct SharedTuplestore | SharedTuplestore |
| typedef struct SharedTuplestoreAccessor | SharedTuplestoreAccessor |
Functions | |
| size_t | sts_estimate (int participants) |
| SharedTuplestoreAccessor * | sts_initialize (SharedTuplestore *sts, int participants, int my_participant_number, size_t meta_data_size, int flags, SharedFileSet *fileset, const char *name) |
| SharedTuplestoreAccessor * | sts_attach (SharedTuplestore *sts, int my_participant_number, SharedFileSet *fileset) |
| void | sts_end_write (SharedTuplestoreAccessor *accessor) |
| void | sts_reinitialize (SharedTuplestoreAccessor *accessor) |
| void | sts_begin_parallel_scan (SharedTuplestoreAccessor *accessor) |
| void | sts_end_parallel_scan (SharedTuplestoreAccessor *accessor) |
| void | sts_puttuple (SharedTuplestoreAccessor *accessor, void *meta_data, MinimalTuple tuple) |
| MinimalTuple | sts_parallel_scan_next (SharedTuplestoreAccessor *accessor, void *meta_data) |
| #define SHARED_TUPLESTORE_SINGLE_PASS 0x01 |
Definition at line 30 of file sharedtuplestore.h.
Definition at line 21 of file sharedtuplestore.h.
Definition at line 24 of file sharedtuplestore.h.
|
extern |
Definition at line 177 of file sharedtuplestore.c.
References Assert, CurrentMemoryContext, fb(), and palloc0_object.
Referenced by ExecParallelHashEnsureBatchAccessors(), and ExecParallelHashRepartitionRest().
|
extern |
Definition at line 252 of file sharedtuplestore.c.
References Assert, fb(), i, PG_USED_FOR_ASSERTS_ONLY, and sts_end_parallel_scan().
Referenced by ExecParallelHashJoinNewBatch(), and ExecParallelHashRepartitionRest().
|
extern |
Definition at line 280 of file sharedtuplestore.c.
References BufFileClose(), and fb().
Referenced by ExecHashTableDetach(), ExecHashTableDetachBatch(), ExecParallelHashCloseBatchAccessors(), ExecParallelHashJoinNewBatch(), ExecParallelHashRepartitionRest(), ExecParallelPrepHashTableForUnmatched(), and sts_begin_parallel_scan().
|
extern |
Definition at line 212 of file sharedtuplestore.c.
References BufFileClose(), fb(), pfree(), and sts_flush_chunk().
Referenced by ExecHashTableDetach(), ExecParallelHashCloseBatchAccessors(), ExecParallelHashJoinPartitionOuter(), and MultiExecParallelHash().
|
extern |
Definition at line 125 of file sharedtuplestore.c.
References Assert, CurrentMemoryContext, elog, ERROR, fb(), SharedTuplestore::flags, i, SharedTuplestoreParticipant::lock, LWLockInitialize(), SharedTuplestore::meta_data_size, name, SharedTuplestore::name, SharedTuplestoreParticipant::npages, SharedTuplestore::nparticipants, palloc0_object, SharedTuplestore::participants, SharedTuplestoreParticipant::read_page, STS_CHUNK_DATA_SIZE, and SharedTuplestoreParticipant::writing.
Referenced by ExecParallelHashJoinSetUpBatches().
|
extern |
Definition at line 494 of file sharedtuplestore.c.
References BufFileClose(), BufFileOpenFileSet(), BufFileReadExact(), BufFileSeekBlock(), ereport, errcode_for_file_access(), errmsg(), ERROR, fb(), SharedTuplestoreParticipant::lock, LW_EXCLUSIVE, LWLockAcquire(), LWLockRelease(), MAXPGPATH, MemoryContextSwitchTo(), name, SharedTuplestoreParticipant::npages, SharedTuplestoreParticipant::read_page, STS_CHUNK_HEADER_SIZE, STS_CHUNK_PAGES, sts_filename(), and sts_read_tuple().
Referenced by ExecParallelHashJoinNewBatch(), ExecParallelHashJoinOuterGetTuple(), and ExecParallelHashRepartitionRest().
|
extern |
Definition at line 299 of file sharedtuplestore.c.
References Assert, BufFileCreateFileSet(), fb(), MAXPGPATH, MemoryContextAllocZero(), MemoryContextSwitchTo(), Min, name, STS_CHUNK_DATA_SIZE, STS_CHUNK_PAGES, sts_filename(), sts_flush_chunk(), MinimalTupleData::t_len, and SharedTuplestoreParticipant::writing.
Referenced by ExecParallelHashJoinPartitionOuter(), ExecParallelHashRepartitionFirst(), ExecParallelHashRepartitionRest(), and ExecParallelHashTableInsert().
|
extern |
Definition at line 233 of file sharedtuplestore.c.