LCOV - differential code coverage report
Current view: top level - src/backend/utils/adt - numeric.c (source / functions) Coverage Total Hit UBC GNC CBC DCB
Current: ba12a202ce1b5581dc0ed149cf3f637d7897ad5d vs 2866d8c7dbfc9d882a7d80fef93fbbe763709932 Lines: 94.3 % 4041 3810 231 4 3806 4
Current Date: 2026-08-27 14:31:44 +0300 Functions: 99.1 % 212 210 2 2 208
Baseline: lcov-20260827-baseline Branches: 77.9 % 2541 1979 562 1979
Baseline Date: 2026-08-27 14:31:58 +0300 Line coverage date bins:
Legend: Lines:     hit not hit
Branches: + taken - not taken # not executed
(7,30] days: 33.3 % 12 4 8 4
(30,360] days: 86.0 % 86 74 12 74
(360..) days: 94.6 % 3943 3732 211 3732
Function coverage date bins:
(30,360] days: 100.0 % 9 9 9
(360..) days: 99.0 % 203 201 2 2 199
Branch coverage date bins:
(7,30] days: 0.0 % 8 0 8
(30,360] days: 59.2 % 98 58 40 58
(360..) days: 78.9 % 2435 1921 514 1921

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 380359 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 117638 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 17 54.5 % (6 / 11) 16.7 % (1 / 6)
numeric_normalize CBC 15346 70.6 % (12 / 17) 50.0 % (6 / 12)
numeric_uminus CBC 631 70.6 % (12 / 17) 40.0 % (8 / 20)
hash_numeric CBC 410122 83.3 % (20 / 24) 59.4 % (19 / 32)
hash_numeric_extended CBC 56 84.6 % (22 / 26) 56.2 % (18 / 32)
int8_avg_combine CBC 25 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 6897 81.2 % (13 / 16) 35.0 % (7 / 20)
int64_div_fast_to_numeric CBC 15153 86.4 % (19 / 22) 66.7 % (4 / 6)
numeric_in CBC 103182 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 18761730 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 CBC 12679 92.0 % (23 / 25) 78.6 % (11 / 14)
numeric_div_safe CBC 99036 94.9 % (37 / 39) 90.0 % (27 / 30)
numeric_div_trunc CBC 822 94.4 % (34 / 36) 85.7 % (24 / 28)
numeric_float4 CBC 1733 85.7 % (12 / 14) 87.5 % (7 / 8)
numeric_float8 CBC 347641 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 100 92.9 % (26 / 28) 75.0 % (12 / 16)
add_abs CBC 299681 97.5 % (39 / 40) 88.9 % (16 / 18)
apply_typmod CBC 105013 96.0 % (24 / 25) 95.8 % (23 / 24)
div_var_int CBC 389757 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 15133 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 25 90.9 % (10 / 11) 25.0 % (1 / 4)
int8_avg_serialize CBC 25 88.9 % (8 / 9) 25.0 % (1 / 4)
ln_var CBC 607 97.7 % (43 / 44) 81.2 % (13 / 16)
makeInt128AggState CBC 627 87.5 % (7 / 8) 25.0 % (1 / 4)
makeNumericAggState CBC 114082 88.9 % (8 / 9) 25.0 % (1 / 4)
make_result_safe CBC 2525459 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 3712 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 104 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 360 85.7 % (6 / 7) 25.0 % (1 / 4)
power_var CBC 968 98.1 % (53 / 54) 77.8 % (28 / 36)
sub_abs CBC 436079 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 414502 100.0 % (35 / 35) 85.7 % (12 / 14)
alloc_var CBC 1443914 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 469469 100.0 % (3 / 3)
cmp_numerics CBC 18715098 100.0 % (24 / 24) 95.2 % (40 / 42)
cmp_var CBC 114439 100.0 % (5 / 5)
cmp_var_common CBC 18819513 100.0 % (18 / 18) 100.0 % (16 / 16)
compute_bucket CBC 322 100.0 % (14 / 14)
do_int128_accum CBC 371066 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 18823 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 2780052 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 550768 100.0 % (49 / 49) 100.0 % (24 / 24)
init_var_from_num CBC 3860708 100.0 % (8 / 8) 92.9 % (13 / 14)
int128_deserialize CBC 57 100.0 % (4 / 4)
int128_serialize CBC 57 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 1037553 100.0 % (3 / 3)
int4_sum CBC 3274320 100.0 % (11 / 11) 100.0 % (6 / 6)
int64_to_numeric CBC 1245317 100.0 % (6 / 6)
int64_to_numericvar CBC 1262013 100.0 % (23 / 23) 100.0 % (6 / 6)
int8_accum CBC 160132 100.0 % (7 / 7) 100.0 % (6 / 6)
int8_avg_accum CBC 212605 100.0 % (7 / 7) 100.0 % (6 / 6)
int8_numeric CBC 24588 100.0 % (3 / 3)
is_valid_numeric_typmod CBC 119136 100.0 % (2 / 2)
log_var CBC 156 100.0 % (21 / 21)
makeInt128AggStateCurrentContext CBC 41 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 1504713 100.0 % (2 / 2)
mod_var CBC 275434 100.0 % (7 / 7)
mul_var CBC 795594 100.0 % (90 / 90) 95.0 % (38 / 40)
mul_var_short CBC 772966 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 168448 100.0 % (5 / 5)
numeric_add_safe CBC 169142 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 610700 100.0 % (7 / 7) 100.0 % (4 / 4)
numeric_cmp_abbrev CBC 125720 100.0 % (6 / 6) 100.0 % (4 / 4)
numeric_div CBC 98475 100.0 % (5 / 5)
numeric_eq CBC 448710 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 17334706 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 7947 100.0 % (7 / 7) 75.0 % (3 / 4)
numeric_gt CBC 33620 100.0 % (7 / 7) 100.0 % (4 / 4)
numeric_inc CBC 32 100.0 % (9 / 9) 100.0 % (2 / 2)
numeric_int4_safe CBC 4855 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 4468 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 275175 100.0 % (5 / 5)
numeric_mod_safe CBC 275183 100.0 % (20 / 20) 88.9 % (16 / 18)
numeric_ne CBC 3584 100.0 % (7 / 7) 100.0 % (4 / 4)
numeric_out CBC 537242 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 798 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 46295 100.0 % (5 / 5)
numeric_sub_safe CBC 46399 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 32897 100.0 % (2 / 2)
numeric_typmod_scale CBC 28005 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 5344 100.0 % (7 / 7) 100.0 % (6 / 6)
numericvar_to_int64 CBC 6658 100.0 % (30 / 30) 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 168292 100.0 % (39 / 39) 91.7 % (22 / 24)
select_div_scale CBC 99383 100.0 % (24 / 24) 80.0 % (8 / 10)
set_var_from_num CBC 8816 100.0 % (8 / 8) 92.9 % (13 / 14)
set_var_from_var CBC 24583 100.0 % (11 / 11) 100.0 % (4 / 4)
strip_var CBC 2188733 100.0 % (15 / 15) 100.0 % (10 / 10)
sub_var CBC 351205 100.0 % (35 / 35) 85.7 % (12 / 14)
trunc_var CBC 280497 100.0 % (17 / 17) 100.0 % (6 / 6)
xdigit_value CBC 472 100.0 % (4 / 4) 66.7 % (8 / 12)
zero_var CBC 38137 100.0 % (8 / 8) 100.0 % (2 / 2)

Generated by: LCOV version 2.0-1