From 3c5ec35dea254892d75d829b5642fc3732c8fcf9 Mon Sep 17 00:00:00 2001 From: Michael Paquier Date: Thu, 5 Feb 2026 09:02:12 +0900 Subject: [PATCH] oid2name: Add relation path to the information provided by -x/--extended This affects two command patterns, showing information about relations: * oid2name -x -d DBNAME, applying to all relations on a database. * oid2name -x -d DBNAME -t TABNAME [-t ..], applying to a subset of defined relations on a database. The relative path of a relation is added to the information provided, using pg_relation_filepath(). Author: David Bidoc Reviewed-by: Laurenz Albe Reviewed-by: Guillaume Lelarge Reviewed-by: Euler Taveira Reviewed-by: Mark Wong Discussion: https://postgr.es/m/CABour1v2CU1wjjoM86wAFyezJQ3-+ncH43zY1f1uXeVojVN8Ow@mail.gmail.com --- contrib/oid2name/oid2name.c | 4 ++-- doc/src/sgml/oid2name.sgml | 10 +++++----- 2 files changed, 7 insertions(+), 7 deletions(-) diff --git a/contrib/oid2name/oid2name.c b/contrib/oid2name/oid2name.c index 51802907138..63e6ce2dae8 100644 --- a/contrib/oid2name/oid2name.c +++ b/contrib/oid2name/oid2name.c @@ -469,7 +469,7 @@ void sql_exec_dumpalltables(PGconn *conn, struct options *opts) { char todo[1024]; - char *addfields = ",c.oid AS \"Oid\", nspname AS \"Schema\", spcname as \"Tablespace\" "; + char *addfields = ",c.oid AS \"Oid\", nspname AS \"Schema\", spcname as \"Tablespace\", pg_relation_filepath(c.oid) as \"Path\" "; snprintf(todo, sizeof(todo), "SELECT pg_catalog.pg_relation_filenode(c.oid) as \"Filenode\", relname as \"Table Name\" %s " @@ -507,7 +507,7 @@ sql_exec_searchtables(PGconn *conn, struct options *opts) *comma_filenumbers, *comma_tables; bool written = false; - char *addfields = ",c.oid AS \"Oid\", nspname AS \"Schema\", spcname as \"Tablespace\" "; + char *addfields = ",c.oid AS \"Oid\", nspname AS \"Schema\", spcname as \"Tablespace\", pg_relation_filepath(c.oid) as \"Path\" "; /* get tables qualifiers, whether names, filenumbers, or OIDs */ comma_oids = get_comma_elts(opts->oids); diff --git a/doc/src/sgml/oid2name.sgml b/doc/src/sgml/oid2name.sgml index 54cc9be2b82..9340d7376aa 100644 --- a/doc/src/sgml/oid2name.sgml +++ b/doc/src/sgml/oid2name.sgml @@ -118,7 +118,7 @@ display more information about each object shown: tablespace name, - schema name, and OID. + schema name, OID and path. @@ -299,10 +299,10 @@ From database "alvherre": $ # you can mix the options, and get more details with -x $ oid2name -d alvherre -t accounts -f 1155291 -x From database "alvherre": - Filenode Table Name Oid Schema Tablespace ------------------------------------------------------- - 155173 accounts 155173 public pg_default - 1155291 accounts_pkey 1155291 public pg_default + Filenode Table Name Oid Schema Tablespace Path +-------------------------------------------------------------------------- + 155173 accounts 155173 public pg_default base/17228/155173 + 1155291 accounts_pkey 1155291 public pg_default base/17228/1155291 $ # show disk space for every db object $ du [0-9]* | -- 2.47.3