Thread: can't shrink relation

can't shrink relation

From
Gavin Sherry
Date:
I am getting a NOTICE in logs about once a day:

NOTICE:  Rel s: TID 212/16: DeleteTransactionInProgress 0 - can't
shrink relation

This is generated by vacuum. This does not happen after removing the
contents of the relation and re-inserting the data. I noticed this kind of
error in relation to a post on pg-general. Moreover, this error is
occuring in the same database I reported as saying 'Relation pg_shadow
does not exist' the other day.

oup=# select version();                              version
---------------------------------------------------------------------PostgreSQL 7.1.3 on i686-pc-linux-gnu, compiled by
GCCegcs-2.91.66
 
(1 row)

Running on Linux 2.2 series kernel. The system has not crashed recently,
no disk failures, etc. In fact, postgres had been up since a few days
after 7.1.3 was released.

Thanks in advance,

Gavin



Re: can't shrink relation

From
Tom Lane
Date:
Gavin Sherry <swm@linuxworld.com.au> writes:
> I am getting a NOTICE in logs about once a day:
> NOTICE:  Rel s: TID 212/16: DeleteTransactionInProgress 0 - can't
> shrink relation

AFAICT, the only way to get that message is if you have a tuple with
good (committed) t_xmin, but t_xmax is 0, and yet HEAP_XMAX_INVALID
is not set.  Bizarre.  Does the tuple appear valid otherwise?
(Try "select * from s where ctid = '(212,16)'" to view it.)

> Moreover, this error is occuring in the same database I reported as
> saying 'Relation pg_shadow does not exist' the other day.

You've got something mighty weird going on there.  Possibly time for
a dump/initdb/reload.  Possibly time to run some memory & disk
diagnostics.
        regards, tom lane