Re: VACUUM hanging on idle system - Mailing list pgsql-general

From Clarence
Subject Re: VACUUM hanging on idle system
Date
Msg-id 1151000628.570040.247650@c74g2000cwc.googlegroups.com
Whole thread Raw
In response to VACUUM hanging on idle system  ("Clarence" <clarence1126@gmail.com>)
Responses Re: VACUUM hanging on idle system
List pgsql-general
Tom Lane wrote:
> "Clarence" <clarence1126@gmail.com> writes:
> > I have a completely idle postgresql system (all backends "idle", none
> > "in transaction"); every time I attempt to vacuum a particular table,
> > it hangs after a while.
> > ...
> > In the system error log there is this line:
> >    could not write block 32756 of relation 1663/134097/385649401:
> >    No space left on device
> > The referenced block is in the table's index file. The disk has plenty
> > of space.
>
> ... but at one time not so much, right?

At the time of the error, there was over 1000 gigabytes free. The least
there has ever been was about 200 gigs free.

>
> > Someone tried to drop the index and got this:
> > ERROR:  FlushRelationBuffers("idx_ld1", 0): block 32756 is referenced
> > (private 0, global 1)
>
> What it looks like to me is that some backend tried to write out a dirty
> page, failed for lack of disk space, and neglected to release the buffer
> pin during error recovery.  The extra pin would block VACUUM but not
> much of anything else.  A postmaster restart should clear the problem.

Yes, vacuuming was the only operation affected, and restarting did fix
the problem.

>
> I seem to recall having fixed a bug like this in the past.  What PG
> version are you running?

We're running 8.0.3


pgsql-general by date:

Previous
From: webb.sprague@gmail.com
Date:
Subject: Re: Form builder?
Next
From: Kostas Maistrelis
Date:
Subject: Re: sql question; checks if data already exists before