Hi,<br />I have defined some function and also used NDBOX structure that having variable length.<br /><br />typedef
structNDBOX<br />{<br /> int32 vl_len_; /* varlena length */<br /> unsigned int dim;<br />
double x[1];<br /> } NDBOX;<br /><br />When i called my function, it gives NDBOX to be null<br />On debugging, i
foundout ,FunctionInvokeCall invokes fmgr_oldstyle function, for getting argument<br /><br />if
(fnextra->arg_toastable[i]) //this returns false, not able to get arguments<br /> fcinfo->arg[i] =
PointerGetDatum(PG_DETOAST_DATUM(fcinfo->arg[i]));<br/> } <br /><br />"How to get arguments toastable??" and even
mytable pg_class.reltoastrelid entry is zero.<br />Can i have to tell explicitly to toast?<br /><br />If i commented
thatif conditions then, it got stuck below:<br /><br />struct varlena *<br />pg_detoast_datum(struct varlena *
datum)<br/>{<br /> if (VARATT_IS_EXTENDED(datum)) //My code get stuck here<br /> return
heap_tuple_untoast_attr(datum);<br/> else<br /> return datum;<br />}<br /><br />Can anyone tell me what
VARATT_IS_EXTENDED(datum)mean?<br /><br />Thanks<br />