Re: [SQL] Questions about vacuum analyze

From: Tom Lane <tgl(at)sss(dot)pgh(dot)pa(dot)us>
To: "Steven M(dot) Wheeler" <swheeler(at)sabre(dot)com>
Cc: pgsql-sql(at)hub(dot)org
Subject: Re: [SQL] Questions about vacuum analyze
Date: 1999-10-08 14:43:01
Message-ID: 3104.939393781@sss.pgh.pa.us
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-sql

"Steven M. Wheeler" <swheeler(at)sabre(dot)com> writes:
> I am now running into another problem. I need to do select distinct from the
> currnt to get dates for maintenance activity (rows to summarize and move to
> history). When ever I do I get this message in my server.log file:

> NOTICE: BufFileRead: should have flushed after writing

> And I get 0 records selected.

After some code browsing I have come up with a theory: is it possible
that you are running out of disk space during the sort? I see psort.c
neglects to check for write failure :-(, although I am not entirely
clear on why that particular message and nothing else would come out
after it bulled ahead with an incomplete temporary file.

Sorting a large table seems to require temp disk space equal to several
times the size of the table. Since you said your table is 40M rows,
I can easily believe you don't have that much free space...

I don't believe anyone has taken a hard look at psort.c in a long time.
I will try to dive into it and see if its resource consumption can't
be reduced. Mergesort inherently requires 2X the original data space,
but it seems that psort is using even more than that, and perhaps this
can be improved.

regards, tom lane

Responses

Browse pgsql-sql by date

  From Date Subject
Next Message Alexander F Hartner 1999-10-09 10:15:46 Insert / Update Statement
Previous Message Claudio Tassi 1999-10-08 07:28:51 Re: Constraint Problem