Обсуждение: Re: ps and psql from PostgreSQL not working with cygwin-1.1.5-2

Поиск
Список
Период
Сортировка

Re: ps and psql from PostgreSQL not working with cygwin-1.1.5-2

От
Jason Tishler
Дата:
Chris,

On Tue, Oct 31, 2000 at 11:48:31AM -0500, Christopher Faylor wrote:
> I can't duplicate the ps problem and I don't use psql.exe so, unless someone
> can debug this, or provide more details, this will be a problem that is in
> 1.1.5.

Here is the requested details regarding the psql.exe problem.  There is
difference in how non-blocking socket connects (i.e. using fcntl to
set O_NONBLOCK) are handled in 1.1.4 and 1.1.5-3.  Specifically, in
1.1.4 connect returns 0, while in 1.1.5-3 connect returns -1 with errno
set to EAGAIN (i.e. No more processes).  BTW, by reading the Solaris
man page for connect, 1.1.4 may not have got it quite right either.
connect should return -1 with errno set to EINPROGRESS for non-blocking
connects that cannot be established immediately.

Attached is code to duplicate the problem.  Try running the client on a
1.1.5-3 machine, the server can run on any machine:

    $ server -p 13131&
    $ client -h <YourServerHostName> -p 13131

Jason

--
Jason Tishler
Director, Software Engineering       Phone: +1 (732) 264-8770 x235
Dot Hill Systems Corporation         Fax:   +1 (732) 264-8798
82 Bethany Road, Suite 7             Email: Jason.Tishler@dothill.com
Hazlet, NJ 07730 USA                 WWW:   http://www.dothill.com

Вложения

Re: Re: ps and psql from PostgreSQL not working with cygwin-1.1.5-2

От
Jason Tishler
Дата:
This problem was introduced sometime between the 10/22/00 and 10/23/00
snapshots, since the DLL from the former does not exhibit the problem
and the latter does.  Reading the ChangeLog, I conclude (possibly
erroneously) that the following are the most likely candidates:

Mon Oct 23 22:27:00 2000  Corinna Vinschen <corinna@vinschen.de>

    * fhandler.cc (fhandler_base::fcntl): Setting flags in F_SETFL
    branch according to Linux documentation.

Mon Oct 23 21:43:00 2000  Corinna Vinschen <corinna@vinschen.de>

    * fcntl.cc (_fcntl): Rearrange as wrapper function. Move all
    functionality except F_DUPFD to fhandler classes.
    * fhandler.cc (fhandler_base::fcntl): New method.
    * net.cc (fhandler_socket::fcntl): Ditto.
    * fhandler.h (class fhandler_base): Add method prototype for fcntl().
    (class fhandler_socket): Ditto.

I tried to figure out exactly what the problem was, but so far I have
been unsuccessful.  Hopefully, the above will help those more intimate
with the code to locate and fix the problem.

Thanks,
Jason

--
Jason Tishler
Director, Software Engineering       Phone: +1 (732) 264-8770 x235
Dot Hill Systems Corporation         Fax:   +1 (732) 264-8798
82 Bethany Road, Suite 7             Email: Jason.Tishler@dothill.com
Hazlet, NJ 07730 USA                 WWW:   http://www.dothill.com