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

Win32: Minimising desktop heap usage

From: Dave Page <dpage(at)postgresql(dot)org>
To: pgsql-patches(at)postgresql(dot)org
Subject: Win32: Minimising desktop heap usage
Date: 2007-10-23 15:08:20
Message-ID: 471E0E64.8050506@postgresql.org (view raw or flat)
Thread:
Lists: pgsql-patches
A discussion on -general has been ongoing in which is was discovered
that 8.3 can exhaust the desktop heap allocated to a service with ~45
connections at which point the server will crash.

Desktop heap is allocated by user32.dll and shell32 on a per-process
basis from a 512KB pool for a non-interactive logon (on XP) and 3072KB
pool for an interactive logon. The attached patch removes our direct
dependencies on these DLLs, reducing the overhead from around 9.7KB per
backend to around 3.5KB. This is back in the range we had with 8.2.

Unfortunately, there are still indirect dependencies on user32.dll which
I don't think we'll be able to do anything about. If desktop heap is
still exhausted with larger installations, the allocated heap size can
be increased in the registry.

See
http://blogs.msdn.com/ntdebugging/archive/2007/01/04/desktop-heap-overview.aspx
for more info.

Regards, Dave

Attachment: desktop_heap.patch
Description: text/x-diff (3.1 KB)

Responses

pgsql-patches by date

Next:From: Tom LaneDate: 2007-10-23 15:30:03
Subject: Re: Win32: Minimising desktop heap usage
Previous:From: Gokulakannan SomasundaramDate: 2007-10-23 13:52:12
Subject: Re: [PATCHES] Including Snapshot Info with Indexes

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