Estructura de una página Postgresql

From: silv silv <silviline1(at)yahoo(dot)es>
To: pgsql-es-ayuda(at)postgresql(dot)org
Subject: Estructura de una página Postgresql
Date: 2004-10-07 15:46:42
Message-ID: 20041007154642.57131.qmail@web50106.mail.yahoo.com
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-es-ayuda

Hola,

Me encantaría poder profundizar en el tema que surgió
hace días:

http://archives.postgresql.org/pgsql-es-ayuda/2004-09/msg00271.php

He estado investigando, guiándome por la respuesta, y
así he conseguido comprender un poco mejor cómo
funciona Postgres físicamente.
Concretamente, querría profundizar mejor en el
conocimiento de la estructura página. Ahora bien,
cuando accedo en

/usr/local/pgsql/data/base/17149 (donde 17149 es el
oid en cuestión de la bbdd que estoy estudiando),

cuando accedo al archivo de la tabla en cuestión, el
contenido es ininteligible, para mi.

Por ello, he comenzado a buscar alguna herramienta que
me permitiese visualizar los archivos en otro formato,
y parece ser que existe una herramienta,

http://archives.postgresql.org/pgsql-patches/2002-02/msg00003.php

que me he descargado de
http://sources.redhat.com/rhdb/utilities.html

Ahora bien, cuando la desempaqueto en
/usr/local/src/postgresql-7.4.2/contrib
y modifico el Makefile[1], para que la variable pgsql
apunte al directorio que corresponde, obtengo los
siguientes errores [2]:

En primer lugar: ¿Estoy intentando utilizar la
herramienta adecuada, o sería conveniente utilizar
alguna otra?
Si la herramienta es la correcta, ¿Que no debo
desempaquetar la utilidad en el directorio mencionado?
¿O es que tengo algo mal configurado y por eso me da
tantos errores? Todo parece indicar que no encuentra
las rutas que se le indican, ¿no? ¿Qué he de hacer
para solucionarlo?

¿Alguien me puede orientar, por favor?

Gracias de antemano,

Sílvia

PD.: Utilizo postgresql 7.4.2 sobre Suse 9.0

[1]:
# View README.pg_filedump first

CC=gcc
CFLAGS=-g -Wall -Wmissing-prototypes
-Wmissing-declarations

#INCLUDE=/usr/include/pgsql
INCLUDE=/usr/local/pgsql/include

# PGSQL MUST POINT TO pgsql SOURCE DIRECTORY
#PGSQL=../../../../postgres/pgsql
PGSQL=/usr/local/pgsql

CRC_SRC=${PGSQL}/src/backend/utils/hash
CRC_INCLUDE=${PGSQL}/src

all: pg_filedump

pg_filedump: pg_filedump.o pg_crc.o
${CC} ${CFLAGS} -o pg_filedump pg_filedump.o
pg_crc.o

pg_filedump.o: pg_filedump.c
${CC} ${CFLAGS} -I${INCLUDE} pg_filedump.c -c

pg_crc.o: ${CRC_SRC}/pg_crc.c
${CC} ${CFLAGS} -I${CRC_INCLUDE} -I${INCLUDE}
${CRC_SRC}/pg_crc.c -c

clean:
rm -rf *.o pg_filedump

