In message <199808302324.TAA28018@candle.pha.pa.us>, Bruce Momjian writes:
> > I recompiled the latest cvs with -O2 and found that the crash on
> > table creation was NOT now failing so I'm a little confused :-(
> >
> > I'm just updating my cvs, and will do another build and see how
> > things go.
> >
> > If only I had the same failures as before I'd be able to confirm
> > your suspicions on indexing.c
> >
> > Til Later,
> > Keith.
> >
> >
> >
>
> OK, I am applying my patch now. I certainly fixes a potential problem,
> so I suspect it will fix the problems you are seeing.
>
> Thomas, perhaps it will fix the regression problems too. No way to
> know.
>
> Here is the new while loop. Much better.
>
> ---------------------------------------------------------------------------
>
>
> sd = index_beginscan(idesc, false, num_keys, skey);
> while (indexRes = index_getnext(sd, ForwardScanDirection))
> {
> ItemPointer iptr;
>
> iptr = &indexRes->heap_iptr;
> tuple = heap_fetch(heapRelation, SnapshotNow, iptr, &buffer);
> pfree(indexRes);
> if (HeapTupleIsValid(tuple))
> break;
> }
>
> --
> Bruce Momjian | 830 Blythe Avenue
> maillist@candle.pha.pa.us | Drexel Hill, Pennsylvania 19026
> + If your life is a hard drive, | (610) 353-9879(w)
> + Christ can be your backup. | (610) 853-3000(h)
>
I tried patching indexing.c with this new loop--no luck. I just
checked out a fresh copy, still no luck. I don't understand why it now
works for Keith.
Yesterday I tried this on Solaris, but I was bitten by not having
flock.
Tom Szybist
szybist@boxhill.com