Re: pg_dump on older version of postgres eating huge

From: Steve Krall <swalker(at)iglou(dot)com>
To: Tom Lane <tgl(at)sss(dot)pgh(dot)pa(dot)us>
Cc: pgsql-general(at)postgresql(dot)org
Subject: Re: pg_dump on older version of postgres eating huge
Date: 2004-03-20 06:13:55
Message-ID: Pine.LNX.4.58.0403200000240.30208@localhost.localdomain
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-general


I added the line, at the place you suggested. pg_dump now works as
expected.

Thank you for taking the time to debug this!

Steve

On Fri, 19 Mar 2004, Tom Lane wrote:

> Steve Krall <swalker(at)iglou(dot)com> writes:
> > [root(at)r-and-d /tmp]# strings core | grep "DROP TRIGGER" | wc -l
> > 5450219
>
> > We have alot of triggers, but not 5.5 million :)
>
> Looks like a smoking gun to me ...
>
> Armed with that, I went back to the 7.1 source code, and what I see is a
> huge (like O(N^2) in the number of triggers) leak in this routine. What
> it needs is a "resetPQExpBuffer(delqry);" call somewhere in the loop
> over triggers. I'd suggest putting it right before the line
>
> appendPQExpBuffer(delqry, "DROP TRIGGER %s ", fmtId(tgname, force_quotes));
>
> I see the same leak in 7.2, btw, but it's gone in 7.3. Didn't look at
> prior releases ...
>
> (It seems the reason no one noticed is that the constructed string isn't
> actually *used* anyplace. Sigh.)
>
> regards, tom lane
>

In response to

Browse pgsql-general by date

  From Date Subject
Next Message Max Ahston 2004-03-20 07:35:54 Re: Q: How do I return differnt rows depending on values
Previous Message Joe Conway 2004-03-20 05:39:54 Re: Index selection (and partial index) for BYTEA field