1/*-------------------------------------------------------------------------
4 * Simple mechanism for sharing tuples between backends.
6 * Portions Copyright (c) 1996-2025, PostgreSQL Global Development Group
7 * Portions Copyright (c) 1994, Regents of the University of California
9 * src/include/utils/sharedtuplestore.h
11 *-------------------------------------------------------------------------
13#ifndef SHAREDTUPLESTORE_H
14#define SHAREDTUPLESTORE_H
27 * A flag indicating that the tuplestore will only be scanned once, so backing
28 * files can be unlinked early.
30 #define SHARED_TUPLESTORE_SINGLE_PASS 0x01
36 int my_participant_number,
37 size_t meta_data_size,
43 int my_participant_number,
61#endif /* SHAREDTUPLESTORE_H */
void sts_reinitialize(SharedTuplestoreAccessor *accessor)
SharedTuplestoreAccessor * sts_attach(SharedTuplestore *sts, int my_participant_number, SharedFileSet *fileset)
MinimalTuple sts_parallel_scan_next(SharedTuplestoreAccessor *accessor, void *meta_data)
void sts_end_write(SharedTuplestoreAccessor *accessor)
SharedTuplestoreAccessor * sts_initialize(SharedTuplestore *sts, int participants, int my_participant_number, size_t meta_data_size, int flags, SharedFileSet *fileset, const char *name)
size_t sts_estimate(int participants)
void sts_end_parallel_scan(SharedTuplestoreAccessor *accessor)
void sts_puttuple(SharedTuplestoreAccessor *accessor, void *meta_data, MinimalTuple tuple)
void sts_begin_parallel_scan(SharedTuplestoreAccessor *accessor)