Flashnux

GNU/Linux man pages

Livre :
Expressions régulières,
Syntaxe et mise en oeuvre :

ISBN : 978-2-7460-9712-4
EAN : 9782746097124
(Editions ENI)

GNU/Linux

RedHat 6.2

(Zoot)

catalogs(3)


SYSTEM CATALOGS

SYSTEM CATALOGS

Section 7 - System Catalogs
DESCRIPTION
CLASS/TYPE SYSTEM CATALOGS
ENTITIES
RULE SYSTEM CATALOGS
LARGE OBJECT CATALOGS
INTERNAL CATALOGS
CLASS/TYPE SYSTEM CATALOGS
ENTITIES
RULE SYSTEM CATALOGS
LARGE OBJECT CATALOGS

Section 7 - System Catalogs

DESCRIPTION

In this section we list each of the attributes of the system catalogs and define their meanings.

CLASS/TYPE SYSTEM CATALOGS

These catalogs form the core of the extensibility system:

name

shared/local

description

pg_aggregate

local

aggregate functions

pg_am

local

access methods

pg_amop

local

operators usable with specific access methods

pg_amproc

local

procedures used with specific access methods

pg_attribute

local

class attributes

pg_class

local

classes

pg_index

local

secondary indices

pg_inherits

local

class inheritance hierarchy

pg_language

local

procedure implementation languages

pg_opclass

local

operator classes

pg_operator

local

query language operators

pg_proc

local

procedures (functions)

pg_type

local

data types

ENTITIES

These catalogs deal with identification of entities known throughout the site:

name

shared/local

description

pg_database

shared

current databases

pg_group

shared

user groups

pg_shadow

shared

valid users

RULE SYSTEM CATALOGS

name

shared/local

description

pg_listener

local

processes waiting on alerters

pg_prs2plans

local

instance system procedures

pg_prs2rule

local

instance system rules

pg_prs2stub

local

instance system ’’stubs’’

pg_rewrite

local

rewrite system information

LARGE OBJECT CATALOGS

These catalogs are specific to the Inversion file system and large objects in general:

name

shared/local

description

pg_lobj

local

description of a large object

pg_naming

local

Inversion name space mapping

pg_platter

local

jukebox platter inventory

pg_plmap

local

jukebox platter extent map

INTERNAL CATALOGS

These catalogs are internal classes that are not stored as normal heaps and cannot be accessed through normal means (attempting to do so causes an error).

name

shared/local

description

pg_log

shared

transaction commit/rollback log

pg_magic

shared

magic constant

pg_time

shared

commit/rollback times

pg_variable

shared

special variable values

There are several other classes defined with “pg_” names. Aside from those that end in “ind” (secondary indices), these are all obsolete or otherwise deprecated.

CLASS/TYPE SYSTEM CATALOGS

The following catalogs relate to the class/type system.
/*
* aggregates
*
* see DEFINE AGGREGATE for an explanation of transition functions
*/
pg_aggregate

NameData aggname

/* aggregate name (e.g., "count") */
oid aggowner

/* usesysid of creator */
regproc aggtransfn1

/* first transition function */
regproc aggtransfn2

/* second transition function */
regproc aggfinalfn

/* final function */
oid aggbasetype

/* type of data on which aggregate

operates */
oid aggtranstype1

/* type returned by aggtransfn1 */
oid aggtranstype2

/* type returned by aggtransfn2 */
oid aggfinaltype

/* type returned by aggfinalfn */
text agginitval1

/* external format of initial

(starting) value of aggtransfn1 */
text agginitval2

/* external format of initial

(starting) value of aggtransfn2 */

pg_am

NameData amname

/* access method name */
oid amowner

/* usesysid of creator */
char amkind

/* - deprecated */

/* originally:

h=hashed

o=ordered

s=special */
int2 amstrategies

/* total NUMBER of strategies by which

we can traverse/search this AM */
int2 amsupport

/* total NUMBER of support functions

that this AM uses */
regproc amgettuple

/* "next valid tuple" function */
regproc aminsert

/* "insert this tuple" function */
regproc amdelete

/* "delete this tuple" function */
regproc amgetattr

/* - deprecated */
regproc amsetlock

/* - deprecated */
regproc amsettid

/* - deprecated */
regproc amfreetuple

/* - deprecated */
regproc ambeginscan

/* "start new scan" function */
regproc amrescan

/* "restart this scan" function */
regproc amendscan

/* "end this scan" function */
regproc ammarkpos

/* "mark current scan position"

function */
regproc amrestrpos

