LCOV - differential code coverage report
Current view: top level - src/backend/utils/adt - numeric.c (source / functions) Coverage Total Hit UNC UBC GNC CBC DCB
Current: 1a1248818fb8b8b0353c292c632d6a6af77e8209 vs 8e82d6610e7280d7870c0c36ff1c797e3cfb3e09 Lines: 94.3 % 4040 3809 231 14 3795 15
Current Date: 2026-10-12 11:56:10 +0200 Functions: 99.1 % 212 210 2 6 204
Baseline: lcov-20261012-baseline Branches: 77.9 % 2541 1979 2 560 4 1975
Baseline Date: 2026-10-12 10:36:06 +0200 Line coverage date bins:
Legend: Lines:     hit not hit
Branches: + taken - not taken # not executed
(7,30] days: 100.0 % 11 11 9 2
(30,360] days: 66.7 % 60 40 20 5 35
(360..) days: 94.7 % 3969 3758 211 3758
Function coverage date bins:
(30,360] days: 100.0 % 1 1 1
(360..) days: 99.1 % 211 209 2 6 203
Branch coverage date bins:
(7,30] days: 50.0 % 4 2 2 2
(30,360] days: 47.4 % 78 37 41 2 35
(360..) days: 78.9 % 2459 1940 519 1940

