Re: pg_dump throws no buffer space available error

Lists: pgsql-general
From: Vishal Dixit <vishal_d(at)ureach(dot)com>
To: pgsql-general(at)postgresql(dot)org
Subject: Re: pg_dump throws no buffer space available error
Date: 2006-01-19 19:39:14
Message-ID: 200601191939.OAA19478@www23.ureach.com
Views: Raw Message | Whole Thread | Download mbox | Resend email
Lists: pgsql-general

I modified pg_dump.c and aded a sleep of 1000 micro sec in the
loop for copying data and it fixed the problem. It looks like
for slower machines when it comes to reading larger tables,
pg_dump finds no data to read in new lines and assumes EOL while
there is still data to be dumped, as a result PQendcopy() throws
error. THROTTLE comments in pg_dump were helpful. Any thoughts.

Thanks.

________________________________________________
Get your own "800" number
Voicemail, fax, email, and a lot more
http://www.ureach.com/reg/tag


From: Bruce Momjian <pgman(at)candle(dot)pha(dot)pa(dot)us>
To: vishal_d(at)ureach(dot)com
Cc: pgsql-general(at)postgresql(dot)org
Subject: Re: pg_dump throws no buffer space available error
Date: 2006-01-19 21:30:11
Message-ID: 200601192130.k0JLUBg23376@candle.pha.pa.us
Views: Raw Message | Whole Thread | Download mbox | Resend email
Lists: pgsql-general

Vishal Dixit wrote:
> I modified pg_dump.c and aded a sleep of 1000 micro sec in the
> loop for copying data and it fixed the problem. It looks like
> for slower machines when it comes to reading larger tables,
> pg_dump finds no data to read in new lines and assumes EOL while
> there is still data to be dumped, as a result PQendcopy() throws
> error. THROTTLE comments in pg_dump were helpful. Any thoughts.

What operating system is this? It sounds broken.

--
Bruce Momjian | http://candle.pha.pa.us
pgman(at)candle(dot)pha(dot)pa(dot)us | (610) 359-1001
+ If your life is a hard drive, | 13 Roberts Road
+ Christ can be your backup. | Newtown Square, Pennsylvania 19073


From: Tom Lane <tgl(at)sss(dot)pgh(dot)pa(dot)us>
To: vishal_d(at)ureach(dot)com
Cc: pgsql-general(at)postgresql(dot)org
Subject: Re: pg_dump throws no buffer space available error
Date: 2006-01-20 00:11:14
Message-ID: 11147.1137715874@sss.pgh.pa.us
Views: Raw Message | Whole Thread | Download mbox | Resend email
Lists: pgsql-general

Vishal Dixit <vishal_d(at)ureach(dot)com> writes:
> I modified pg_dump.c and aded a sleep of 1000 micro sec in the
> loop for copying data and it fixed the problem. It looks like
> for slower machines when it comes to reading larger tables,
> pg_dump finds no data to read in new lines and assumes EOL while
> there is still data to be dumped, as a result PQendcopy() throws
> error. THROTTLE comments in pg_dump were helpful. Any thoughts.

This is hard to believe. If you're running out of network buffers,
slowing down the data-consuming process ought to make things worse not
better. pg_dump doesn't have any direct way of throttling the backend's
output; that happens when the network queue is full and the kernel
starts blocking the backend's send() requests. I would have taken your
problem to suggest that Windows 2003 doesn't cope very well with a full
network queue.

regards, tom lane