Return-Path: postarch
Received: by postgres.Berkeley.EDU (5.61/1.29)
	id AA16911; Mon, 18 May 92 12:09:08 -0700
Message-Id: <9205181909.AA16911@postgres.Berkeley.EDU>
From: postarch (Postgres Mailing Archive)
Subject: Re: relation of type "r"
To: postgres@postgres.berkeley.edu
Sender: pg_adm@postgres.berkeley.edu
Reply-To: mer@postgres.berkeley.edu
In-Reply-To: Your message of "Mon, 11 May 92 15:13:09 PDT."
             <9205112053.AA08807@dpi.inpe.br> 
Date: Mon, 18 May 92 12:06:02 PDT

you write:
>When I try to remove indexes from many tables I receive, related to one of them
>the following message:
> 
>Query sent to backend is "remove index GribTimeRange "
>WARN:May 11 18:10:37:relation "GribTimeRange" is of type "r"
> 
>What do it mean?

Every relation in postgres is one either a 'heap' relation, an 'index'
relation, or a 'special relation' (i.e. does not actually contain tuples,
for example pg_variable).  In the meta-data for relations (kept in pg_class)
there is a one character indicator of what type of relation we are dealing
with.  An 'r' indicates a heap relation, 'i' an index, and 's' a special
relation:

	retrieve (pg_class.relname, pg_class.relkind)

When you go to remove an index postgres checks to be sure what you are trying
to remove is actually an index by checking the aforementioned flag.  Are you
sure that GribTimeRange is an index?  If so then we have a bug on our hands
(Some here claim that the flag is not always set correctly).

To remove indices you must do so one by one via:

	remove index <index name>


Jeff Meredith
mer@postgres.berkeley.edu
