> Kouhei Kaigai <kaigai@ak.jp.nec.com> writes:
> > Simplified description of what I did is:
> > fval = makeFloat(psprintf("%.0f", plan_nrows));
> > custom_scan->custom_private = list_make1(fval);
>
> So don't do that. The lexer would never produce T_Float for an
> integer-looking string, so I think it's out of scope for nodeRead() to be
> able to reconstitute such a thing. You could use %.1f, perhaps.
> But actually, if you're worried about reconstituting exactly what you had,
> aren't you risking precision loss anyway? Maybe something like
> psprintf("%.*e", DBL_DIG+3, plan_nrows) would be safer.
>
Ah, indeed, it is a good idea to avoid the problem.
Thanks,
----
PG-Strom Project / NEC OSS Promotion Center
KaiGai Kohei <kaigai@ak.jp.nec.com>