[2]:
postgres(at)a5s111pc35:/usr/local/src/postgresql-7.4.2/contrib/pg_filedump-3.0>
make
gcc -g -Wall -Wmissing-prototypes
-Wmissing-declarations -I/usr/local/pgsql/include
pg_filedump.c -c
En el fichero incluído de pg_filedump.c:28:
pg_filedump.h:31:22: postgres.h: No existe el fichero
o el directorio
pg_filedump.h:32:29: storage/bufpage.h: No existe el
fichero o el directorio
pg_filedump.h:33:25: access/hash.h: No existe el
fichero o el directorio
pg_filedump.h:34:25: access/gist.h: No existe el
fichero o el directorio
pg_filedump.h:35:27: access/nbtree.h: No existe el
fichero o el directorio
pg_filedump.h:36:26: access/rtree.h: No existe el
fichero o el directorio
pg_filedump.h:37:25: access/itup.h: No existe el
fichero o el directorio
pg_filedump.h:38:25: access/htup.h: No existe el
fichero o el directorio
pg_filedump.h:39:32: catalog/pg_control.h: No existe
el fichero o el directorio
pg_filedump.c:46: error: error de decodificación
before "page"
pg_filedump.c:48: error: error de decodificación
before "page"
pg_filedump.c:49: error: error de decodificación
before "page"
pg_filedump.c: En la función `ConsumeOptions':
pg_filedump.c:112: aviso: implicit declaration of
function `strlen'
pg_filedump.c:116: aviso: implicit declaration of
function `strcmp'
pg_filedump.c: En la función `GetOptionValue':
pg_filedump.c:384: aviso: implicit declaration of
function `atoi'
pg_filedump.c: En la función `GetBlockSize':
pg_filedump.c:395: error: `PageHeaderData' undeclared
(first use in this function)
pg_filedump.c:395: error: (Each undeclared identifier
is reported only once
pg_filedump.c:395: error: for each function it appears
in.)
pg_filedump.c:405: aviso: implicit declaration of
function `PageGetPageSize'
pg_filedump.c: En el nivel principal:
pg_filedump.c:415: error: error de decodificación
before "page"
pg_filedump.c: En la función `GetSpecialSectionType':
pg_filedump.c:421: error: `PageHeader' undeclared
(first use in this function)
pg_filedump.c:421: error: error de decodificación
before "pageHeader"
pg_filedump.c:425: error: `PageHeaderData' undeclared
(first use in this function)
pg_filedump.c:427: error: `pageHeader' undeclared
(first use in this function)
pg_filedump.c:442: aviso: implicit declaration of
function `MAXALIGN'
pg_filedump.c:442: error: `uint32' undeclared (first
use in this function)
pg_filedump.c:455: error: `HashPageOpaqueData'
undeclared (first use in this function)
pg_filedump.c:457: error: `HashPageOpaque' undeclared
(first use in this function)
pg_filedump.c:457: error: error de decodificación
before "hpo"
pg_filedump.c:458: error: `hpo' undeclared (first use
in this function)
pg_filedump.c:458: error: `HASHO_FILL' undeclared
(first use in this function)
pg_filedump.c: En la función `CreateDumpFileHeader':
pg_filedump.c:488: aviso: implicit declaration of
function `strcat'
pg_filedump.c: En el nivel principal:
pg_filedump.c:505: error: error de decodificación
before "page"
pg_filedump.c: En la función `FormatHeader':
pg_filedump.c:509: error: `PageHeader' undeclared
(first use in this function)
pg_filedump.c:509: error: error de decodificación
before "pageHeader"
pg_filedump.c:515: error: `PageHeaderData' undeclared
(first use in this function)
pg_filedump.c:522: error: `XLogRecPtr' undeclared
(first use in this function)
pg_filedump.c:522: error: error de decodificación
before "pageLSN"
pg_filedump.c:523: aviso: implicit declaration of
function `PageGetMaxOffsetNumber'
pg_filedump.c:523: error: `page' undeclared (first use
in this function)
pg_filedump.c:525: aviso: implicit declaration of
function `PageGetPageLayoutVersion'
pg_filedump.c:531: error: `ItemIdData' undeclared
(first use in this function)
pg_filedump.c:548: error: `pageHeader' undeclared
(first use in this function)
pg_filedump.c:551: error: `pageLSN' undeclared (first
use in this function)
pg_filedump.c:557: aviso: implicit declaration of
function `PageGetSpecialSize'
pg_filedump.c:558: error: `BTPageOpaqueData'
undeclared (first use in this function)
pg_filedump.c:563: error: `BTPageOpaque' undeclared
(first use in this function)
pg_filedump.c:563: error: error de decodificación
before "btpo"
pg_filedump.c:566: error: `HashPageOpaque' undeclared
(first use in this function)
pg_filedump.c:566: error: `btpo' undeclared (first use
in this function)
pg_filedump.c:566: error: `HASHO_FILL' undeclared
(first use in this function)
pg_filedump.c:567: error: `BTP_META' undeclared (first
use in this function)
pg_filedump.c:569: error: `BTMetaPageData' undeclared
(first use in this function)
pg_filedump.c:569: error: `btpMeta' undeclared (first
use in this function)
pg_filedump.c:569: aviso: implicit declaration of
function `BTPageGetMeta'
pg_filedump.c: En el nivel principal:
pg_filedump.c:613: error: error de decodificación
before "page"
pg_filedump.c: En la función `FormatItemBlock':
pg_filedump.c:619: error: `ItemId' undeclared (first
use in this function)
pg_filedump.c:619: error: error de decodificación
before "itemId"
pg_filedump.c:620: error: `page' undeclared (first use
in this function)
pg_filedump.c:650: error: `itemId' undeclared (first
use in this function)
pg_filedump.c:650: aviso: implicit declaration of
function `PageGetItemId'
pg_filedump.c:651: aviso: implicit declaration of
function `ItemIdGetFlags'
pg_filedump.c:652: aviso: implicit declaration of
function `ItemIdGetLength'
pg_filedump.c:653: aviso: implicit declaration of
function `ItemIdGetOffset'
pg_filedump.c:656: aviso: implicit declaration of
function `strcpy'
pg_filedump.c:656: error: `LP_USED' undeclared (first
use in this function)
pg_filedump.c: En la función `FormatItem':
pg_filedump.c:698: error: `SizeOfIptrData' undeclared
(first use in this function)
pg_filedump.c:705: error: `IndexTuple' undeclared
(first use in this function)
pg_filedump.c:705: error: error de decodificación
before "itup"
pg_filedump.c:708: error: `uint32' undeclared (first
use in this function)
pg_filedump.c:708: error: `itup' undeclared (first use
in this function)
pg_filedump.c:709: error: `uint16' undeclared (first
use in this function)
pg_filedump.c:709: error: error de decodificación
before "itup"
pg_filedump.c:709: aviso: muy pocos argumentos para el
formato
pg_filedump.c:710: aviso: implicit declaration of
function `IndexTupleSize'
pg_filedump.c:711: aviso: implicit declaration of
function `IndexTupleHasNulls'
pg_filedump.c:711: aviso: implicit declaration of
function `IndexTupleHasVarwidths'
pg_filedump.c:711: aviso: left-hand operand of comma
expression has no effect
pg_filedump.c:711: error: error de decodificación
before ')' token
pg_filedump.c:721: error: `HeapTupleHeaderData'
undeclared (first use in this function)
pg_filedump.c:738: error: `bits8' undeclared (first
use in this function)
pg_filedump.c:738: error: `localBits' undeclared
(first use in this function)
pg_filedump.c:741: error: `HeapTupleHeader' undeclared
(first use in this function)
pg_filedump.c:741: error: error de decodificación
before "htup"
pg_filedump.c:745: error: `htup' undeclared (first use
in this function)
pg_filedump.c:748: error: error de decodificación
before "htup"
pg_filedump.c:749: aviso: muy pocos argumentos para el
formato
pg_filedump.c:750: aviso: left-hand operand of comma
expression has no effect
pg_filedump.c:750: aviso: left-hand operand of comma
expression has no effect
pg_filedump.c:750: error: error de decodificación
before ')' token
pg_filedump.c:756: aviso: implicit declaration of
function `offsetof'
pg_filedump.c:756: error: `t_bits' undeclared (first
use in this function)
pg_filedump.c:761: error: `HEAP_HASNULL' undeclared
(first use in this function)
pg_filedump.c:763: error: `HEAP_HASVARWIDTH'
undeclared (first use in this function)
pg_filedump.c:765: error: `HEAP_HASEXTERNAL'
undeclared (first use in this function)
pg_filedump.c:767: error: `HEAP_HASCOMPRESSED'
undeclared (first use in this function)
pg_filedump.c:769: error: `HEAP_HASOID' undeclared
(first use in this function)
pg_filedump.c:771: error: `HEAP_XMAX_IS_XMIN'
undeclared (first use in this function)
pg_filedump.c:773: error: `HEAP_XMAX_UNLOGGED'
undeclared (first use in this function)
pg_filedump.c:775: error: `HEAP_XMIN_COMMITTED'
undeclared (first use in this function)
pg_filedump.c:777: error: `HEAP_XMIN_INVALID'
undeclared (first use in this function)
pg_filedump.c:779: error: `HEAP_XMAX_COMMITTED'
undeclared (first use in this function)
pg_filedump.c:781: error: `HEAP_XMAX_INVALID'
undeclared (first use in this function)
pg_filedump.c:783: error: `HEAP_MARKED_FOR_UPDATE'
undeclared (first use in this function)
pg_filedump.c:785: error: `HEAP_UPDATED' undeclared
(first use in this function)
pg_filedump.c:787: error: `HEAP_MOVED_OFF' undeclared
(first use in this function)
pg_filedump.c:789: error: `HEAP_MOVED_IN' undeclared
(first use in this function)
pg_filedump.c:799: aviso: implicit declaration of
function `BITMAPLEN'
pg_filedump.c:804: error: `Oid' undeclared (first use
in this function)
pg_filedump.c: En la función `FormatSpecial':
pg_filedump.c:838: error: `PageHeader' undeclared
(first use in this function)
pg_filedump.c:838: error: error de decodificación
before "pageHeader"
pg_filedump.c:840: error: `pageHeader' undeclared
(first use in this function)
pg_filedump.c:864: error: `F_LEAF' undeclared (first
use in this function)
pg_filedump.c:871: error: `BTPageOpaque' undeclared
(first use in this function)
pg_filedump.c:871: error: error de decodificación
before "btreeSection"
pg_filedump.c:872: error: `btreeSection' undeclared
(first use in this function)
pg_filedump.c:872: error: `BTP_LEAF' undeclared (first
use in this function)
pg_filedump.c:874: error: `BTP_ROOT' undeclared (first
use in this function)
pg_filedump.c:876: error: `BTP_DELETED' undeclared
(first use in this function)
pg_filedump.c:878: error: `BTP_META' undeclared (first
use in this function)
pg_filedump.c:880: error: `BTP_HALF_DEAD' undeclared
(first use in this function)
pg_filedump.c:899: error: `HashPageOpaque' undeclared
(first use in this function)
pg_filedump.c:899: error: error de decodificación
before "hashSection"
pg_filedump.c:901: error: `hashSection' undeclared
(first use in this function)
pg_filedump.c:901: error: `LH_UNUSED_PAGE' undeclared
(first use in this function)
pg_filedump.c:903: error: `LH_OVERFLOW_PAGE'
undeclared (first use in this function)
pg_filedump.c:905: error: `LH_BUCKET_PAGE' undeclared
(first use in this function)
pg_filedump.c:907: error: `LH_BITMAP_PAGE' undeclared
(first use in this function)
pg_filedump.c:909: error: `LH_META_PAGE' undeclared
(first use in this function)
pg_filedump.c: En la función `FormatBlock':
pg_filedump.c:944: error: `Page' undeclared (first use
in this function)
pg_filedump.c:944: error: error de decodificación
before "page"
pg_filedump.c:946: error: `page' undeclared (first use
in this function)
pg_filedump.c: En la función `FormatControl':
pg_filedump.c:986: error: `ControlFileData' undeclared
(first use in this function)
pg_filedump.c:986: error: `catalog_version_no'
undeclared (first use in this function)
pg_filedump.c:987: error: error de decodificación
before ')' token
pg_filedump.c:1000: error: `controlData' undeclared
(first use in this function)
pg_filedump.c:1000: error: error de decodificación
before ')' token
pg_filedump.c:1001: error: `crc64' undeclared (first
use in this function)
pg_filedump.c:1002: error: `CheckPoint' undeclared
(first use in this function)
pg_filedump.c:1002: error: `checkPoint' undeclared
(first use in this function)
pg_filedump.c:1006: aviso: implicit declaration of
function `INIT_CRC64'
pg_filedump.c:1006: error: `crcLocal' undeclared
(first use in this function)
pg_filedump.c:1007: aviso: implicit declaration of
function `COMP_CRC64'
pg_filedump.c:1009: aviso: implicit declaration of
function `FIN_CRC64'
pg_filedump.c:1014: error: `DB_STARTUP' undeclared
(first use in this function)
pg_filedump.c:1017: error: `DB_SHUTDOWNED' undeclared
(first use in this function)
pg_filedump.c:1020: error: `DB_SHUTDOWNING' undeclared
(first use in this function)
pg_filedump.c:1023: error: `DB_IN_RECOVERY' undeclared
(first use in this function)
pg_filedump.c:1026: error: `DB_IN_PRODUCTION'
undeclared (first use in this function)
pg_filedump.c:1057: aviso: implicit declaration of
function `EQ_CRC64'
pg_filedump.c: En la función `DumpFileContents':
pg_filedump.c:1205: error: `false' undeclared (first
use in this function)
pg_filedump.c: En la función `main':
pg_filedump.c:1253: error: `ControlFileData'
undeclared (first use in this function)
pg_filedump.c:1262: aviso: implicit declaration of
function `malloc'
pg_filedump.c:1276: aviso: implicit declaration of
function `free'
pg_filedump.c:1278: aviso: implicit declaration of
function `exit'
make: *** [pg_filedump.o] Error 1


______________________________________________
Renovamos el Correo Yahoo!: ¡100 MB GRATIS!
Nuevos servicios, más seguridad
http://correo.yahoo.es

Responses

Browse pgsql-es-ayuda by date

  From Date Subject
Next Message Fernando Romo 2004-10-07 15:58:23 problema con un Vacuumdb
Previous Message Diego Enrique Rodriguez 2004-10-07 02:31:08 Re: Desincronizacion de la hora