Thread: vacuum process stuck

vacuum process stuck

From
Doug Silver
Date:
I was attempting to clean up one of my databases and so I ran 'vacuum full' on
the database.  However, after at least an hour, it seemed stuck, so in the
terminal window I hit CTR-C to cancel out of it, but it still hasn't quit (it
said the following:

# vacuum full;
^CCancel request sent
^CCancel request sent
^CCancel request sent

When I run top, it says this process status is in 'biord', which according to
the FreeBSD lists corresponds to buffers being read or written.  So, how long
should I wait for this process to finish?  I know one of the tables in the db
probably has ~20-30 million entries in it.

Any suggestions?  I assume I absolutely should not kill the postgresql process
that is running the request, so what are some other options?

TIA.

-doug

details - FBSD 4.8, postgres 7.3.2_1

Re: vacuum process stuck

From
Doug Silver
Date:
On Tuesday 27 May 2003 02:55 pm, you wrote:
> I was attempting to clean up one of my databases and so I ran 'vacuum full'
> on the database.  However, after at least an hour, it seemed stuck, so in
> the terminal window I hit CTR-C to cancel out of it, but it still hasn't
> quit (it said the following:
>
> # vacuum full;
> ^CCancel request sent
> ^CCancel request sent
> ^CCancel request sent
>
> When I run top, it says this process status is in 'biord', which according
> to the FreeBSD lists corresponds to buffers being read or written.  So, how
> long should I wait for this process to finish?  I know one of the tables in
> the db probably has ~20-30 million entries in it.
>
> Any suggestions?  I assume I absolutely should not kill the postgresql
> process that is running the request, so what are some other options?
>
> TIA.
>
> -doug
>
> details - FBSD 4.8, postgres 7.3.2_1

FYI -

After another 45 minutes or so, it finally quit and I was able to restart
postgresql and run vacuum db.  A little patience was the best thing in this
case!

-doug



Re: vacuum process stuck

From
Tom Lane
Date:
Doug Silver <dsilver@urchin.com> writes:
>> Any suggestions?  I assume I absolutely should not kill the postgresql
>> process that is running the request, so what are some other options?

> After another 45 minutes or so, it finally quit and I was able to restart
> postgresql and run vacuum db.  A little patience was the best thing in this
> case!

FWIW, killing a vacuum isn't any more dangerous than killing anything
else.  It should just work...

            regards, tom lane