Fix signed/unsigned integer handling in pg_restore_relation_stats()

The pg_class fields relpages, relallvisible, and relallfrozen are of
type int32, but the statistics restoration code and some statistics
code in postgres_fdw internally dealt with them as uint32 for a little
bit, after which they would turn back into int32.  This doesn't make
sense, so fix it to use int32 consistently throughout.

In passing, change a float to float4 to similarly make the C type
consistent with the SQL type.

Reviewed-by: Chao Li <[email protected]>
Discussion: 
https://www.postgresql.org/message-id/flat/db993f34-e3e1-4e6e-85c3-4f248d2ff29b%40eisentraut.org

Branch
------
master

Details
-------
https://git.postgresql.org/pg/commitdiff/b345a554edf321e0ca53db0f4a69aac217805677

Modified Files
--------------
contrib/postgres_fdw/postgres_fdw.c     | 23 +----------------------
src/backend/statistics/relation_stats.c | 26 +++++++++++++-------------
2 files changed, 14 insertions(+), 35 deletions(-)

Reply via email to