Function Name Sort by function name TLA Hit count Sort by function hit count Lines Sort by unexercised lines in function Branches Sort by unexercised branches in function
numeric_abbrev_abort CBC 96 23.5 % (4 / 17) 4.5 % (1 / 22)
div_var CBC 380428 93.0 % (160 / 172) 85.7 % (84 / 98)
div_mod_var CBC 3295 56.5 % (13 / 23) 30.0 % (3 / 10)
numeric_recv CBC 51 67.7 % (21 / 31) 25.0 % (7 / 28)
power_var_int CBC 848 86.5 % (64 / 74) 66.7 % (26 / 39)
set_var_from_non_decimal_integer_str CBC 104 87.5 % (70 / 80) 77.6 % (45 / 58)
int8_sum UBC 0 0.0 % (0 / 9) 0.0 % (0 / 6)
set_var_from_str CBC 117090 92.4 % (85 / 92) 89.1 % (49 / 55)
numeric CBC 8077 81.2 % (26 / 32) 56.8 % (25 / 44)
numeric_avg_combine CBC 16 82.9 % (29 / 35) 50.0 % (10 / 20)
numeric_combine CBC 24 83.8 % (31 / 37) 50.0 % (10 / 20)
numeric_float8_no_overflow CBC 16 54.5 % (6 / 11) 16.7 % (1 / 6)
numeric_normalize CBC 26420 70.6 % (12 / 17) 50.0 % (6 / 12)
numeric_uminus CBC 631 70.6 % (12 / 17) 40.0 % (8 / 20)
hash_numeric GNC 410122 84.0 % (21 / 25) 59.4 % (19 / 32)
hash_numeric_extended GNC 56 84.6 % (22 / 26) 56.2 % (18 / 32)
int8_avg_combine CBC 29 80.0 % (16 / 20) 50.0 % (8 / 16)
numeric_mul_safe CBC 326791 91.8 % (45 / 49) 85.3 % (29 / 34)
numeric_poly_combine CBC 16 81.8 % (18 / 22) 50.0 % (8 / 16)
sqrt_var CBC 3048 97.4 % (152 / 156) 87.8 % (65 / 74)
do_numeric_discard CBC 228 90.6 % (29 / 32) 76.9 % (20 / 26)
int4_avg_combine CBC 6928 81.2 % (13 / 16) 35.0 % (7 / 20)
int64_div_fast_to_numeric CBC 15151 86.4 % (19 / 22) 66.7 % (4 / 6)
numeric_in CBC 102657 95.4 % (62 / 65) 91.7 % (44 / 48)
numeric_uplus UBC 0 0.0 % (0 / 3)
accum_sum_final CBC 115058 90.5 % (19 / 21) 62.5 % (5 / 8)
cmp_abs_common CBC 18813854 92.0 % (23 / 25) 93.3 % (28 / 30)
generate_series_numeric_support CBC 535 95.9 % (47 / 49) 90.5 % (38 / 42)
int2_avg_accum CBC 28 83.3 % (10 / 12) 40.0 % (4 / 10)
int2_avg_accum_inv CBC 8 83.3 % (10 / 12) 40.0 % (4 / 10)
int2_sum CBC 16 81.8 % (9 / 11) 66.7 % (4 / 6)
int4_avg_accum CBC 1744070 83.3 % (10 / 12) 40.0 % (4 / 10)
int4_avg_accum_inv CBC 1000 83.3 % (10 / 12) 40.0 % (4 / 10)
int8_accum_inv CBC 108 75.0 % (6 / 8) 41.7 % (5 / 12)
numeric_abbrev_convert_var GNC 12679 91.7 % (22 / 24) 78.6 % (11 / 14)
numeric_div_safe CBC 99035 94.9 % (37 / 39) 90.0 % (27 / 30)
numeric_div_trunc CBC 822 94.4 % (34 / 36) 85.7 % (24 / 28)
numeric_float4 CBC 1748 85.7 % (12 / 14) 87.5 % (7 / 8)
numeric_float8 CBC 347617 84.6 % (11 / 13) 87.5 % (7 / 8)
numeric_stddev_internal CBC 654 94.4 % (34 / 36) 90.0 % (18 / 20)
numericvar_to_uint64 CBC 101 92.9 % (26 / 28) 75.0 % (12 / 16)
add_abs CBC 299689 97.5 % (39 / 40) 88.9 % (16 / 18)
apply_typmod CBC 104487 96.0 % (24 / 25) 95.8 % (23 / 24)
div_var_int CBC 389826 97.6 % (41 / 42) 89.3 % (25 / 28)
div_var_int64 CBC 360 97.6 % (41 / 42) 89.3 % (25 / 28)
exp_var CBC 139 97.5 % (39 / 40) 78.6 % (11 / 14)
float4_numeric CBC 15110 93.3 % (14 / 15) 87.5 % (7 / 8)
float8_numeric CBC 654 93.3 % (14 / 15) 87.5 % (7 / 8)
get_min_scale CBC 267 93.3 % (14 / 15) 90.0 % (9 / 10)
get_str_from_var_sci CBC 152 94.1 % (16 / 17) 75.0 % (3 / 4)
in_range_numeric_numeric CBC 768 98.1 % (53 / 54) 79.3 % (46 / 58)
int2_accum_inv CBC 108 85.7 % (6 / 7) 50.0 % (4 / 8)
int2int4_sum CBC 2716 88.9 % (8 / 9) 50.0 % (5 / 10)
int4_accum_inv CBC 108 85.7 % (6 / 7) 50.0 % (4 / 8)
int8_avg CBC 6817 90.9 % (10 / 11) 50.0 % (5 / 10)
int8_avg_accum_inv CBC 24 85.7 % (6 / 7) 50.0 % (4 / 8)
int8_avg_deserialize CBC 29 90.9 % (10 / 11) 25.0 % (1 / 4)
int8_avg_serialize CBC 29 88.9 % (8 / 9) 25.0 % (1 / 4)
ln_var CBC 607 97.7 % (43 / 44) 81.2 % (13 / 16)
makeInt128AggState CBC 631 87.5 % (7 / 8) 25.0 % (1 / 4)
makeNumericAggState CBC 114082 88.9 % (8 / 9) 25.0 % (1 / 4)
make_result_safe CBC 2525039 97.6 % (41 / 42) 87.5 % (42 / 48)
numeric_abbrev_convert CBC 12779 95.7 % (22 / 23) 83.3 % (10 / 12)
numeric_accum_inv CBC 152 87.5 % (7 / 8) 60.0 % (6 / 10)
numeric_avg_deserialize CBC 16 94.7 % (18 / 19) 25.0 % (1 / 4)
numeric_avg_serialize CBC 16 94.1 % (16 / 17) 25.0 % (1 / 4)
numeric_deserialize CBC 24 95.2 % (20 / 21) 25.0 % (1 / 4)
numeric_int2 CBC 73 92.3 % (12 / 13) 66.7 % (12 / 18)
numeric_int4 CBC 3781 83.3 % (5 / 6) 30.0 % (3 / 10)
numeric_int8 CBC 347 83.3 % (5 / 6) 30.0 % (3 / 10)
numeric_is_integral CBC 54 85.7 % (6 / 7) 87.5 % (7 / 8)
numeric_maximum_size CBC 4892 83.3 % (5 / 6) 50.0 % (1 / 2)
numeric_mul CBC 326759 85.7 % (6 / 7) 30.0 % (3 / 10)
numeric_pg_lsn CBC 105 90.0 % (9 / 10) 58.3 % (7 / 12)
numeric_poly_deserialize CBC 16 91.7 % (11 / 12) 25.0 % (1 / 4)
numeric_poly_serialize CBC 16 90.0 % (9 / 10) 25.0 % (1 / 4)
numeric_poly_stddev_pop CBC 48 83.3 % (5 / 6) 50.0 % (2 / 4)
numeric_poly_var_pop CBC 40 83.3 % (5 / 6) 50.0 % (2 / 4)
numeric_serialize CBC 24 94.7 % (18 / 19) 25.0 % (1 / 4)
numeric_sign CBC 32 91.7 % (11 / 12) 83.3 % (5 / 6)
numeric_stddev_pop CBC 64 83.3 % (5 / 6) 50.0 % (2 / 4)
numeric_var_pop CBC 76 83.3 % (5 / 6) 50.0 % (2 / 4)
numerictypmodout CBC 209 85.7 % (6 / 7) 50.0 % (1 / 2)
numericvar_to_double_no_overflow CBC 359 85.7 % (6 / 7) 25.0 % (1 / 4)
power_var CBC 968 98.1 % (53 / 54) 77.8 % (28 / 36)
sub_abs CBC 436297 97.5 % (39 / 40) 83.3 % (15 / 18)
width_bucket_numeric CBC 529 97.3 % (36 / 37) 73.7 % (28 / 38)
accum_sum_add CBC 1570448 100.0 % (15 / 15) 100.0 % (6 / 6)
accum_sum_carry CBC 115159 100.0 % (29 / 29) 88.9 % (16 / 18)
accum_sum_combine CBC 36 100.0 % (6 / 6)
accum_sum_copy GNC 28 100.0 % (10 / 10)
accum_sum_rescale GNC 1570448 100.0 % (33 / 33) 83.3 % (15 / 18)
accum_sum_reset CBC 12 100.0 % (6 / 6) 100.0 % (2 / 2)
add_var CBC 414503 100.0 % (35 / 35) 85.7 % (12 / 14)
alloc_var CBC 1443451 100.0 % (7 / 7) 100.0 % (2 / 2)
apply_typmod_special CBC 1296 100.0 % (9 / 9) 75.0 % (6 / 8)
ceil_var CBC 136 100.0 % (9 / 9) 100.0 % (4 / 4)
cmp_abs CBC 469505 100.0 % (3 / 3)
cmp_numerics CBC 18766345 100.0 % (24 / 24) 95.2 % (40 / 42)
cmp_var CBC 114439 100.0 % (5 / 5)
cmp_var_common CBC 18870924 100.0 % (18 / 18) 100.0 % (16 / 16)
compute_bucket CBC 322 100.0 % (14 / 14)
do_int128_accum CBC 370866 100.0 % (6 / 6) 100.0 % (2 / 2)
do_int128_discard CBC 208 100.0 % (6 / 6) 100.0 % (2 / 2)
do_numeric_accum CBC 1409012 100.0 % (23 / 23) 100.0 % (14 / 14)
duplicate_numeric CBC 18824 100.0 % (4 / 4)
estimate_ln_dweight CBC 534 100.0 % (22 / 22) 100.0 % (12 / 12)
floor_var CBC 72 100.0 % (9 / 9) 100.0 % (4 / 4)
free_var CBC 2779772 100.0 % (6 / 6) 100.0 % (2 / 2)
gcd_var CBC 148 100.0 % (26 / 26) 90.0 % (9 / 10)
generate_series_numeric CBC 80256 100.0 % (2 / 2)
generate_series_step_numeric CBC 80556 100.0 % (45 / 45) 82.5 % (33 / 40)
get_str_from_var CBC 561299 100.0 % (49 / 49) 100.0 % (24 / 24)
init_var_from_num CBC 3871395 100.0 % (8 / 8) 92.9 % (13 / 14)
int128_deserialize CBC 61 100.0 % (4 / 4)
int128_serialize CBC 61 100.0 % (4 / 4)
int128_to_numericvar CBC 6281 100.0 % (19 / 19) 100.0 % (4 / 4)
int2_accum CBC 132 100.0 % (7 / 7) 100.0 % (6 / 6)
int2_numeric CBC 5 100.0 % (3 / 3)
int4_accum CBC 161132 100.0 % (7 / 7) 100.0 % (6 / 6)
int4_numeric CBC 1037673 100.0 % (3 / 3)
int4_sum CBC 3412700 100.0 % (11 / 11) 100.0 % (6 / 6)
int64_to_numeric CBC 1245405 100.0 % (6 / 6)
int64_to_numericvar CBC 1262099 100.0 % (23 / 23) 100.0 % (6 / 6)
int8_accum CBC 160132 100.0 % (7 / 7) 100.0 % (6 / 6)
int8_avg_accum CBC 212405 100.0 % (7 / 7) 100.0 % (6 / 6)
int8_numeric CBC 24588 100.0 % (3 / 3)
is_valid_numeric_typmod CBC 118610 100.0 % (2 / 2)
log_var CBC 156 100.0 % (21 / 21)
makeInt128AggStateCurrentContext CBC 45 100.0 % (4 / 4)
makeNumericAggStateCurrentContext CBC 56 100.0 % (5 / 5)
make_numeric_typmod CBC 1079 100.0 % (2 / 2)
make_numeric_typmod_safe CBC 1124 100.0 % (6 / 6) 100.0 % (12 / 12)
make_result CBC 1504776 100.0 % (2 / 2)
mod_var CBC 275504 100.0 % (7 / 7)
mul_var CBC 795664 100.0 % (90 / 90) 95.0 % (38 / 40)
mul_var_short CBC 773036 100.0 % (131 / 131) 88.6 % (31 / 35)
numeric_abs CBC 13004 100.0 % (11 / 11) 83.3 % (5 / 6)
numeric_accum CBC 428 100.0 % (7 / 7) 100.0 % (6 / 6)
numeric_add CBC 168449 100.0 % (5 / 5)
numeric_add_safe CBC 169143 100.0 % (23 / 23) 95.0 % (19 / 20)
numeric_avg CBC 52 100.0 % (18 / 18) 87.5 % (14 / 16)
numeric_avg_accum CBC 1248516 100.0 % (7 / 7) 100.0 % (6 / 6)
numeric_ceil CBC 148 100.0 % (9 / 9) 100.0 % (2 / 2)
numeric_cmp CBC 610636 100.0 % (7 / 7) 100.0 % (4 / 4)
numeric_cmp_abbrev CBC 127116 100.0 % (6 / 6) 100.0 % (4 / 4)
numeric_div CBC 98474 100.0 % (5 / 5)
numeric_eq CBC 448612 100.0 % (7 / 7) 100.0 % (4 / 4)
numeric_exp CBC 65 100.0 % (20 / 20) 87.5 % (7 / 8)
numeric_fac CBC 33 100.0 % (20 / 20) 78.6 % (11 / 14)
numeric_fast_cmp CBC 17386149 100.0 % (9 / 9) 100.0 % (4 / 4)
numeric_floor CBC 84 100.0 % (9 / 9) 100.0 % (2 / 2)
numeric_gcd CBC 144 100.0 % (12 / 12) 100.0 % (4 / 4)
numeric_ge CBC 7945 100.0 % (7 / 7) 75.0 % (3 / 4)
numeric_gt CBC 33588 100.0 % (7 / 7) 100.0 % (4 / 4)
numeric_inc CBC 32 100.0 % (9 / 9) 100.0 % (2 / 2)
numeric_int4_safe CBC 4924 100.0 % (9 / 9) 83.3 % (10 / 12)
numeric_int8_safe CBC 387 100.0 % (9 / 9) 83.3 % (10 / 12)
numeric_is_inf CBC 893 100.0 % (2 / 2)
numeric_is_nan CBC 4437 100.0 % (2 / 2)
numeric_larger CBC 12420 100.0 % (6 / 6) 100.0 % (2 / 2)
numeric_lcm CBC 164 100.0 % (18 / 18) 100.0 % (8 / 8)
numeric_le CBC 10630 100.0 % (7 / 7) 100.0 % (4 / 4)
numeric_ln CBC 140 100.0 % (17 / 17) 83.3 % (5 / 6)
numeric_log CBC 240 100.0 % (25 / 25) 84.6 % (22 / 26)
numeric_lt CBC 250816 100.0 % (7 / 7) 100.0 % (4 / 4)
numeric_min_scale CBC 60 100.0 % (8 / 8) 100.0 % (2 / 2)
numeric_mod CBC 275245 100.0 % (5 / 5)
numeric_mod_safe CBC 275253 100.0 % (20 / 20) 88.9 % (16 / 18)
numeric_ne CBC 3584 100.0 % (7 / 7) 100.0 % (4 / 4)
numeric_out CBC 536700 100.0 % (11 / 11) 100.0 % (6 / 6)
numeric_out_sci CBC 164 100.0 % (10 / 10) 100.0 % (6 / 6)
numeric_poly_avg CBC 24 100.0 % (10 / 10) 66.7 % (4 / 6)
numeric_poly_stddev_internal CBC 278 100.0 % (18 / 18) 50.0 % (3 / 6)
numeric_poly_stddev_samp CBC 106 100.0 % (6 / 6) 75.0 % (3 / 4)
numeric_poly_sum CBC 680 100.0 % (9 / 9) 100.0 % (6 / 6)
numeric_poly_var_samp CBC 84 100.0 % (6 / 6) 75.0 % (3 / 4)
numeric_power CBC 1149 100.0 % (64 / 64) 89.4 % (59 / 66)
numeric_round CBC 5217 100.0 % (15 / 15) 100.0 % (4 / 4)
numeric_scale CBC 81 100.0 % (5 / 5) 75.0 % (3 / 4)
numeric_send CBC 35 100.0 % (11 / 11) 100.0 % (2 / 2)
numeric_sign_internal CBC 2476 100.0 % (11 / 11) 87.5 % (14 / 16)
numeric_smaller CBC 543 100.0 % (6 / 6) 100.0 % (2 / 2)
numeric_sortsupport CBC 795 100.0 % (17 / 17) 100.0 % (2 / 2)
numeric_sqrt CBC 108 100.0 % (17 / 17) 83.3 % (5 / 6)
numeric_stddev_samp CBC 116 100.0 % (6 / 6) 75.0 % (3 / 4)
numeric_sub CBC 46268 100.0 % (5 / 5)
numeric_sub_safe CBC 46372 100.0 % (23 / 23) 95.0 % (19 / 20)
numeric_sum CBC 113926 100.0 % (17 / 17) 87.5 % (14 / 16)
numeric_support CBC 427 100.0 % (21 / 21) 68.8 % (11 / 16)
numeric_trim_scale CBC 227 100.0 % (9 / 9) 100.0 % (2 / 2)
numeric_trunc CBC 442 100.0 % (15 / 15) 100.0 % (4 / 4)
numeric_typmod_precision CBC 32896 100.0 % (2 / 2)
numeric_typmod_scale CBC 28004 100.0 % (2 / 2)
numeric_var_samp CBC 120 100.0 % (6 / 6) 75.0 % (3 / 4)
numerictypmodin CBC 1047 100.0 % (9 / 9) 83.3 % (5 / 6)
numericvar_deserialize CBC 64 100.0 % (9 / 9) 100.0 % (2 / 2)
numericvar_serialize CBC 64 100.0 % (8 / 8) 100.0 % (2 / 2)
numericvar_to_int32 CBC 5413 100.0 % (7 / 7) 100.0 % (6 / 6)
numericvar_to_int64 GNC 6727 100.0 % (29 / 29) 88.9 % (16 / 18)
power_ten_int CBC 152 100.0 % (10 / 10) 100.0 % (6 / 6)
random_numeric CBC 22308 100.0 % (16 / 16) 75.0 % (12 / 16)
random_var CBC 22292 100.0 % (57 / 57) 93.3 % (28 / 30)
round_var CBC 168360 100.0 % (39 / 39) 91.7 % (22 / 24)
select_div_scale CBC 99382 100.0 % (24 / 24) 80.0 % (8 / 10)
set_var_from_num CBC 8815 100.0 % (8 / 8) 92.9 % (13 / 14)
set_var_from_var CBC 24653 100.0 % (11 / 11) 100.0 % (4 / 4)
strip_var CBC 2188620 100.0 % (15 / 15) 100.0 % (10 / 10)
sub_var CBC 351248 100.0 % (35 / 35) 85.7 % (12 / 14)
trunc_var CBC 280567 100.0 % (17 / 17) 100.0 % (6 / 6)
xdigit_value CBC 472 100.0 % (4 / 4) 66.7 % (8 / 12)
zero_var CBC 37955 100.0 % (8 / 8) 100.0 % (2 / 2)

Generated by: LCOV version 2.0-1