Re: 8.2.3: Server crashes on Windows using Eclipse/Junit

From: Dave Page <dpage(at)postgresql(dot)org>
To: Harald Armin Massa <haraldarminmassa(at)gmail(dot)com>
Cc: pgsql-general(at)postgresql(dot)org
Subject: Re: 8.2.3: Server crashes on Windows using Eclipse/Junit
Date: 2007-10-23 15:57:45
Message-ID: 471E19F9.3070709@postgresql.org
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-general pgsql-hackers

Harald Armin Massa wrote:
> Dave,
>
>> It's coming from direct dependencies on user32.dll (from which we use
>> wsprintf()) and shell32.dll (from which we use SHGetSpecialFolderPath())
>> and is allocated when ResumeThread() is called to kickstart the new
>> backend,
>
> why does every backend need its own heap for user32.dll or
> shell32.dll? Wasn't the point of shared dlls to be shared?

No idea, and I thought so.

It's quite easy to prove using the test program attached. Just monitor
the desktop heap with dheapmon (from Microsoft's website), and run the
program with a single command line argument to get it to spawn a 100
child processes. You can stop it loading various DLLs by commenting out
the dummy calls to functions in them and rebuilding.

Of course, none of this would be an issue if we made the backend
multithreaded. :-)

I'll get my coat...

/D

Attachment Content-Type Size
foo.cpp text/plain 2.0 KB

In response to

Browse pgsql-general by date

  From Date Subject
Next Message Harald Armin Massa 2007-10-23 16:11:12 Re: 8.2.3: Server crashes on Windows using Eclipse/Junit
Previous Message Gregory Stark 2007-10-23 15:49:35 Re: 8.2.3: Server crashes on Windows using Eclipse/Junit

Browse pgsql-hackers by date

  From Date Subject
Next Message Alvaro Herrera 2007-10-23 16:09:10 Re: Latin vs non-Latin words in text search parsing
Previous Message Gregory Stark 2007-10-23 15:49:35 Re: 8.2.3: Server crashes on Windows using Eclipse/Junit