LCOV - differential code coverage report
Current view: top level - src/backend/utils/adt - numeric.c (source / functions) Coverage Total Hit UNC LBC UIC UBC GIC GNC CBC EUB ECB DUB DCB
Current: c70b6db34ffeab48beef1fb4ce61bcad3772b8dd vs 06473f5a344df8c9594ead90a609b86f6724cff8 Lines: 94.7 % 4018 3807 1 210 117 3690 22 170
Current Date: 2025-09-06 07:49:51 +0900 Functions: 99.5 % 211 210 1 44 166 12
Baseline: lcov-20250907-010129-baseline Branches: 78.6 % 2497 1963 19 1 8 506 8 59 1896 42 22
Baseline Date: 2025-09-05 08:21:35 +0100 Line coverage date bins:
Legend: Lines:     hit not hit
Branches: + taken - not taken # not executed
(1,7] days: 100.0 % 42 42 42
(7,30] days: 90.0 % 10 9 1 9
(30,360] days: 94.7 % 243 230 13 66 164
(360..) days: 94.7 % 3723 3526 197 3526
Function coverage date bins:
(1,7] days: 100.0 % 8 8 8
(30,360] days: 100.0 % 6 6 5 1
(360..) days: 99.5 % 197 196 1 31 165
Branch coverage date bins:
(1,7] days: 76.7 % 30 23 7 23
(7,30] days: 75.0 % 4 3 1 3
(30,360] days: 83.6 % 146 122 11 13 33 89
(360..) days: 76.2 % 2381 1815 1 8 493 8 1807 42 22

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
int8_sum UBC 0 0.0 % (0 / 9) 0.0 % (0 / 6)
int2_numeric CBC 3 100.0 % (3 / 3)
int2_avg_accum_inv CBC 6 83.3 % (10 / 12) 40.0 % (4 / 10)
accum_sum_reset CBC 9 100.0 % (6 / 6) 100.0 % (2 / 2)
int2_sum GNC 12 81.8 % (9 / 11) 66.7 % (4 / 6)
numeric_avg_combine CBC 12 87.9 % (29 / 33) 55.6 % (10 / 18)
numeric_avg_deserialize CBC 12 94.7 % (18 / 19) 25.0 % (1 / 4)
numeric_avg_serialize CBC 12 94.1 % (16 / 17) 25.0 % (1 / 4)
numeric_poly_combine GNC 12 90.0 % (18 / 20) 57.1 % (8 / 14)
numeric_poly_deserialize GNC 12 91.7 % (11 / 12) 25.0 % (1 / 4)
numeric_poly_serialize GNC 12 90.0 % (9 / 10) 25.0 % (1 / 4)
int8_avg_combine GNC 15 88.9 % (16 / 18) 57.1 % (8 / 14)
int8_avg_deserialize GNC 15 90.9 % (10 / 11) 25.0 % (1 / 4)
int8_avg_serialize GNC 15 88.9 % (8 / 9) 25.0 % (1 / 4)
int8_avg_accum_inv GNC 18 85.7 % (6 / 7) 50.0 % (4 / 8)
numeric_combine CBC 18 88.6 % (31 / 35) 55.6 % (10 / 18)
numeric_deserialize CBC 18 95.2 % (20 / 21) 25.0 % (1 / 4)
numeric_float8_no_overflow CBC 18 54.5 % (6 / 11) 16.7 % (1 / 6)
numeric_poly_avg GNC 18 100.0 % (10 / 10) 66.7 % (4 / 6)
numeric_serialize CBC 18 94.7 % (18 / 19) 25.0 % (1 / 4)
accum_sum_copy CBC 21 100.0 % (10 / 10)
int2_avg_accum CBC 21 83.3 % (10 / 12) 40.0 % (4 / 10)
numeric_fac CBC 21 100.0 % (20 / 20) 78.6 % (11 / 14)
numeric_inc CBC 24 100.0 % (9 / 9) 100.0 % (2 / 2)
numeric_sign CBC 24 91.7 % (11 / 12) 83.3 % (5 / 6)
accum_sum_combine CBC 27 100.0 % (6 / 6)
makeInt128AggStateCurrentContext CBC 27 100.0 % (4 / 4)
numeric_poly_var_pop GNC 30 83.3 % (5 / 6) 50.0 % (2 / 4)
numeric_is_integral CBC 33 85.7 % (6 / 7) 87.5 % (7 / 8)
numeric_send CBC 35 100.0 % (11 / 11) 100.0 % (2 / 2)
numeric_min_scale CBC 36 100.0 % (8 / 8) 100.0 % (2 / 2)
numeric_poly_stddev_pop GNC 36 83.3 % (5 / 6) 50.0 % (2 / 4)
int128_deserialize GNC 39 100.0 % (4 / 4)
int128_serialize GNC 39 100.0 % (4 / 4)
numeric_avg CBC 39 100.0 % (18 / 18) 87.5 % (14 / 16)
numeric_exp CBC 39 100.0 % (20 / 20) 87.5 % (7 / 8)
hash_numeric_extended CBC 42 84.6 % (22 / 26) 56.2 % (18 / 32)
makeNumericAggStateCurrentContext CBC 42 100.0 % (5 / 5)
numeric_stddev_pop CBC 48 83.3 % (5 / 6) 50.0 % (2 / 4)
numericvar_deserialize CBC 48 100.0 % (9 / 9) 100.0 % (2 / 2)
numericvar_serialize CBC 48 100.0 % (8 / 8) 100.0 % (2 / 2)
numeric_int2 CBC 51 92.3 % (12 / 13) 66.7 % (12 / 18)
numeric_recv CBC 51 67.7 % (21 / 31) 25.0 % (7 / 28)
floor_var CBC 54 100.0 % (9 / 9) 100.0 % (4 / 4)
numeric_scale CBC 54 100.0 % (5 / 5) 75.0 % (3 / 4)
numeric_var_pop CBC 57 83.3 % (5 / 6) 50.0 % (2 / 4)
numericvar_to_uint64 CBC 57 92.9 % (26 / 28) 75.0 % (12 / 16)
numeric_pg_lsn CBC 60 90.0 % (9 / 10) 58.3 % (7 / 12)
numeric_floor CBC 63 100.0 % (9 / 9) 100.0 % (2 / 2)
numeric_poly_var_samp GNC 63 100.0 % (6 / 6) 75.0 % (3 / 4)
numeric_abbrev_abort CBC 72 23.5 % (4 / 17) 4.5 % (1 / 22)
numeric_sqrt CBC 75 100.0 % (17 / 17) 83.3 % (5 / 6)
set_var_from_non_decimal_integer_str CBC 78 87.5 % (70 / 80) 77.6 % (45 / 58)
int2_accum_inv GNC 81 85.7 % (6 / 7) 50.0 % (4 / 8)
int4_accum_inv GNC 81 85.7 % (6 / 7) 50.0 % (4 / 8)
int8_accum_inv CBC 81 75.0 % (6 / 8) 41.7 % (5 / 12)
numeric_poly_stddev_samp GNC 82 100.0 % (6 / 6) 75.0 % (3 / 4)
numeric_stddev_samp CBC 87 100.0 % (6 / 6) 75.0 % (3 / 4)
exp_var CBC 90 97.5 % (39 / 40) 78.6 % (11 / 14)
numeric_var_samp CBC 90 100.0 % (6 / 6) 75.0 % (3 / 4)
int2_accum GNC 99 100.0 % (7 / 7) 100.0 % (6 / 6)
numeric_ln CBC 99 100.0 % (17 / 17) 83.3 % (5 / 6)
ceil_var CBC 102 100.0 % (9 / 9) 100.0 % (4 / 4)
log_var CBC 108 100.0 % (21 / 21)
numeric_gcd CBC 108 100.0 % (12 / 12) 100.0 % (4 / 4)
gcd_var CBC 111 100.0 % (26 / 26) 90.0 % (9 / 10)
numeric_ceil CBC 111 100.0 % (9 / 9) 100.0 % (2 / 2)
get_str_from_var_sci CBC 114 94.1 % (16 / 17) 75.0 % (3 / 4)
numeric_accum_inv CBC 114 87.5 % (7 / 8) 60.0 % (6 / 10)
power_ten_int CBC 114 100.0 % (10 / 10) 100.0 % (6 / 6)
numeric_lcm CBC 123 100.0 % (18 / 18) 100.0 % (8 / 8)
numeric_out_sci CBC 123 100.0 % (10 / 10) 100.0 % (6 / 6)
do_int128_discard GNC 156 100.0 % (6 / 6) 100.0 % (2 / 2)
numeric_is_inf CBC 156 100.0 % (2 / 2)
numeric_trim_scale CBC 162 100.0 % (9 / 9) 100.0 % (2 / 2)
do_numeric_discard CBC 171 90.6 % (29 / 32) 76.9 % (20 / 26)
numeric_log CBC 171 100.0 % (25 / 25) 84.6 % (22 / 26)
get_min_scale CBC 186 93.3 % (14 / 15) 90.0 % (9 / 10)
numerictypmodout CBC 188 85.7 % (6 / 7) 50.0 % (1 / 2)
numeric_poly_stddev_internal CBC 211 100.0 % (18 / 18) 50.0 % (3 / 6)
numericvar_to_double_no_overflow CBC 237 85.7 % (6 / 7) 25.0 % (1 / 4)
compute_bucket CBC 240 100.0 % (14 / 14)
generate_series_numeric_support CBC 243 95.9 % (47 / 49) 90.5 % (38 / 42)
numeric_uplus CBC 249 100.0 % (3 / 3)
numeric_support CBC 258 100.0 % (21 / 21) 68.8 % (11 / 16)
numeric_int8 GNC 261 100.0 % (3 / 3)
div_var_int64 CBC 264 97.6 % (41 / 42) 89.3 % (25 / 28)
numeric_int8_safe GNC 285 100.0 % (9 / 9) 83.3 % (10 / 12)
numeric_trunc CBC 313 100.0 % (15 / 15) 100.0 % (4 / 4)
numeric_accum CBC 321 100.0 % (7 / 7) 100.0 % (6 / 6)
xdigit_value CBC 354 100.0 % (4 / 4) 66.7 % (8 / 12)
estimate_ln_dweight CBC 369 100.0 % (22 / 22) 100.0 % (12 / 12)
width_bucket_numeric GNC 393 97.3 % (36 / 37) 73.7 % (28 / 38)
numeric_smaller CBC 399 100.0 % (6 / 6) 100.0 % (2 / 2)
ln_var CBC 417 97.7 % (43 / 44) 81.2 % (13 / 16)
numeric_uminus CBC 442 70.6 % (12 / 17) 40.0 % (8 / 20)
makeInt128AggState CBC 484 87.5 % (7 / 8) 25.0 % (1 / 4)
numeric_stddev_internal CBC 493 94.4 % (34 / 36) 90.0 % (18 / 20)
numeric_poly_sum GNC 525 100.0 % (9 / 9) 100.0 % (6 / 6)
float8_numeric CBC 537 100.0 % (14 / 14) 100.0 % (6 / 6)
numeric_sortsupport CBC 570 100.0 % (17 / 17) 100.0 % (2 / 2)
in_range_numeric_numeric CBC 576 98.1 % (53 / 54) 79.3 % (46 / 58)
numeric_div_trunc CBC 609 94.4 % (34 / 36) 85.7 % (24 / 28)
power_var_int CBC 618 86.5 % (64 / 74) 66.7 % (26 / 39)
power_var CBC 699 98.1 % (53 / 54) 77.8 % (28 / 36)
int4_avg_accum_inv CBC 726 83.3 % (10 / 12) 40.0 % (4 / 10)
numeric_power CBC 822 100.0 % (64 / 64) 89.4 % (59 / 66)
make_numeric_typmod CBC 939 100.0 % (2 / 2)
apply_typmod_special CBC 944 100.0 % (9 / 9) 75.0 % (6 / 8)
numerictypmodin CBC 960 93.3 % (14 / 15) 70.8 % (17 / 24)
numeric_float4 CBC 1228 100.0 % (12 / 12) 100.0 % (6 / 6)
numeric_sign_internal CBC 1785 100.0 % (11 / 11) 87.5 % (14 / 16)
int2int4_sum CBC 1917 88.9 % (8 / 9) 50.0 % (5 / 10)
sqrt_var CBC 2097 97.4 % (152 / 156) 87.8 % (65 / 74)
int4_avg_combine CBC 2168 81.2 % (13 / 16) 35.0 % (7 / 20)
div_mod_var CBC 2259 56.5 % (13 / 23) 30.0 % (3 / 10)
numeric_ne CBC 2688 100.0 % (7 / 7) 100.0 % (4 / 4)
numeric_int4 GNC 3043 100.0 % (3 / 3)
numeric_maximum_size CBC 3524 83.3 % (5 / 6) 50.0 % (1 / 2)
numeric_is_nan CBC 3705 100.0 % (2 / 2)
numeric_int4_safe GNC 3835 100.0 % (9 / 9) 83.3 % (10 / 12)
numeric_round CBC 3904 100.0 % (15 / 15) 100.0 % (4 / 4)
numericvar_to_int32 CBC 4198 100.0 % (7 / 7) 100.0 % (6 / 6)
numericvar_to_int64 CBC 5152 100.0 % (30 / 30) 88.9 % (16 / 18)
int8_avg CBC 5387 90.9 % (10 / 11) 50.0 % (5 / 10)
numeric CBC 5851 86.7 % (26 / 30) 57.5 % (23 / 40)
set_var_from_num CBC 6464 100.0 % (8 / 8) 92.9 % (13 / 14)
numeric_ge CBC 7507 100.0 % (7 / 7) 75.0 % (3 / 4)
numeric_le CBC 8963 100.0 % (7 / 7) 100.0 % (4 / 4)
numeric_larger CBC 9315 100.0 % (6 / 6) 100.0 % (2 / 2)
numeric_abbrev_convert_var CBC 9509 92.0 % (23 / 25) 78.6 % (11 / 14)
numeric_abbrev_convert CBC 9584 95.7 % (22 / 23) 83.3 % (10 / 12)
numeric_abs CBC 9753 100.0 % (11 / 11) 83.3 % (5 / 6)
float4_numeric CBC 11182 100.0 % (14 / 14) 100.0 % (6 / 6)
duplicate_numeric CBC 14246 100.0 % (4 / 4)
int64_div_fast_to_numeric GNC 14694 86.4 % (19 / 22) 66.7 % (4 / 6)
random_var CBC 16719 100.0 % (57 / 57) 93.3 % (28 / 30)
random_numeric CBC 16731 100.0 % (16 / 16) 75.0 % (12 / 16)
set_var_from_var CBC 17590 100.0 % (11 / 11) 100.0 % (4 / 4)
int8_numeric CBC 18425 100.0 % (3 / 3)
numeric_typmod_scale CBC 20744 100.0 % (2 / 2)
numeric_typmod_precision CBC 24268 100.0 % (2 / 2)
numeric_normalize CBC 24749 70.6 % (12 / 17) 50.0 % (6 / 12)
numeric_gt CBC 27775 100.0 % (7 / 7) 100.0 % (4 / 4)
zero_var CBC 30778 100.0 % (8 / 8) 100.0 % (2 / 2)
numeric_sub GNC 37613 100.0 % (5 / 5)
numeric_sub_safe GNC 37688 100.0 % (23 / 23) 95.0 % (19 / 20)
generate_series_numeric CBC 60192 100.0 % (2 / 2)
generate_series_step_numeric CBC 60417 100.0 % (45 / 45) 82.5 % (33 / 40)
numeric_lt CBC 68573 100.0 % (7 / 7) 100.0 % (4 / 4)
numeric_div GNC 74133 100.0 % (5 / 5)
numeric_div_safe GNC 74553 94.9 % (37 / 39) 90.0 % (27 / 30)
select_div_scale CBC 74814 100.0 % (24 / 24) 80.0 % (8 / 10)
numeric_in GNC 82041 95.4 % (62 / 65) 91.7 % (44 / 48)
apply_typmod CBC 83310 96.0 % (24 / 25) 95.8 % (23 / 24)
cmp_var CBC 85114 100.0 % (5 / 5)
numeric_sum CBC 85453 100.0 % (17 / 17) 87.5 % (14 / 16)
makeNumericAggState CBC 85570 88.9 % (8 / 9) 25.0 % (1 / 4)
accum_sum_final CBC 86307 90.5 % (19 / 21) 62.5 % (5 / 8)
accum_sum_carry CBC 86382 100.0 % (29 / 29) 88.9 % (16 / 18)
set_var_from_str CBC 92770 92.4 % (85 / 92) 89.1 % (49 / 55)
is_valid_numeric_typmod CBC 93545 100.0 % (2 / 2)
numeric_cmp_abbrev CBC 94393 100.0 % (6 / 6) 100.0 % (4 / 4)
int8_accum CBC 120099 100.0 % (7 / 7) 100.0 % (6 / 6)
int4_accum GNC 121099 100.0 % (7 / 7) 100.0 % (6 / 6)
round_var CBC 124343 100.0 % (39 / 39) 91.7 % (22 / 24)
numeric_add GNC 126092 100.0 % (5 / 5)
numeric_add_safe GNC 126611 100.0 % (23 / 23) 95.0 % (19 / 20)
int8_avg_accum GNC 159458 100.0 % (7 / 7) 100.0 % (6 / 6)
numeric_mod GNC 206642 100.0 % (5 / 5)
numeric_mod_safe GNC 206648 100.0 % (20 / 20) 88.9 % (16 / 18)
mod_var CBC 206837 100.0 % (7 / 7)
trunc_var CBC 210399 100.0 % (17 / 17) 100.0 % (6 / 6)
add_abs CBC 223037 97.5 % (39 / 40) 88.9 % (16 / 18)
numeric_mul GNC 244855 100.0 % (5 / 5)
numeric_mul_safe GNC 244873 91.8 % (45 / 49) 85.3 % (29 / 34)
numeric_float8 CBC 259973 100.0 % (12 / 12) 100.0 % (6 / 6)
sub_var CBC 266214 100.0 % (35 / 35) 85.7 % (12 / 14)
do_int128_accum GNC 278739 100.0 % (6 / 6) 100.0 % (2 / 2)
div_var CBC 285532 93.0 % (160 / 172) 85.7 % (84 / 98)
div_var_int CBC 292102 97.6 % (41 / 42) 89.3 % (25 / 28)
hash_numeric CBC 303772 83.3 % (20 / 24) 59.4 % (19 / 32)
add_var CBC 309056 100.0 % (35 / 35) 85.7 % (12 / 14)
sub_abs CBC 327229 97.5 % (39 / 40) 83.3 % (15 / 18)
numeric_eq CBC 341099 100.0 % (7 / 7) 100.0 % (4 / 4)
cmp_abs CBC 354603 100.0 % (3 / 3)
numeric_out CBC 426325 100.0 % (11 / 11) 100.0 % (6 / 6)
get_str_from_var CBC 449631 100.0 % (49 / 49) 100.0 % (24 / 24)
numeric_cmp CBC 467410 100.0 % (7 / 7) 100.0 % (4 / 4)
mul_var_short CBC 579169 100.0 % (131 / 131) 88.6 % (31 / 35)
mul_var CBC 594854 100.0 % (90 / 90) 95.0 % (38 / 40)
int4_numeric CBC 777169 100.0 % (3 / 3)
int64_to_numeric CBC 933853 100.0 % (6 / 6)
numeric_avg_accum CBC 936404 100.0 % (7 / 7) 100.0 % (6 / 6)
int64_to_numericvar CBC 949667 100.0 % (23 / 23) 100.0 % (6 / 6)
do_numeric_accum CBC 1056776 100.0 % (23 / 23) 100.0 % (14 / 14)
alloc_var CBC 1088548 100.0 % (7 / 7) 100.0 % (2 / 2)
make_result GNC 1133678 100.0 % (2 / 2)
accum_sum_add CBC 1177858 100.0 % (15 / 15) 100.0 % (6 / 6)
accum_sum_rescale CBC 1177858 100.0 % (33 / 33) 83.3 % (15 / 18)
int4_avg_accum CBC 1310151 83.3 % (10 / 12) 40.0 % (4 / 10)
strip_var CBC 1642125 100.0 % (15 / 15) 100.0 % (10 / 10)
int4_sum GNC 1849078 100.0 % (11 / 11) 100.0 % (6 / 6)
make_result_safe GNC 1904591 97.6 % (41 / 42) 87.5 % (42 / 48)
free_var CBC 2094141 100.0 % (6 / 6) 100.0 % (2 / 2)
init_var_from_num CBC 2938077 100.0 % (8 / 8) 92.9 % (13 / 14)
numeric_fast_cmp CBC 8967284 100.0 % (9 / 9) 100.0 % (4 / 4)
cmp_numerics CBC 9902069 95.8 % (23 / 24) 92.9 % (39 / 42)
cmp_var_common CBC 9978323 100.0 % (18 / 18) 100.0 % (16 / 16)
cmp_abs_common CBC 10001448 92.0 % (23 / 25) 93.3 % (28 / 30)

Generated by: LCOV version 2.4-beta