delorie.com/archives/browse.cgi   search  
Mail Archives: cygwin/2004/10/01/02:41:21

Mailing-List: contact cygwin-help AT cygwin DOT com; run by ezmlm
List-Subscribe: <mailto:cygwin-subscribe AT cygwin DOT com>
List-Archive: <http://sourceware.org/ml/cygwin/>
List-Post: <mailto:cygwin AT cygwin DOT com>
List-Help: <mailto:cygwin-help AT cygwin DOT com>, <http://sourceware.org/ml/#faqs>
Sender: cygwin-owner AT cygwin DOT com
Mail-Followup-To: cygwin AT cygwin DOT com
Delivered-To: mailing list cygwin AT cygwin DOT com
Message-ID: <20041001064108.14149.qmail@web60309.mail.yahoo.com>
Date: Thu, 30 Sep 2004 23:41:08 -0700 (PDT)
From: Patrick Samson <p_samson AT yahoo DOT com>
Subject: Re: Cygserver 100% CPU (was: References to both cygwin1.dll and msvcrt.dl
To: cygwin AT cygwin DOT com
In-Reply-To: <20040930110137.76042.qmail@web60306.mail.yahoo.com>
MIME-Version: 1.0
X-IsSubscribed: yes

--- Patrick Samson wrote:
> Special note for Postgresql users:
> So far I can only reproduce this problem if these
> 3 conditions are met:
> - many connections (20, 25, 27) doing a simple
> SELECT
> - a script running SELECT, CREATE/DROP TABLE/INDEX
> ...
> - a pgAdmin III connected (but without activity)
> (Postgresql version 7.3.6)
> 
> Quite the same with 1.5.11-3, only the loop is
> slower
> so the CPU is not 100% and the log file doesn't
> grow wildly.
> Just an extract of the log here (full file 263K on
> request):
> 
> cygserver:
>
/netrel/src/cygwin-1.5.11-1/winsup/cygserver/sysv_sem.cc,
> line 1049: semop:  semaptr=A056718,
> sem_base=A056440,
> semptr=A0564F4, sem[15]=0 : op=-1, flag=wait
> 
> cygserver:
>
/netrel/src/cygwin-1.5.11-1/winsup/cygserver/sysv_sem.cc,
> line 1053: semop:  can't do it now
> 
> cygserver:
>
/netrel/src/cygwin-1.5.11-1/winsup/cygserver/sysv_sem.cc,
> line 1086: semop:  rollback 0 through -1
> 
> cygserver:
>
/netrel/src/cygwin-1.5.11-1/winsup/cygserver/sysv_sem.cc,
> line 1109: semop:  good night!
> 
> cygserver:
>
/netrel/src/cygwin-1.5.11-1/winsup/cygserver/bsd_mutex.cc,
> line 189: Unlocked    mutex semid
> cygserver:
>
/netrel/src/cygwin-1.5.11-1/winsup/cygserver/bsd_mutex.cc,
> line 232: Try locking mutex semid
> cygserver:
>
/netrel/src/cygwin-1.5.11-1/winsup/cygserver/bsd_mutex.cc,
> line 232: Locked      mutex semid
> cygserver:
>
/netrel/src/cygwin-1.5.11-1/winsup/cygserver/sysv_sem.cc,
> line 1112: semop:  good morning (error=4)!
> 

With the third condition (pgAdmin) everything was
fine the whole night. And there is only 4
"good night!" messages in the middle of the night.
I guess this is because of one of the cron tasks
scheduled around 3AM to do maintenance tasks such
as VACUUM, pg_dumpall and a diff between replicated
DBs. These are also 4 "good morning" with error=0.

Now, when it's wrong, I can see:
  good morning (error=4)!
Error 4 is EINTR on the return of msleep().
Subsequently semop() returns with this EINTR.

Does it mean that the caller doesn't support
correctly this interrupted call to semop()?
Back to source...



		
__________________________________
Do you Yahoo!?
Yahoo! Mail - 50x more storage than other providers!
http://promotions.yahoo.com/new_mail

--
Unsubscribe info:      http://cygwin.com/ml/#unsubscribe-simple
Problem reports:       http://cygwin.com/problems.html
Documentation:         http://cygwin.com/docs.html
FAQ:                   http://cygwin.com/faq/

- Raw text -


  webmaster     delorie software   privacy  
  Copyright © 2019   by DJ Delorie     Updated Jul 2019