/* "restore marked scan position"

function */
regproc amopen

/* - deprecated */
regproc amclose

/* - deprecated */
regproc ambuild

/* "build new index" function */
regproc amcreate

/* - deprecated */
regproc amdestroy

/* - deprecated */

pg_amop

oid amopid

/* access method with which this

operator be used */
oid amopclaid

/* operator class with which this

operator can be used */
oid amopopr

/* the operator */
int2 amopstrategy

/* traversal/search strategy number

to which this operator applies */
regproc amopselect

/* function to calculate the operator

selectivity */
regproc amopnpages

/* function to calculate the number of

pages that will be examined */

pg_amproc

oid amid

/* access method with which this

procedure is associated */
oid amopclaid

/* operator class with which this

operator can be used */
oid amproc

/* the procedure */
int2 amprocnum

/* support function number to which

this operator applies */

pg_class

NameData relname

/* class name */
oid relowner

/* usesysid of owner */
oid relam

/* access method */
int4 relpages

/* # of 8KB pages */
int4 reltuples

/* # of instances */
abstime relexpires

/* time after which instances are

deleted from non-archival storage */
reltime relpreserved

/* timespan after which instances are

deleted from non-archival storage */
bool relhasindex

/* does the class have a secondary

index? */
bool relisshared

/* is the class shared or local? */
char relkind

/* type of relation:

i=index

r=relation (heap)

s=special

u=uncatalogued (temporary) */
char relarch

/* archive mode:

h=heavy

l=light

n=none */
int2 relnatts

/* current # of non-system

attributes */
int2 relsmgr

/* storage manager:

0=magnetic disk

1=sony WORM jukebox

2=main memory */
int28 relkey

/* - unused */
oid8 relkeyop

/* - unused */
aclitem relacl[1]

/* access control lists */

pg_attribute

oid attrelid

/* class containing this attribute */
NameData attname

/* attribute name */
oid atttypid

/* attribute type */
oid attdefrel

/* - deprecated */
int4 attnvals

/* - deprecated */
oid atttyparg

/* - deprecated */
int2 attlen

/* attribute length, in bytes

-1=variable */
int2 attnum

/* attribute number

>0=user attribute

<0=system attribute */
int2 attbound

/* - deprecated */
bool attbyval

/* type passed by value? */
bool attcanindex

/* - deprecated */
oid attproc

/* - deprecated */
int4 attnelems

/* # of array dimensions */
int4 attcacheoff

/* cached offset into tuple */
bool attisset

/* is attribute set-valued? */

pg_inherits

oid inhrel

/* child class */
oid inhparent

/* parent class */
int4 inhseqno

/* - deprecated */
oid indexrelid

/* oid of secondary index class */
oid indrelid

/* oid of indexed heap class */
oid indproc

/* function to compute index key from

attribute(s) in heap

0=not a functional index */
int28 indkey

/* attribute numbers of key

attribute(s) */
oid8 indclass

/* opclass of each key */
bool indisclustered

/* is the index clustered?

- unused */
bool indisarchived

/* is the index archival?

- unused */
text indpred

/* query plan for partial index

predicate */

pg_type

NameData typname

/* type name */
oid typowner

/* usesysid of owner */
int2 typlen

/* length in internal form

-1=variable-length */
int2 typprtlen

/* length in external form */
bool typbyval

/* type passed by value? */
char typtype

/* kind of type:

c=catalog (composite)

b=base */
bool typisdefined

/* defined or still a shell? */
char typdelim

/* delimiter for array external form */
oid typrelid

/* class (if composite) */
oid typelem

/* type of each array element */
regproc typinput

/* external-internal conversion

function */
regproc typoutput

/* internal-external conversion

function */
regproc typreceive

/* client-server conversion function */
regproc typsend

/* server-client conversion function */
text typdefault

/* default value */

pg_operator

NameData oprname

/* operator name */
oid oprowner

/* usesysid of owner */
int2 oprprec

/* - deprecated */
char oprkind

/* kind of operator:

b=binary

l=left unary

r=right unary */
bool oprisleft

/* is operator left/right associative? */
bool oprcanhash

/* is operator usable for hashjoin? */
oid oprleft

/* left operand type */
oid oprright

/* right operand type */
oid oprresult

/* result type */
oid oprcom

/* commutator operator */
oid oprnegate

/* negator operator */
oid oprlsortop

/* sort operator for left operand */
oid oprrsortop

/* sort operator for right operand */
regproc oprcode

/* function implementing this operator */
regproc oprrest

/* function to calculate operator

restriction selectivity */
regproc oprjoin

