On Tue, 9 Dec 2008, Tom Lane wrote:
> Date: Tue, 09 Dec 2008 09:23:06 -0500
> From: Tom Lane <tgl@sss.pgh.pa.us>
> To: ohp@pyrenet.fr
> Cc: Heikki Linnakangas <heikki.linnakangas@enterprisedb.com>,
> Zdenek Kotala <Zdenek.Kotala@Sun.COM>,
> pgsql-hackers list <pgsql-hackers@postgresql.org>
> Subject: Re: [HACKERS] cvs head initdb hangs on unixware
>
> ohp@pyrenet.fr writes:
>> Guess what! with the fprintf .. descending node... in place, everything
>> goes well. The optimizer definitly does something weird along the
>> definition/assignement of leftok/rightok..
>
> Hmm, so the problem is in that second loop. The trick is to pick some
> reasonably non-ugly code change that makes the problem go away.
>
> The first thing I'd try is to get rid of the overly cute optimization
>
> int rightnodeno = leftnodeno + 1;
>
> and make it just read
>
> int rightnodeno = rightchild(nodeno);
>
> If that doesn't work, we might try refactoring the code enough to get
> rid of the goto, but that looks a little bit tedious.
>
> regards, tom lane
> I tried that and moving leftok,rightok declaration outside the loop, and
refactor the assignement code of leftok, rightok . nothing worked!
Regards,
--
Olivier PRENANT Tel: +33-5-61-50-97-00 (Work)
15, Chemin des Monges +33-5-61-50-97-01 (Fax)
31190 AUTERIVE +33-6-07-63-80-64 (GSM)
FRANCE Email: ohp@pyrenet.fr
------------------------------------------------------------------------------
Make your life a dream, make your dream a reality. (St Exupery)