Thread: Re: [PERFORM] scalability issues on win32

Re: [PERFORM] scalability issues on win32

From
Claudio Natoli
Date:
Hi Merlin,

> On a probably unrelated note:
> Can some other win32 hacker try the following?
> Download the latest cvs sources from the server and edit configure,
> replacing all instances of '8.0beta5' with '8.0' etc. as is
> will be when released.  Following that do a full make/make clean.  After
> that try and start he server with pg_ctl.exe and tell me if it succeeds or
not.

I can confirm this failure.

(in my case at least) pg_ctl is not seeing the full version string of the
postmaster in find_other_exec. This is due to the single call to ReadFile in
pipe_read_line, which is not returning the entire version string (losing all
characters beyond the last decimal point in the version string). A
subsequent call to ReadFile picks up the remainder of the string. I don't
see that we can rely on a single call returning the entire version string.

If someone can run with this, I've attached initial looping changes for
pipe_read_line. However I'm not sure of the correct terminating condition
(gets into a call to ReadFile that never returns; the WaitForSingleObject
appears insufficient as a precondition for ReadFile) and just don't have
time to complete it right now.

Cheers,
Claudio



Attachment

Re: [PERFORM] scalability issues on win32

From
Andrew Dunstan
Date:

Claudio Natoli wrote:

>Hi Merlin,
>
>
>
>>On a probably unrelated note:
>>Can some other win32 hacker try the following?
>>Download the latest cvs sources from the server and edit configure,
>>replacing all instances of '8.0beta5' with '8.0' etc. as is
>>will be when released.  Following that do a full make/make clean.  After
>>that try and start he server with pg_ctl.exe and tell me if it succeeds or
>>
>>
>not.
>
>I can confirm this failure.
>
>(in my case at least) pg_ctl is not seeing the full version string of the
>postmaster in find_other_exec. This is due to the single call to ReadFile in
>pipe_read_line, which is not returning the entire version string (losing all
>characters beyond the last decimal point in the version string). A
>subsequent call to ReadFile picks up the remainder of the string. I don't
>see that we can rely on a single call returning the entire version string.
>
>

How is it that this has not bitten us elsewhere? Are we only reading
tiny things from pipes in other cases so that a single read works? It
seems very strange that a shorter version string should cause the failure.

cheers

andrew



Re: [PERFORM] scalability issues on win32

From
Bruce Momjian
Date:
Claudio, I need this completed so we can get it into CVS.  Without it a
8.0.0 version string will fail to compare.

---------------------------------------------------------------------------

Claudio Natoli wrote:
>
> Hi Merlin,
>
> > On a probably unrelated note:
> > Can some other win32 hacker try the following?
> > Download the latest cvs sources from the server and edit configure,
> > replacing all instances of '8.0beta5' with '8.0' etc. as is
> > will be when released.  Following that do a full make/make clean.  After
> > that try and start he server with pg_ctl.exe and tell me if it succeeds or
> not.
>
> I can confirm this failure.
>
> (in my case at least) pg_ctl is not seeing the full version string of the
> postmaster in find_other_exec. This is due to the single call to ReadFile in
> pipe_read_line, which is not returning the entire version string (losing all
> characters beyond the last decimal point in the version string). A
> subsequent call to ReadFile picks up the remainder of the string. I don't
> see that we can rely on a single call returning the entire version string.
>
> If someone can run with this, I've attached initial looping changes for
> pipe_read_line. However I'm not sure of the correct terminating condition
> (gets into a call to ReadFile that never returns; the WaitForSingleObject
> appears insufficient as a precondition for ReadFile) and just don't have
> time to complete it right now.
>
> Cheers,
> Claudio
>
>

[ Attachment, skipping... ]

>
> ---------------------------(end of broadcast)---------------------------
> TIP 9: the planner will ignore your desire to choose an index scan if your
>       joining column's datatypes do not match

--
  Bruce Momjian                        |  http://candle.pha.pa.us
  pgman@candle.pha.pa.us               |  (610) 359-1001
  +  If your life is a hard drive,     |  13 Roberts Road
  +  Christ can be your backup.        |  Newtown Square, Pennsylvania 19073