Hi,
As far as I read the reloptions.c, autovacuum_vacuum_cost_delay,
autovacuum_vacuum_scale_factor and autovacuum_analyze_scale_factor
are the members of relopt_real, so their type seems the same, real.
But the manual about storage parameters[1] says two of their type
are float4 and the other is floating point.
> autovacuum_vacuum_cost_delay, toast.autovacuum_vacuum_cost_delay (floating point)
> autovacuum_vacuum_scale_factor, toast.autovacuum_vacuum_scale_factor (float4)
> autovacuum_analyze_scale_factor (float4)
And the manual about GUC says all these parameters are floating
point.
> autovacuum_vacuum_cost_delay (floating point)
> autovacuum_vacuum_scale_factor (floating point)
> autovacuum_analyze_scale_factor (floating point)
Also other members of relopt_real such as seq_page_cost,
random_page_cost and vacuum_cleanup_index_scale_factor are
documented as floating point.
I think using float4 on storage parameters[1] are not consistent
so far, how about changing these parameters type from float4 to
floating point if there are no specific reasons using float4?
Attached a patch.
Any thought?
[1]
https://www.postgresql.org/docs/devel/sql-createtable.htm[2]
https://www.postgresql.org/docs/devel/runtime-config-autovacuum.htmlRegards,
--
Torikoshi Atsushi