From cf956d512d83dd89b4d87c046ca2f088b7af58d3 Mon Sep 17 00:00:00 2001 From: Tom Lane Date: Fri, 12 Nov 2004 21:55:01 +0000 Subject: [PATCH] Remove now-redundant description of Postgres file layout, in favor of referencing the Database File Layout chapter I just added to the main documentation. --- contrib/oid2name/README.oid2name | 27 +++------------------------ 1 file changed, 3 insertions(+), 24 deletions(-) diff --git a/contrib/oid2name/README.oid2name b/contrib/oid2name/README.oid2name index ea9f48b43f..9dd1ddc310 100644 --- a/contrib/oid2name/README.oid2name +++ b/contrib/oid2name/README.oid2name @@ -1,28 +1,7 @@ This utility allows administrators to examine the file structure used by -PostgreSQL. - -Databases are placed in directories named after their OIDs in pg_database, -and the table files within a database's directory are named by "filenode" -numbers, which are stored in pg_class.relfilenode. - -Note that while a table's filenode often matches its OID, this is *not* -necessarily the case; some operations, like TRUNCATE, REINDEX, CLUSTER -and some forms of ALTER TABLE, can change the filenode while preserving -the OID. Avoid assuming that filenode and table OID are the same. - -When a table exceeds 1Gb, it is divided into gigabyte-sized "segments". -The first segment's file name is the same as the filenode; subsequent -segments are named filenode.1, filenode.2, etc. - -Tablespaces make the scenario more complicated. Each non-default -tablespace has a symlink inside the pg_tblspc directory, which points to -the physical tablespace directory (as specified in its CREATE TABLESPACE -command). The symlink is named after the tablespace's OID. Inside the -physical tablespace directory there is another directory for each database -that has elements in the tablespace, named after the database's OID. -Tables within that directory follow the filenode naming scheme. The -"pg_default" tablespace is not addressed via pg_tblspc, but corresponds to -$PGDATA/base. +PostgreSQL. To make use of it, you need to be familiar with the file +structure, which is described in the "Database File Layout" chapter of +the "Internals" section of the PostgreSQL documentation. Oid2name connects to the database and extracts OID, filenode, and table name information. You can also have it show database OIDs and tablespace -- GitLab