Skip site navigation (1) Skip section navigation (2)

Re: ODBC driver over network very slow

From: "Kevin Grittner" <Kevin(dot)Grittner(at)wicourts(dot)gov>
To: <merlin(dot)moncure(at)rcsonline(dot)com>, <tgl(at)sss(dot)pgh(dot)pa(dot)us>
Cc: <pgsql-performance(at)postgresql(dot)org>, <milan(at)sde(dot)cz>
Subject: Re: ODBC driver over network very slow
Date: 2005-06-30 14:47:19
Message-ID: (view raw, whole thread or download thread mbox)
Lists: pgsql-performance
I was hesitant to jump in on this because I am new to PostgreSQL and
haven't seen this problem with _it_, but I have seen this with the
Sybase database products.  You can configure Sybase to disable the Nagle
algorithm.  If you don't, any query which returns rows too big to fit in
their network buffer will be painfully slow.  Increasing the buffer size
can help with an individual query, but it just reduces the scope of the
problem.  What you really want to do is make sure that TCP_NODELAY is
set for the connection, to disable the Nagle algorithm; it just doesn't
seem to be appropriate for returning query results.
How this issue comes into play in PostgreSQL is beyond my ken, but
hopefully this observation is helpful to someone.
>>> "Merlin Moncure" <merlin(dot)moncure(at)rcsonline(dot)com> 06/30/05 9:10 AM >>>

> My collegue spent some time to dig the following case and it 
> looks like 
> Nagle algorithm and delayed ACKs related problem.
> In psqlodbc.h
> #define SOCK_BUFFER_SIZE			4096
> I changed that value to 8192 and driver works fine for me.
> I am not sure why this change helps.

Err, no neither am I. Why do you think it's got something to do with
Nagle/delayed ACKs?

pgsql-performance by date

Next:From: Jean-Max ReymondDate: 2005-06-30 15:42:06
Subject: start time very high
Previous:From: Merlin MoncureDate: 2005-06-30 14:10:25
Subject: Re: ODBC driver over network very slow

Privacy Policy | About PostgreSQL
Copyright © 1996-2017 The PostgreSQL Global Development Group