Re: Help with count(*)

Will LaShell <will@lashell.net>

From: Will LaShell <will@lashell.net>
To: Hannu Krosing <hannu@tm.ee>
Cc: Christopher Browne <cbbrowne@acm.org>, pgsql-performance@postgresql.org
Date: 2003-11-14T19:40:23Z
Lists: pgsql-hackers, pgsql-performance
Hannu Krosing wrote:

>Christopher Browne kirjutas R, 14.11.2003 kell 16:13:
>  
>
>>Martha Stewart called it a Good Thing when mallah@trade-india.com (Rajesh Kumar Mallah) wrote:
>>    
>>
>>>INFO:  "profiles": found 0 removable, 369195 nonremovable row versions in 43423 pages
>>>DETAIL:  246130 dead row versions cannot be removed yet.
>>>Nonremovable row versions range from 136 to 2036 bytes long.
>>>      
>>>
>>It seems as though you have a transaction open that is holding onto a
>>whole lot of old rows.
>>
>>I have seen this happen somewhat-invisibly when a JDBC connection
>>manager opens transactions for each connection, and then no processing
>>happens to use those connections for a long time.  The open
>>transactions prevent vacuums from doing any good...
>>    
>>
>
>Can't the backend be made to delay the "real" start of transaction until
>the first query gets executed ?
>  
>

That seems counter intuitive doesn't it?  Why write more code in the 
server when the client is the thing that has the problem?

Will