Re: BUG #6201: Windows User Log Off Causes Backend Exception 0xC0000142 - Mailing list pgsql-bugs

From Craig Ringer
Subject Re: BUG #6201: Windows User Log Off Causes Backend Exception 0xC0000142
Date
Msg-id 4E6AB4F9.4090709@ringerc.id.au
Whole thread Raw
In response to BUG #6201: Windows User Log Off Causes Backend Exception 0xC0000142  ("Jerome Schulteis" <jerome.schulteis@edstrom.com>)
Responses Re: BUG #6201: Windows User Log Off Causes Backend Exception 0xC0000142  (Jerome Schulteis <Jerome.Schulteis@edstrom.com>)
List pgsql-bugs
On 10/09/2011 4:59 AM, Jerome Schulteis wrote:
> The following bug has been logged online:
>
> Bug reference:      6201
> Logged by:          Jerome Schulteis
> Email address:      jerome.schulteis@edstrom.com
> PostgreSQL version: 9.0.4
> Operating system:   Windows XP Pro SP3
> Description:        Windows User Log Off Causes Backend Exception 0xC0000142
> Details:
>
> It does not happen on every log off, but if the Windows console user logs
> off
> of the server at just the wrong time while a backend is starting up, the
> backend terminates with exception 0xC0000142 (STATUS_DLL_INIT_FAILED), and
> the
> PostgreSQL Windows service stops (shared memory block is still in use):
I wonder which DLL failed? It seems that PostgreSQL doesn't print the
message the operating system generates for these errors. For example, it
should be printing:

"{DLL Initialization Failed} Initialization of the dynamic link library
%hs failed. The process is terminating abnormally."

... where %hs is the DLL name or path. I should have a play with that
once I finish moving house...



Do you have any antivirus or antimalware products on the system?

Do you have a Logitech webcam? Their webcam effects app adds a hook DLL
to every process on the system, and I've seen it cause issues with MinGW
among other things before.

If you launch a trivial process like "notepad.exe" then launch Process
Explorer from SysInternals, select notepad.exe and press control-D to
show the DLL list, what non-Microsoft DLLs are shown? You can copy and
paste the list.

If you examine a running postgres.exe backend (one of the processess
listed UNDER the main "postgres.exe" which is the postmaster) the same
way, what non-Microsoft DLLs are shown there? Note that you may have to
run Process Explorer as administrator to view the DLL list for
postgres.exe. Ignore any DLLs ending in ".NLS" .

For bonus points, verify each Microsoft DLL as having a valid signature
by double-clicking on it in the list, and report any DLLs that fail
verification.



--
Craig Ringer

pgsql-bugs by date:

Previous
From: "Jerome Schulteis"
Date:
Subject: BUG #6201: Windows User Log Off Causes Backend Exception 0xC0000142
Next
From: Thom Brown
Date:
Subject: Dropped index on table preventing rule creation