Thread: compile warnings on cygwin - make check fails

compile warnings on cygwin - make check fails

From
"Andrew Dunstan"
Date:
 
CVS tip
 
WinXP/cygwin/gcc version 3.3.1 (cygming special)
 
gives these
 
tablecmds.c:3528: warning: dereferencing type-punned pointer will break strict-aliasing rules
execQual.c:749: warning: dereferencing type-punned pointer will break strict-aliasing rules
execQual.c:995: warning: dereferencing type-punned pointer will break strict-aliasing rules
pg_shmem.c:368: warning: passing arg 1 of `shmdt' from incompatible pointer type
proc.c:1016: warning: dereferencing type-punned pointer will break strict-aliasing rules
proc.c:1057: warning: dereferencing type-punned pointer will break strict-aliasing rules
proc.c:1123: warning: dereferencing type-punned pointer will break strict-aliasing rules
command.c:1283: warning: dereferencing type-punned pointer will break strict-aliasing rules
 
make check fails (hangs) consistently on parallel tests
 
max_connections set to 100, shared_buffers set to 1000 by initdb (CVS version, not mine).
 
cheers
 
andrew
 
 
 
 

Re: compile warnings on cygwin - make check fails

From
Jason Tishler
Date:
Andrew,

On Fri, Oct 10, 2003 at 12:25:01AM -0400, Andrew Dunstan wrote:
> WinXP/cygwin/gcc version 3.3.1 (cygming special)

XP Home or Pro?  What version of Cygwin?

> gives these
>  
> tablecmds.c:3528: warning: dereferencing type-punned pointer will break
> strict-aliasing rules
> [snip]

FWIW, I saw warnings I never saw before when compiling Python under
Cygwin gcc 3.3.1 yesterday.  I presume gcc 3.3.1 is pickier or more
"chatty" than it was before.  Anyway, Python still passed its full
regression test.

> make check fails (hangs) consistently on parallel tests

Are you getting hangs or connection refused errors.  The Cygwin
PostgreSQL README documents the following issue:
   1. make check can generate spurious regression test failures due to   overflowing the the listen() backlog queue
whichgenerates   connection refused errors.  Note that make installcheck does not   have this problem since it runs all
testssequentially instead of in   large concurrent groups.
 

> max_connections set to 100, shared_buffers set to 1000 by initdb (CVS
> version, not mine).

The above will not have any affects under Cygwin.  IIRC, the listen()
backlog is 200 under server versions of Windows (e.g., 2000 Advanced
Server) and 5 on all other versions (e.g., XP Pro).

Can you try make installcheck instead?

Thanks,
Jason

-- 
PGP/GPG Key: http://www.tishler.net/jason/pubkey.asc or key servers
Fingerprint: 7A73 1405 7F2B E669 C19D  8784 1AFD E4CC ECF4 8EF6


Re: compile warnings on cygwin - make check fails

From
Andrew Dunstan
Date:
Jason Tishler wrote:

>Andrew,
>
>On Fri, Oct 10, 2003 at 12:25:01AM -0400, Andrew Dunstan wrote:
>  
>
>>WinXP/cygwin/gcc version 3.3.1 (cygming special)
>>    
>>
>
>XP Home or Pro?  What version of Cygwin?
>

XP-HE. I ran a cygwin upgrade last night (to pick up the latest bison 
and get cygutils - it picked up gcc along the way). Then I installed the 
ipc-daemon2 as a service and started it, and ran make check.

>
>  
>
>>gives these
>> 
>>tablecmds.c:3528: warning: dereferencing type-punned pointer will break
>>strict-aliasing rules
>>[snip]
>>    
>>
>
>FWIW, I saw warnings I never saw before when compiling Python under
>Cygwin gcc 3.3.1 yesterday.  I presume gcc 3.3.1 is pickier or more
>"chatty" than it was before.  Anyway, Python still passed its full
>regression test.
>  
>

Right. It's been sen on other platforms with the latest gcc too, I 
believe.  As I understand the latest versions of gcc turn this on with 
-O2, so perhaps we need to add -fno-strict-aliasing as a short term 
measure if we are using gcc. But it should be fixed - IIRC the Linux 
kernel folks went through some agony over this and eventually made 
almost the whole kernel type-pun safe. After all, this enables better 
optimisation.

>  
>
>>make check fails (hangs) consistently on parallel tests
>>    
>>
>
>Are you getting hangs or connection refused errors.  The Cygwin
>PostgreSQL README documents the following issue:
>  
>

hangs - I have to kill the psql process to continue.

>    1. make check can generate spurious regression test failures due to
>    overflowing the the listen() backlog queue which generates
>    connection refused errors.  Note that make installcheck does not
>    have this problem since it runs all tests sequentially instead of in
>    large concurrent groups.
>
>  
>
>>max_connections set to 100, shared_buffers set to 1000 by initdb (CVS
>>version, not mine).
>>    
>>
>
>The above will not have any affects under Cygwin.  IIRC, the listen()
>backlog is 200 under server versions of Windows (e.g., 2000 Advanced
>Server) and 5 on all other versions (e.g., XP Pro).
>
>Can you try make installcheck instead?
>  
>

will do tonight after work.

cheers

andrew




Re: compile warnings on cygwin - make check fails

From
Jason Tishler
Date:
Andrew,

On Fri, Oct 10, 2003 at 08:56:51AM -0400, Andrew Dunstan wrote:
> Jason Tishler wrote:
> >Are you getting hangs or connection refused errors.  The Cygwin
> >PostgreSQL README documents the following issue:
> >[snip]
> 
> hangs - I have to kill the psql process to continue.

This could mean it will hang on NT and 2000 too.  Sigh...  Can you
attach to the hung psql to determine where it's hanging?

> >Can you try make installcheck instead?
> 
> will do tonight after work.

Thanks!

Jason

-- 
PGP/GPG Key: http://www.tishler.net/jason/pubkey.asc or key servers
Fingerprint: 7A73 1405 7F2B E669 C19D  8784 1AFD E4CC ECF4 8EF6