From: | Dave Page <dpage(at)pgadmin(dot)org> |
---|---|
To: | Bruce Momjian <bruce(at)momjian(dot)us> |
Cc: | Magnus Hagander <magnus(at)hagander(dot)net>, Robert Haas <robertmhaas(at)gmail(dot)com>, Tom Lane <tgl(at)sss(dot)pgh(dot)pa(dot)us>, Chris Travers <chris(at)metatrontech(dot)com>, Cristian Bittel <cbittel(at)gmail(dot)com>, pgsql-hackers <pgsql-hackers(at)postgresql(dot)org> |
Subject: | Re: [BUGS] BUG #5305: Postgres service stops when closing Windows session |
Date: | 2010-09-15 08:03:22 |
Message-ID: | AANLkTimCTkNKKrHCd3Ot6kAsrSS7SeDpOTcaLsEP7i+M@mail.gmail.com |
Views: | Raw Message | Whole Thread | Download mbox | Resend email |
Thread: | |
Lists: | pgsql-bugs pgsql-hackers |
On Fri, Sep 10, 2010 at 1:45 PM, Bruce Momjian <bruce(at)momjian(dot)us> wrote:
>
> I am not sure how clear it is on Win32 that 128 is a special return
> code.
I asked Microsoft platform support (roughly) that question. Here's the response:
=====
>From NTSTATUS.H
//
// The success status codes 128 - 191 are reserved for wait completion
// status with an abandoned mutant object.
//
#define STATUS_ABANDONED ((NTSTATUS)0x00000080L)
//
// MessageId: STATUS_ABANDONED_WAIT_0
//
// MessageText:
//
// STATUS_ABANDONED_WAIT_0
//
#define STATUS_ABANDONED_WAIT_0 ((NTSTATUS)0x00000080L) // winnt
I believe what you are seeing is an abandoned wait on a mutant which
is the same as a mutex. Therefore this error will be set whenever a
mutex is abandoned.
Per Concurrent Programming on Windows
An abandoned mutex is a mutex kernel object that was not correctly
released before its owning thread terminated. This can happen for any
number of reasons.
He goes on to discuss the case of a thread waiting on a global mutex
that will get this error when it is awakened from a wait and the mutex
had been abandoned by the previous owner. This is a difficult
situation to recover from as you are not sure about the shared state
that was being protected by the mutex. It
Therefore I cannot give you specific areas where this will happen. Of
course when systems are low on resources or they are completely
depleted (100% CPU) things will stop working
=====
--
Dave Page
Blog: http://pgsnake.blogspot.com
Twitter: @pgsnake
EnterpriseDB UK: http://www.enterprisedb.com
The Enterprise Postgres Company
From | Date | Subject | |
---|---|---|---|
Next Message | Tom Lane | 2010-09-15 14:42:17 | Re: BUG #5655: Composite Type Handles Null Incorrectly |
Previous Message | Tom Lane | 2010-09-14 23:34:24 | Re: BUG #5656: parameter 'client_min_messages' accept values not listed in enumvals |
From | Date | Subject | |
---|---|---|---|
Next Message | Heikki Linnakangas | 2010-09-15 08:54:32 | Re: Sync Replication with transaction-controlled durability |
Previous Message | Heikki Linnakangas | 2010-09-15 07:49:19 | Re: Serializable Snapshot Isolation |