[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: Hung CVS server processes
From: |
Dan Peterson |
Subject: |
Re: Hung CVS server processes |
Date: |
Thu, 19 Sep 2002 23:17:57 -0700 (Pacific Daylight Time) |
On Fri, 20 Sep 2002 address@hidden wrote:
> Dan Peterson writes:
> >
> > But the interesting thing is, none of the current list of 15 procs
> > older than 24 hours logged one of these KEEPALIVE message. At least I
> > assume I should see the same process id in /var/adm/messages as the
> > current "hung" process?
>
> No, CVS doesn't log its pid. What you think are pids in the syslog are
> probably uids.
No. They are pids... but CVS isn't explicitly logging them, syslog is:
Sep 19 16:56:39 phys-cvs01 cvs[17636]: [ID 558503 daemon.error] error setting
KEEPALIVE: Invalid argument
Notice the pid inside the brackets after "cvs".
This is usually turned on with the LOG_PID option to openlog(3C), but I
don't see where CVS is using openlog (it isn't required). I suspect
LOG_PID is turned on by default in Solaris.
> > What does "Invalid argument" in the context of setsockopt mean anyway?
> > The Solaris man page for setsockopt doesn't even show that EINVAL is a
> > valid error response.
>
> Well, an obvious guess is that it means that SO_KEEPALIVE isn't a valid
> socket option,
I don't think that's the issue... at least according to the
setsockopt(3SOCKET) man page, SO_KEEPALIVE is a valid option:
SO_KEEPALIVE
enable/disable keep connections alive
And if it weren't supported it would seem like the call would fail EVERY
time.... it only seems to fail once in a while. We probably get close to
1,000,000 CVS connections a month, so 84 failures in 3.5 months definitely
isn't happening all the time.
> but I think you really need to consult some Solaris experts to find out
> what's really going on.