Обсуждение: [PERFORM] out of range error while restore using pgdump

Поиск
Список
Период
Сортировка

[PERFORM] out of range error while restore using pgdump

От
Samir Magar
Дата:
Hello,
We are migrating database from one server to another.
As such we are not making any changes in the database structure.
Stil getting below error while restore using pgdump.


pg_restore: [archiver (db)] COPY failed for table "tcb_test": ERROR:  "5.40593839802118076e-315" is out of range for type double precision
CONTEXT:  COPY tcb_test, line 3932596, column va_odometro: "5.40593839802118076e-315"

Could you please help us how can we avoid solve this error?

postgres version 9.5 
OS: Red hat 7.1

Thanks,
Samir Magar

Re: [PERFORM] out of range error while restore using pgdump

От
Tom Lane
Дата:
Samir Magar <samirmagar8@gmail.com> writes:
> pg_restore: [archiver (db)] COPY failed for table "tcb_test": ERROR:
>  "5.40593839802118076e-315" is out of range for type double precision

That's ... weird.  I don't have RHEL7 installed to test, but I don't
see any error for that value on RHEL6 or Fedora 25, which ought to
bracket that version.

I suppose your version of strtod() must be refusing to do gradual
underflow, or else you're running on hardware that doesn't do
IEEE-compliant arithmetic.  But I didn't think RHEL supported any
such hardware (unless maybe it's s/390?).  And I can't find any
documentation suggesting that glibc supports turning off gradual
underflow, either.

Perhaps you're using some extension that fools around with the
hardware floating-point options?

            regards, tom lane