Thread: AW: Coping with 'C' vs 'newC' function language names

AW: Coping with 'C' vs 'newC' function language names

From
Zeugswetter Andreas SB
Date:
> > More to the point, I think we have to assume old-style interface if we
> > see ... LANGUAGE 'C' with no other decoration, because any other
> > assumption is guaranteed to break all existing user-defined functions.
> 
>     Just  successfully  loading  an  old-style C function doesn't
>     guarantee that it works anyway. I pointed out before that the
>     changes  due  to  TOAST  require  each  function  that  takes
>     arguments of varlen types to  expect  toasted  values.  Worst
>     case a dump might reload and anything works fine, but a month
>     later the first toasted value appears  and  the  old-style  C
>     function corrupts the data without a single warning.
> 
>     We need to WARN, WARN and explicitly WARN users of selfmade C
>     functions about this in any possible place!

Imho the better solution would be, to always detoast values before we pass
them to old-style C-functions. And toast the return value when the function returns.

Andreas