It still doesn't work. btw, I am using 8rc2.
changed it to:
Datum result;
HeapTuple tupleCopy;
tupleCopy = heap_copytuple(tuple);
result = HeapTupleGetDatum(tupleCopy);
SRF_RETURN_NEXT(funcctx, result);
its probably something with the column description. the rows are
returned ok with select testgetrows();
but not with select * from testgetrows();
Regards,
tzahi.
> -----Original Message-----
> From: [EMAIL PROTECTED]
> [mailto:[EMAIL PROTECTED] On Behalf Of Tom Lane
> Sent: Friday, January 07, 2005 8:59 PM
> To: Tzahi Fadida
> Cc: [email protected]
> Subject: Re: [GENERAL] ERROR: cache lookup failed for type 0
>
>
> Tzahi Fadida <[EMAIL PROTECTED]> writes:
> > Hi, I am learning how to use the c functions and my function below
> > works when I do: select testgetrows();
> > but when I do select * from testgetrows(); I am getting:
> > "ERROR: cache lookup failed for type 0"
> > Whats's the problem?
>
> I don't think it's safe to do HeapTupleGetDatum() directly on
> a tuple obtained from heap_getnext. You need to copy it.
>
> regards, tom lane
>
> ---------------------------(end of
> broadcast)---------------------------
> TIP 1: subscribe and unsubscribe commands go to
> [EMAIL PROTECTED]
>
>
---------------------------(end of broadcast)---------------------------
TIP 7: don't forget to increase your free space map settings