Quellcodebibliothek Statistik Leitseite products/Sources/formale Sprachen/C/Postgres/src/include/common/   (Postgres Database Version 18.4©)  Datei vom 11.4.2026 mit Größe 1 kB image not shown  

Quelle  file_utils.h

  Sprache: C
 

/*-------------------------------------------------------------------------
 *
 * Assorted utility functions to work on files.
 *
 *
 * Portions Copyright (c) 1996-2025, PostgreSQL Global Development Group
 * Portions Copyright (c) 1994, Regents of the University of California
 *
 * src/include/common/file_utils.h
 *
 *-------------------------------------------------------------------------
 */

#ifndef FILE_UTILS_H
#define FILE_UTILS_H

#include <dirent.h>

typedef enum PGFileType
{
 PGFILETYPE_ERROR,
 PGFILETYPE_UNKNOWN,
 PGFILETYPE_REG,
 PGFILETYPE_DIR,
 PGFILETYPE_LNK,
} PGFileType;

typedef enum DataDirSyncMethod
{
 DATA_DIR_SYNC_METHOD_FSYNC,
 DATA_DIR_SYNC_METHOD_SYNCFS,
} DataDirSyncMethod;

struct iovec;     /* avoid including port/pg_iovec.h here */

#ifdef FRONTEND
extern int pre_sync_fname(const char *fname, bool isdir);
extern int fsync_fname(const char *fname, bool isdir);
extern void sync_pgdata(const char *pg_data, int serverVersion,
      DataDirSyncMethod sync_method, bool sync_data_files);
extern void sync_dir_recurse(const char *dir, DataDirSyncMethod sync_method);
extern int durable_rename(const char *oldfile, const char *newfile);
extern int fsync_parent_path(const char *fname);
#endif

extern PGFileType get_dirent_type(const char *path,
          const struct dirent *de,
          bool look_through_symlinks,
          int elevel);

extern int compute_remaining_iovec(struct iovec *destination,
         const struct iovec *source,
         int iovcnt,
         size_t transferred);

extern ssize_t pg_pwritev_with_retry(int fd,
          const struct iovec *iov,
          int iovcnt,
          off_t offset);

extern ssize_t pg_pwrite_zeros(int fd, size_t size, off_t offset);

/* Filename components */
#define PG_TEMP_FILES_DIR "pgsql_tmp"
#define PG_TEMP_FILE_PREFIX "pgsql_tmp"

#endif       /* FILE_UTILS_H */

Messung V0.5 in Prozent
C=91 H=96 G=93

¤ Dauer der Verarbeitung: 0.13 Sekunden  (vorverarbeitet am  2026-08-08) ¤

*© Formatika GbR, Deutschland






Wurzel

Suchen

PVS Prover

Isabelle Prover

NIST Cobol Testsuite

Cephes Mathematical Library

Vienna Development Method

Haftungshinweis

Die Informationen auf dieser Webseite wurden nach bestem Wissen sorgfältig zusammengestellt. Es wird jedoch weder Vollständigkeit, noch Richtigkeit, noch Qualität der bereit gestellten Informationen zugesichert.

Bemerkung:

Die farbliche Syntaxdarstellung und die Messung sind noch experimentell.