On 2018-May-17, Peter Eisentraut wrote:
> The items that are still open from the original email are:
>
> 2) jsonb scalar values are passed to the plperl function wrapped in not
> one, but _two_ layers of references
>
> 3) jsonb numeric values are passed as perl's NV (floating point) type,
> losing precision if they're integers that would fit in an IV or UV.
>
> #2 appears to be a quality of implementation issue without any
> user-visible effects.
>
> #3 is an opportunity for future improvement, but works as intended right
> now.
>
> I think patches for these issues could still be considered during beta,
> but they are not release blockers IMO.
It appears to me that item #2 definitely would need to be fixed before
release, so that it doesn't become a backwards-incompatibility later on.
I'm not sure I agree that #3 is just a future feature. If you have
functions working with jsonb numeric giving exact results, and later
enable transforms for plperl, then your function starts giving inexact
results? Maybe I misunderstand the issue but this doesn't sound great.
Anyway, please let's move this forward. Peter, you own this item.
Anthony and ilmari, if you can help by providing a patch, I'm sure
that'll be appreciated.
--
Álvaro Herrera https://www.2ndQuadrant.com/
PostgreSQL Development, 24x7 Support, Remote DBA, Training & Services