Re: DETOAST Datum - Mailing list pgsql-hackers

From Nick Raj
Subject Re: DETOAST Datum
Date
Msg-id BANLkTi=-3N8AwKSnQaG-R83-iwT9_oECeg@mail.gmail.com
Whole thread Raw
In response to Re: DETOAST Datum  (Tom Lane <tgl@sss.pgh.pa.us>)
List pgsql-hackers

On Mon, May 16, 2011 at 7:52 PM, Tom Lane <tgl@sss.pgh.pa.us> wrote:
Robert Haas <robertmhaas@gmail.com> writes:
> On Mon, May 16, 2011 at 3:41 AM, Nick Raj <nickrajjain@gmail.com> wrote:
>> "How to get arguments toastable??" and even my table pg_class.reltoastrelid
>> entry is zero.

> It's pretty hard to guess what's going wrong here from the information
> you've provided.  But reltoastid should not be 0 if you're using a
> variable-length data type.

It could be if the type is not marked toastable (ie, has storage class
PLAIN, which I think is the default even for varlena types).

But in any case I suspect that 90% of the problem here is an incorrect
declaration of the *function* not the type.  We haven't seen the C
function declaration, nor the SQL CREATE FUNCTION command, but if it's
going through fmgr_oldstyle then there isn't a PG_FUNCTION_INFO_V1
marker, which maybe is the problem.

Thanks for your replies

Tom, you are correct. I missed PG_FUNCTION_INFO_V1 marker. After adding this marker, my code works fine.
Thanks a lot.



 
                       regards, tom lane

pgsql-hackers by date:

Previous
From: Bruce Momjian
Date:
Subject: Re: pg_upgrade and PGPORT
Next
From: Tom Lane
Date:
Subject: pg_dump vs casts in extensions