PostgreSQL Source Code
git master
|
#include "storage/fileset.h"
Go to the source code of this file.
Typedefs | |
typedef struct BufFile | BufFile |
Functions | |
BufFile * | BufFileCreateTemp (bool interXact) |
void | BufFileClose (BufFile *file) |
pg_nodiscard size_t | BufFileRead (BufFile *file, void *ptr, size_t size) |
void | BufFileReadExact (BufFile *file, void *ptr, size_t size) |
size_t | BufFileReadMaybeEOF (BufFile *file, void *ptr, size_t size, bool eofOK) |
void | BufFileWrite (BufFile *file, const void *ptr, size_t size) |
int | BufFileSeek (BufFile *file, int fileno, off_t offset, int whence) |
void | BufFileTell (BufFile *file, int *fileno, off_t *offset) |
int | BufFileSeekBlock (BufFile *file, int64 blknum) |
int64 | BufFileSize (BufFile *file) |
int64 | BufFileAppend (BufFile *target, BufFile *source) |
BufFile * | BufFileCreateFileSet (FileSet *fileset, const char *name) |
void | BufFileExportFileSet (BufFile *file) |
BufFile * | BufFileOpenFileSet (FileSet *fileset, const char *name, int mode, bool missing_ok) |
void | BufFileDeleteFileSet (FileSet *fileset, const char *name, bool missing_ok) |
void | BufFileTruncateFileSet (BufFile *file, int fileno, off_t offset) |
Definition at line 902 of file buffile.c.
References Assert, BUFFILE_SEG_SIZE, elog, ERROR, BufFile::files, i, BufFile::numFiles, repalloc(), BufFile::resowner, and source.
Referenced by LogicalTapeImport().
void BufFileClose | ( | BufFile * | file | ) |
Definition at line 412 of file buffile.c.
References BufFileFlush(), FileClose(), BufFile::files, i, BufFile::numFiles, and pfree().
Referenced by ensure_last_message(), ExecHashJoinNewBatch(), ExecHashTableDestroy(), gistFreeBuildBuffers(), LogicalTapeSetClose(), SendBackupManifest(), stream_abort_internal(), stream_close_file(), sts_end_parallel_scan(), sts_end_write(), sts_parallel_scan_next(), subxact_info_read(), subxact_info_write(), tuplestore_clear(), and tuplestore_end().
Definition at line 267 of file buffile.c.
References BufFile::files, BufFile::fileset, makeBufFileCommon(), MakeNewFileSetSegment(), BufFile::name, name, palloc(), pstrdup(), and BufFile::readOnly.
Referenced by LogicalTapeSetCreate(), stream_open_file(), sts_puttuple(), and subxact_info_write().
BufFile* BufFileCreateTemp | ( | bool | interXact | ) |
Definition at line 193 of file buffile.c.
References Assert, BufFile::isInterXact, makeBufFile(), OpenTemporaryFile(), and PrepareTempTablespaces().
Referenced by ExecHashJoinSaveTuple(), gistInitBuildBuffers(), InitializeBackupManifest(), LogicalTapeSetCreate(), and tuplestore_puttuple_common().
void BufFileDeleteFileSet | ( | FileSet * | fileset, |
const char * | name, | ||
bool | missing_ok | ||
) |
Definition at line 364 of file buffile.c.
References CHECK_FOR_INTERRUPTS, elog, ERROR, FileSetDelete(), FileSetSegmentName(), MAXPGPATH, and name.
Referenced by stream_cleanup_files(), and subxact_info_write().
void BufFileExportFileSet | ( | BufFile * | file | ) |
Definition at line 394 of file buffile.c.
References Assert, BufFileFlush(), BufFile::fileset, and BufFile::readOnly.
Referenced by LogicalTapeFreeze().
Definition at line 291 of file buffile.c.
References CHECK_FOR_INTERRUPTS, ereport, errcode_for_file_access(), errmsg(), ERROR, BufFile::files, BufFile::fileset, FileSetOpen(), FileSetSegmentName(), makeBufFileCommon(), MAXPGPATH, mode, BufFile::name, name, palloc(), pfree(), pstrdup(), BufFile::readOnly, and repalloc().
Referenced by apply_spooled_messages(), ensure_last_message(), LogicalTapeImport(), stream_abort_internal(), stream_open_file(), sts_parallel_scan_next(), subxact_info_read(), and subxact_info_write().
pg_nodiscard size_t BufFileRead | ( | BufFile * | file, |
void * | ptr, | ||
size_t | size | ||
) |
Definition at line 645 of file buffile.c.
References BufFileReadCommon(), and size.
void BufFileReadExact | ( | BufFile * | file, |
void * | ptr, | ||
size_t | size | ||
) |
Definition at line 654 of file buffile.c.
References BufFileReadCommon(), and size.
Referenced by apply_spooled_messages(), ExecHashJoinGetSavedTuple(), ltsReadBlock(), ReadTempFileBlock(), readtup_heap(), SendBackupManifest(), sts_parallel_scan_next(), sts_read_tuple(), and subxact_info_read().
size_t BufFileReadMaybeEOF | ( | BufFile * | file, |
void * | ptr, | ||
size_t | size, | ||
bool | eofOK | ||
) |
Definition at line 664 of file buffile.c.
References BufFileReadCommon(), and size.
Referenced by apply_spooled_messages(), ExecHashJoinGetSavedTuple(), and getlen().
int BufFileSeek | ( | BufFile * | file, |
int | fileno, | ||
off_t | offset, | ||
int | whence | ||
) |
Definition at line 740 of file buffile.c.
References BufFileFlush(), BufFile::curFile, BufFile::curOffset, elog, ereport, errcode_for_file_access(), errmsg(), ERROR, FilePathName(), BufFile::files, FileSize(), MAX_PHYSICAL_FILESIZE, BufFile::name, BufFile::nbytes, BufFile::numFiles, and BufFile::pos.
Referenced by BufFileSeekBlock(), ensure_last_message(), ExecHashJoinNewBatch(), SendBackupManifest(), stream_open_file(), tuplestore_copy_read_pointer(), tuplestore_gettuple(), tuplestore_puttuple_common(), tuplestore_rescan(), and tuplestore_select_read_pointer().
Definition at line 851 of file buffile.c.
References BUFFILE_SEG_SIZE, and BufFileSeek().
Referenced by ltsReadBlock(), ltsWriteBlock(), ReadTempFileBlock(), sts_parallel_scan_next(), and WriteTempFileBlock().
Definition at line 866 of file buffile.c.
References ereport, errcode_for_file_access(), errmsg(), ERROR, FilePathName(), BufFile::files, FileSize(), MAX_PHYSICAL_FILESIZE, BufFile::name, and BufFile::numFiles.
Referenced by LogicalTapeImport(), and tuplestore_updatemax().
void BufFileTell | ( | BufFile * | file, |
int * | fileno, | ||
off_t * | offset | ||
) |
Definition at line 833 of file buffile.c.
References BufFile::curFile, BufFile::curOffset, and BufFile::pos.
Referenced by apply_spooled_messages(), dumptuples(), ensure_last_message(), subxact_info_add(), tuplestore_copy_read_pointer(), tuplestore_gettuple(), tuplestore_puttuple_common(), and tuplestore_select_read_pointer().
void BufFileTruncateFileSet | ( | BufFile * | file, |
int | fileno, | ||
off_t | offset | ||
) |
Definition at line 928 of file buffile.c.
References BufFile::curFile, BufFile::curOffset, ereport, errcode_for_file_access(), errmsg(), ERROR, FileClose(), FilePathName(), BufFile::files, BufFile::fileset, FileSetDelete(), FileSetSegmentName(), FileTruncate(), i, MAX_PHYSICAL_FILESIZE, MAXPGPATH, BufFile::name, BufFile::nbytes, BufFile::numFiles, and BufFile::pos.
Referenced by stream_abort_internal().
void BufFileWrite | ( | BufFile * | file, |
const void * | ptr, | ||
size_t | size | ||
) |
Definition at line 676 of file buffile.c.
References Assert, BufFile::buffer, BufFileDumpBuffer(), BufFile::curOffset, PGAlignedBlock::data, BufFile::dirty, BufFile::nbytes, BufFile::pos, BufFile::readOnly, and size.
Referenced by AppendStringToManifest(), ExecHashJoinSaveTuple(), ltsWriteBlock(), stream_write_change(), sts_flush_chunk(), subxact_info_write(), WriteTempFileBlock(), and writetup_heap().