Re: Buildfarm failure analysis: penguin on 7.4 branch - Mailing list pgsql-hackers

From Andrew Dunstan
Subject Re: Buildfarm failure analysis: penguin on 7.4 branch
Date
Msg-id 42DBB0F0.90300@dunslane.net
Whole thread Raw
In response to Re: Buildfarm failure analysis: penguin on 7.4 branch  ("Jim Buttafuoco" <jim@contactbda.com>)
Responses Re: Buildfarm failure analysis: penguin on 7.4 branch  ("Jim Buttafuoco" <jim@contactbda.com>)
List pgsql-hackers
Jim,

There seems to be some confusion. The error Tom remarked on 7.4 is an 
initdb failure during the core check tests, not a tsearch2 failure, 
which is why I think he recommends discontinuing to build that branch on 
this machine.

Regarding the tsearch2 failure on the 8.0 branch, I am ambivalent about 
your proposed change, to say the least. Tom made a comment some time ago 
about not hiding errors/limitations, and I agree with him. This is in a 
different class from the geometry tests, where the differences were 
largely cosmetic. I don't want people to have to read the fine print to 
see what tests were excluded - if we show a machine as green it should 
mean that machine passed the whole test suite.

cheers

andrew

Jim Buttafuoco wrote:

>Tom,
>
>I agree with NOT fixing the tsearch2 code for this failure in 7.4.  I have left penguin building 7.4 just to see if
the
>core code continues to compile.  I would be nice if the build farm code would let me exclude a contrib module if
>necessary.  What do you think Andrew?
>
>Jim
>
>
>---------- Original Message -----------
>From: Tom Lane <tgl@sss.pgh.pa.us>
>To: jim@buttafuoco.net
>Cc: Andrew Dunstan <andrew@dunslane.net>, pgsql-hackers@postgresql.org
>Sent: Mon, 18 Jul 2005 01:05:09 -0400
>Subject: [HACKERS] Buildfarm failure analysis: penguin on 7.4 branch
>
>  
>
>>Buildfarm member penguin has never got past this point in half a year of
>>trying:
>>
>>creating template1 database in 
>>/home/postgres/pgfarmbuild/REL7_4_STABLE/pgsql.7701/src/test/regress/./tmp_check/data/base/1... ok 
>>initializing pg_shadow... TRAP: FailedAssertion("!(StrategyEvaluationIsValid(evaluation))", File: "istrat.c",
>> Line: 273)
>>
>>Unfortunately it never will :-(, and I'd recommend removing 7.4 from its
>>to-do list.
>>
>>The problem here appears to be the same unusual struct packing rules
>>that make tsearch2 fail on this machine in the 8.0 branch.  The old
>>"index strategy" code assumes that given this set of struct
>>declarations:
>>
>>typedef uint16 StrategyNumber;
>>
>>typedef struct StrategyOperatorData
>>{
>>    StrategyNumber strategy;
>>    bits16        flags;            /* scan qualification flags, see skey.h */
>>} StrategyOperatorData;
>>
>>typedef struct StrategyTermData
>>{                                   /* conjunctive term */
>>    uint16        degree;
>>    StrategyOperatorData operatorData[1];        /* VARIABLE LENGTH ARRAY */
>>} StrategyTermData;                 /* VARIABLE LENGTH STRUCTURE */
>>
>>the contents of StrategyTermData are equivalent to a uint16 array
>>containing {degree, strategy1, flags1, strategy2, flags2, ... }.
>>This is true on 99% of machines out there, but the compiler penguin is
>>using thinks it should align StrategyOperatorData on a word boundary,
>>and so there is padding between the "degree" and the first array
>>element.
>>
>>The compiler is within its rights to do this per the ANSI C spec, but
>>considering that we'd never seen this problem in ten years of Postgres
>>use and that the struct is gone (for unrelated reasons) in PG 8.0 and
>>up, I don't think anyone is likely to feel like messing with the 7.*
>>code to fix it.
>>
>>(This is all extrapolation, mind you, but given what we found out about
>>the problem with tsearch2, I feel reasonably confident in the analysis.)
>>
>>            regards, tom lane
>>
>>---------------------------(end of broadcast)---------------------------
>>TIP 3: Have you checked our extensive FAQ?
>>
>>               http://www.postgresql.org/docs/faq
>>    
>>
>------- End of Original Message -------
>
>
>---------------------------(end of broadcast)---------------------------
>TIP 4: Have you searched our list archives?
>
>               http://archives.postgresql.org
>
>  
>


pgsql-hackers by date:

Previous
From: "Jim Buttafuoco"
Date:
Subject: Re: Buildfarm failure analysis: penguin on 7.4 branch
Next
From: "Jim Buttafuoco"
Date:
Subject: Re: Buildfarm failure analysis: penguin on 7.4 branch