Go to the source code of this file.
◆ FORKNAMECHARS
#define FORKNAMECHARS 4 /* max chars for a fork name */ |
◆ InvalidRelFileNumber
◆ MAX_FORKNUM
◆ OIDCHARS
#define OIDCHARS 10 /* max chars printed by %u */ |
◆ RelFileNumberIsValid
◆ relpath
#define relpath |
( |
|
rlocator, |
|
|
|
forknum |
|
) |
| relpathbackend((rlocator).locator, (rlocator).backend, forknum) |
◆ relpathbackend
#define relpathbackend |
( |
|
rlocator, |
|
|
|
backend, |
|
|
|
forknum |
|
) |
| |
Value: GetRelationPath((rlocator).dbOid, (rlocator).spcOid, (rlocator).relNumber, \
backend, forknum)
char * GetRelationPath(Oid dbOid, Oid spcOid, RelFileNumber relNumber, int backendId, ForkNumber forkNumber)
Definition at line 85 of file relpath.h.
◆ relpathperm
◆ TABLESPACE_VERSION_DIRECTORY
#define TABLESPACE_VERSION_DIRECTORY |
Value: "PG_" PG_MAJORVERSION "_" \
#define CATALOG_VERSION_NO
Definition at line 33 of file relpath.h.
◆ ForkNumber
◆ RelFileNumber
◆ ForkNumber
Enumerator |
---|
InvalidForkNumber | |
MAIN_FORKNUM | |
FSM_FORKNUM | |
VISIBILITYMAP_FORKNUM | |
INIT_FORKNUM | |
Definition at line 47 of file relpath.h.
◆ forkname_chars()
int forkname_chars |
( |
const char * |
str, |
|
|
ForkNumber * |
fork |
|
) |
| |
◆ forkname_to_number()
ForkNumber forkname_to_number |
( |
const char * |
forkName | ) |
|
Definition at line 50 of file relpath.c.
54 for (forkNum = 0; forkNum <=
MAX_FORKNUM; forkNum++)
55 if (strcmp(
forkNames[forkNum], forkName) == 0)
60 (
errcode(ERRCODE_INVALID_PARAMETER_VALUE),
61 errmsg(
"invalid fork name"),
62 errhint(
"Valid fork names are \"main\", \"fsm\", "
63 "\"vm\", and \"init\".")));
int errhint(const char *fmt,...)
int errcode(int sqlerrcode)
int errmsg(const char *fmt,...)
#define ereport(elevel,...)
References ereport, errcode(), errhint(), errmsg(), ERROR, forkNames, InvalidForkNumber, and MAX_FORKNUM.
Referenced by get_raw_page_fork(), get_raw_page_fork_1_9(), main(), pg_prewarm(), and pg_relation_size().
◆ GetDatabasePath()
char* GetDatabasePath |
( |
Oid |
dbOid, |
|
|
Oid |
spcOid |
|
) |
| |
Definition at line 110 of file relpath.c.
112 if (spcOid == GLOBALTABLESPACE_OID)
118 else if (spcOid == DEFAULTTABLESPACE_OID)
126 return psprintf(
"pg_tblspc/%u/%s/%u",
Assert(fmt[strlen(fmt) - 1] !='\n')
char * pstrdup(const char *in)
char * psprintf(const char *fmt,...)
#define TABLESPACE_VERSION_DIRECTORY
References Assert(), psprintf(), pstrdup(), and TABLESPACE_VERSION_DIRECTORY.
Referenced by check_db_file_conflict(), CreateDatabaseUsingFileCopy(), CreateDatabaseUsingWalLog(), createdb(), dbase_redo(), InitPostgres(), movedb(), movedb_failure_callback(), ProcessCommittedInvalidationMessages(), relmap_redo(), remove_dbtablespaces(), and TablespaceCreateDbspace().
◆ GetRelationPath()
Definition at line 141 of file relpath.c.
146 if (spcOid == GLOBALTABLESPACE_OID)
155 path =
psprintf(
"global/%u", relNumber);
157 else if (spcOid == DEFAULTTABLESPACE_OID)
173 path =
psprintf(
"base/%u/t%d_%u_%s",
174 dbOid, backendId, relNumber,
178 dbOid, backendId, relNumber);
187 path =
psprintf(
"pg_tblspc/%u/%s/%u/%u_%s",
192 path =
psprintf(
"pg_tblspc/%u/%s/%u/%u",
199 path =
psprintf(
"pg_tblspc/%u/%s/%u/t%d_%u_%s",
201 dbOid, backendId, relNumber,
204 path =
psprintf(
"pg_tblspc/%u/%s/%u/t%d_%u",
206 dbOid, backendId, relNumber);
References Assert(), forkNames, InvalidBackendId, MAIN_FORKNUM, psprintf(), and TABLESPACE_VERSION_DIRECTORY.
◆ forkNames