26#define InvalidRelFileNumber ((RelFileNumber) InvalidOid)
27#define RelFileNumberIsValid(relnumber) \
28 ((bool) ((relnumber) != InvalidRelFileNumber))
33#define TABLESPACE_VERSION_DIRECTORY "PG_" PG_MAJORVERSION "_" \
34 CppAsString2(CATALOG_VERSION_NO)
41#define PG_TBLSPC_DIR "pg_tblspc"
42#define PG_TBLSPC_DIR_SLASH "pg_tblspc/"
71#define MAX_FORKNUM INIT_FORKNUM
73#define FORKNAMECHARS 4
85#define PROCNUMBER_CHARS 6
97#define REL_PATH_STR_MAXLEN \
99 sizeof(PG_TBLSPC_DIR) - 1 \
100 + sizeof((char)'/') \
102 + sizeof((char)'/') \
103 + sizeof(TABLESPACE_VERSION_DIRECTORY) - 1 \
104 + sizeof((char)'/') \
106 + sizeof((char)'/') \
107 + sizeof((char)'t') \
109 + sizeof((char)'_') \
111 + sizeof((char)'_') \
142#define relpathbackend(rlocator, backend, forknum) \
143 GetRelationPath((rlocator).dbOid, (rlocator).spcOid, (rlocator).relNumber, \
147#define relpathperm(rlocator, forknum) \
148 relpathbackend(rlocator, INVALID_PROC_NUMBER, forknum)
151#define relpath(rlocator, forknum) \
152 relpathbackend((rlocator).locator, (rlocator).backend, forknum)
RelPathStr GetRelationPath(Oid dbOid, Oid spcOid, RelFileNumber relNumber, int procNumber, ForkNumber forkNumber)
struct RelPathStr RelPathStr
#define REL_PATH_STR_MAXLEN
PGDLLIMPORT const char *const forkNames[]
int forkname_chars(const char *str, ForkNumber *fork)
ForkNumber forkname_to_number(const char *forkName)
char * GetDatabasePath(Oid dbOid, Oid spcOid)
char str[REL_PATH_STR_MAXLEN+1]