/* function to calculate operator

join selectivity */

pg_opclass

NameData opcname

/* operator class name */

pg_proc

NameData proname

/* function name */
oid proowner

/* usesysid of owner */
oid prolang

/* function implementation language */
bool proisinh

/* - deprecated */
bool proistrusted

/* run in server or untrusted function

process? */
bool proiscachable

/* can the function return values be

cached? */
int2 pronargs

/* # of arguments */
bool proretset

/* does the function return a set?

- unused */
oid prorettype

/* return type */
oid8 proargtypes

/* argument types */
int4 probyte_pct

/* % of argument size (in bytes) that

needs to be examined in order to

compute the function */
int4 properbyte_cpu

/* sensitivity of the function’s

running time to the size of its

inputs */
int4 propercall_cpu

/* overhead of the function’s

invocation (regardless of input

size) */
int4 prooutin_ratio

/* size of the function’s output as a

percentage of the size of the input */
text prosrc

/* function definition:

INTERNAL function: actual C name of function

C function: currently, this field is unused

SQL function: text of query(s)

PL function: text in procedural language */
bytea probin

/* path to object file (C functions only) */

pg_language

NameData lanname

/* language name */
text lancompiler

/* - deprecated */

ENTITIES

pg_database

NameData datname

/* database name */
oid datdba

/* usesysid of database administrator */
text datpath

/* directory of database under

$PGDATA */

pg_group

NameData groname

/* group name */
int2 grosysid

/* group’s UNIX group id */
int2 grolist[1]

/* list of usesysids of group members */

pg_shadow

NameData usename

/* user’s name */
int2 usesysid

/* user’s UNIX user id */
bool usecreatedb

/* can user create databases? */
bool usetrace

/* can user set trace flags? */
bool usesuper

/* can user be POSTGRES superuser? */
bool usecatupd

/* can user update catalogs? */

RULE SYSTEM CATALOGS

pg_listener

NameData relname

/* class for which asynchronous

notification is desired */
int4 listenerpid

/* process id of server corresponding

to a frontend program waiting for

asynchronous notification */
int4 notification

/* whether an event notification for

this process id still pending */

pg_prs2rule

NameData prs2name

/* rule name */
char prs2eventtype

/* rule event type:

R=retrieve

U=update (replace)

A=append

D=delete */
oid prs2eventrel

/* class to which event applies */
int2 prs2eventattr

/* attribute to which event applies */
float8 necessary

/* - deprecated */
float8 sufficient

/* - deprecated */
text prs2text

/* text of original rule definition */

pg_prs2plans

oid prs2ruleid

/* prs2rule instance for which this

plan is used */
int2 prs2planno

/* plan number (one rule may invoke

multiple plans) */
text prs2code

/* external representation of the plan */

pg_prs2stub

oid prs2relid

/* class to which this rule applies */
bool prs2islast

/* is this the last stub fragment? */
int4 prs2no

/* stub fragment number */
stub prs2stub

/* stub fragment */

pg_rewrite

NameData rulename

/* rule name */
char ev_type

/* event type:

RETRIEVE, REPLACE, APPEND, DELETE

codes are parser-dependent (!?) */
oid ev_class

/* class to which this rule applies */
int2 ev_attr

/* attribute to which this rule applies */
bool is_instead

/* is this an "instead" rule? */
text ev_qual

/* qualification with which to modify

(rewrite) the plan that triggered this

rule */
text action

/* parse tree of action */

LARGE OBJECT CATALOGS

pg_lobj

oid ourid

/* ’ourid’ from pg_naming that

identifies this object in the

Inversion file system namespace */
int4 objtype

/* storage type code:

0=Inversion

1=Unix

2=External

3=Jaquith */

bytea object_descripto/* opaque object-handle structure */
pg_naming

NameData filename

/* filename component */
oid ourid

/* random oid used to identify this

instance in other instances (can’t

use the actual oid for obscure

reasons */
oid parentid

/* pg_naming instance of parent

Inversion file system directory */

pg_platter

NameData plname

/* platter name */
int4 plstart

/* the highest OCCUPIED extent */

pg_plmap

oid plid

/* platter (in pg_platter) on which

this extent (of blocks) resides */
oid pldbid

/* database of the class to which this

extent (of blocks) belongs */
oid plrelid

/* class to which this extend (of

blocks) belongs */
int4 plblkno

/* starting block number within the

class */
int4 ploffset

/* offset within the platter at which

this extent begins */
int4 plextentsz

/* length of this extent */



catalogs(3)