LCOV - differential code coverage report
Current view: top level - src/backend/utils/adt - jsonfuncs.c (source / functions) Coverage Total Hit UNC UBC GBC GNC CBC ECB DUB DCB
Current: Differential Code Coverage 16@8cea358b128 vs 17@8cea358b128 Lines: 95.4 % 2162 2063 29 70 171 1892 6 4 76
Current Date: 2024-04-14 14:21:10 Functions: 100.0 % 150 150 33 117 4
Baseline: 16@8cea358b128 Branches: 72.4 % 1741 1261 82 398 2 102 1157
Baseline Date: 2024-04-14 14:21:09 Line coverage date bins:
Legend: Lines: hit not hit | Branches: + taken - not taken # not executed [..60] days: 77.3 % 22 17 5 17
(60,120] days: 76.1 % 88 67 21 67
(180,240] days: 95.0 % 40 38 2 38
(240..) days: 96.5 % 2012 1941 1 70 49 1892 6
Function coverage date bins:
[..60] days: 100.0 % 1 1 1
(60,120] days: 100.0 % 4 4 4
(180,240] days: 100.0 % 1 1 1
(240..) days: 100.0 % 144 144 27 117
Branch coverage date bins:
[..60] days: 46.2 % 26 12 14 12
(60,120] days: 50.8 % 130 66 64 66
(180,240] days: 100.0 % 2 2 2
(240..) days: 74.6 % 1583 1181 4 398 2 22 1157

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
alen_object_start CBC 6 100.0 % (5 / 5) 75.0 % (3 / 4)
get_array_end CBC 6 100.0 % (8 / 8) 50.0 % (2 / 4)
json_array_elements_text CBC 6 100.0 % (2 / 2)
json_each CBC 6 100.0 % (2 / 2)
json_each_text CBC 6 100.0 % (2 / 2)
jsonb_array_elements_text CBC 6 100.0 % (2 / 2)
okeys_array_start CBC 6 100.0 % (5 / 5) 75.0 % (3 / 4)
json_to_recordset CBC 9 100.0 % (2 / 2)
jsonb_delete_array CBC 9 88.9 % (32 / 36) 54.2 % (26 / 48)
jsonb_to_recordset CBC 9 100.0 % (2 / 2)
sn_array_end CBC 9 100.0 % (4 / 4) 50.0 % (1 / 2)
sn_array_start CBC 9 100.0 % (4 / 4) 50.0 % (1 / 2)
each_array_start CBC 12 80.0 % (4 / 5) 25.0 % (1 / 4)
each_worker GNC 12 100.0 % (21 / 21)
json_array_length GNC 12 100.0 % (11 / 11)
jsonb_each_text CBC 12 100.0 % (2 / 2)
transform_string_values_array_end CBC 15 100.0 % (4 / 4) 50.0 % (1 / 2)
transform_string_values_array_start CBC 15 100.0 % (4 / 4) 50.0 % (1 / 2)
get_object_end CBC 18 100.0 % (8 / 8) 75.0 % (3 / 4)
get_object_start CBC 18 100.0 % (6 / 6) 75.0 % (3 / 4)
jsonb_array_elements CBC 18 100.0 % (2 / 2)
jsonb_pretty CBC 18 100.0 % (5 / 5)
sn_object_end CBC 18 100.0 % (4 / 4) 50.0 % (1 / 2)
sn_object_start CBC 18 100.0 % (4 / 4) 50.0 % (1 / 2)
alen_array_element_start CBC 21 100.0 % (5 / 5) 100.0 % (2 / 2)
json_strip_nulls GNC 21 100.0 % (17 / 17)
jsonb_strip_nulls CBC 21 100.0 % (24 / 24) 90.9 % (20 / 22)
transform_json_string_values GNC 21 100.0 % (18 / 18)
transform_jsonb_string_values CBC 21 100.0 % (18 / 18) 63.3 % (19 / 30)
alen_scalar CBC 24 100.0 % (5 / 5) 75.0 % (3 / 4)
elements_worker_jsonb CBC 24 92.9 % (26 / 28) 62.5 % (10 / 16)
json_array_element_text CBC 24 100.0 % (7 / 7) 100.0 % (2 / 2)
transform_string_values_array_element_start CBC 24 100.0 % (5 / 5) 75.0 % (3 / 4)
jsonb_object_keys CBC 27 100.0 % (31 / 31) 87.5 % (14 / 16)
transform_string_values_object_end CBC 27 100.0 % (4 / 4) 50.0 % (1 / 2)
transform_string_values_object_start CBC 27 100.0 % (4 / 4) 50.0 % (1 / 2)
jsonb_array_element_text CBC 30 71.4 % (10 / 14) 70.0 % (7 / 10)
jsonb_populate_record_valid GNC 30 100.0 % (4 / 4)
jsonb_set_lax CBC 30 95.5 % (21 / 22) 75.0 % (18 / 24)
sn_array_element_start CBC 33 100.0 % (5 / 5) 75.0 % (3 / 4)
push_path CBC 36 92.9 % (26 / 28) 77.8 % (14 / 18)
sn_object_field_start CBC 39 100.0 % (10 / 10) 75.0 % (6 / 8)
jsonb_delete_path CBC 45 88.9 % (16 / 18) 57.1 % (8 / 14)
json_to_record CBC 51 100.0 % (2 / 2)
jsonb_to_record CBC 51 100.0 % (2 / 2)
push_null_elements CBC 54 100.0 % (5 / 5) 100.0 % (2 / 2)
transform_string_values_object_field_start CBC 57 100.0 % (7 / 7) 66.7 % (4 / 6)
transform_string_values_scalar CBC 60 100.0 % (7 / 7) 100.0 % (2 / 2)
each_object_field_end CBC 63 100.0 % (21 / 21) 100.0 % (8 / 8)
each_object_field_start CBC 63 100.0 % (7 / 7) 100.0 % (6 / 6)
jsonb_insert CBC 66 84.2 % (16 / 19) 42.9 % (6 / 14)
sn_scalar CBC 66 100.0 % (10 / 10) 83.3 % (5 / 6)
each_scalar CBC 75 85.7 % (6 / 7) 50.0 % (3 / 6)
iterate_json_values GNC 75 100.0 % (13 / 13)
iterate_jsonb_values CBC 75 100.0 % (29 / 29) 100.0 % (22 / 22)
jsonb_populate_recordset CBC 75 100.0 % (2 / 2)
json_populate_recordset CBC 78 100.0 % (2 / 2)
IteratorConcat CBC 84 100.0 % (37 / 37) 88.6 % (39 / 44)
json_extract_path_text CBC 90 100.0 % (2 / 2)
jsonb_delete CBC 90 100.0 % (24 / 24) 61.1 % (22 / 36)
jsonb_extract_path_text CBC 90 100.0 % (2 / 2)
populate_recordset_array_start CBC 90 100.0 % (2 / 2)
jsonb_object_field_text CBC 99 90.9 % (10 / 11) 50.0 % (9 / 18)
jsonb_set_element CBC 123 88.9 % (8 / 9) 25.0 % (1 / 4)
parse_jsonb_index_flags CBC 126 93.5 % (29 / 31) 70.0 % (28 / 40)
jsonb_delete_idx CBC 129 100.0 % (30 / 30) 85.7 % (24 / 28)
jsonb_extract_path CBC 135 100.0 % (2 / 2)
json_array_element CBC 140 100.0 % (7 / 7) 100.0 % (2 / 2)
populate_recordset_object_end CBC 141 100.0 % (10 / 10) 100.0 % (2 / 2)
populate_recordset_object_start CBC 141 91.7 % (11 / 12) 50.0 % (3 / 6)
json_extract_path CBC 144 100.0 % (2 / 2)
jsonb_set CBC 144 90.5 % (19 / 21) 66.7 % (12 / 18)
populate_recordset_array_element_start CBC 150 83.3 % (5 / 6) 50.0 % (3 / 6)
get_record_type_from_query CBC 156 92.3 % (12 / 13) 62.5 % (5 / 8)
jsonb_array_length CBC 156 100.0 % (7 / 7) 75.0 % (6 / 8)
jsonb_array_element CBC 159 100.0 % (14 / 14) 100.0 % (8 / 8)
populate_recordset_worker GNC 171 92.9 % (65 / 70) 61.4 % (27 / 44)
setPathArray CBC 183 96.6 % (57 / 59) 83.7 % (77 / 92)
jsonb_concat CBC 189 100.0 % (14 / 14) 91.7 % (11 / 12)
json_array_elements CBC 195 100.0 % (2 / 2)
elements_worker GNC 201 100.0 % (23 / 23)
populate_array_report_expected_array GNC 207 85.7 % (12 / 14) 70.0 % (14 / 20)
JsonbValueAsText CBC 210 78.9 % (15 / 19) 60.0 % (6 / 10)
get_jsonb_path_all CBC 225 100.0 % (10 / 10) 100.0 % (4 / 4)
report_json_context CBC 225 95.0 % (19 / 20) 83.3 % (15 / 18)
get_path_all CBC 234 100.0 % (22 / 22) 81.2 % (13 / 16)
populate_recordset_record GNC 240 100.0 % (12 / 12) 100.0 % (2 / 2)
json_errsave_error CBC 246 88.9 % (8 / 9) 60.0 % (12 / 20)
populate_recordset_object_field_end CBC 258 94.1 % (16 / 17) 75.0 % (6 / 8)
populate_recordset_object_field_start CBC 258 100.0 % (10 / 10) 100.0 % (6 / 6)
populate_recordset_scalar CBC 258 85.7 % (6 / 7) 50.0 % (3 / 6)
iterate_values_object_field_start CBC 279 100.0 % (6 / 6) 100.0 % (2 / 2)
iterate_values_scalar CBC 282 100.0 % (18 / 18) 100.0 % (10 / 10)
jsonb_get_element CBC 315 96.8 % (61 / 63) 70.6 % (48 / 68)
populate_array_object_start GNC 324 72.7 % (8 / 11) 41.7 % (5 / 12)
json_get_first_token GNC 336 87.5 % (7 / 8) 75.0 % (3 / 4)
json_populate_record CBC 411 100.0 % (2 / 2)
jsonb_populate_record CBC 441 100.0 % (2 / 2)
setPathObject CBC 444 98.2 % (55 / 56) 63.9 % (69 / 108)
populate_array_json GNC 450 100.0 % (14 / 14) 33.3 % (4 / 12)
json_object_field_text CBC 462 100.0 % (8 / 8) 100.0 % (2 / 2)
json_object_field CBC 490 100.0 % (8 / 8) 100.0 % (2 / 2)
populate_array_array_end GNC 576 81.8 % (9 / 11) 75.0 % (6 / 8)
hash_array_start CBC 636 100.0 % (5 / 5) 75.0 % (3 / 4)
setPath CBC 657 87.9 % (29 / 33) 60.7 % (17 / 28)
populate_array_check_dimension GNC 777 100.0 % (10 / 10) 100.0 % (8 / 8)
get_record_type_from_argument CBC 825 85.7 % (6 / 7) 50.0 % (3 / 6)
populate_array_dim_jsonb GNC 840 94.3 % (33 / 35) 75.0 % (36 / 48)
elements_object_start CBC 858 80.0 % (4 / 5) 25.0 % (1 / 4)
populate_array_assign_ndims GNC 918 83.3 % (10 / 12) 41.7 % (5 / 12)
okeys_object_field_start CBC 921 100.0 % (10 / 10) 100.0 % (4 / 4)
okeys_scalar CBC 927 100.0 % (5 / 5) 75.0 % (3 / 4)
get_array_start CBC 928 93.3 % (14 / 15) 78.6 % (11 / 14)
json_object_keys GNC 930 100.0 % (27 / 27) 100.0 % (4 / 4)
get_array_element_end CBC 965 100.0 % (19 / 19) 88.9 % (16 / 18)
get_array_element_start CBC 965 100.0 % (21 / 21) 88.9 % (16 / 18)
populate_record_worker GNC 984 92.9 % (39 / 42) 60.0 % (24 / 40)
elements_array_element_end CBC 1014 100.0 % (20 / 20) 100.0 % (8 / 8)
elements_array_element_start CBC 1014 100.0 % (7 / 7) 100.0 % (6 / 6)
json_populate_type GNC 1050 75.0 % (15 / 20) 30.0 % (6 / 20)
populate_array GNC 1071 93.3 % (28 / 30) 75.0 % (9 / 12)
allocate_record_info CBC 1152 100.0 % (8 / 8) 70.0 % (7 / 10)
get_worker GNC 1344 100.0 % (30 / 30) 90.0 % (9 / 10)
populate_domain GNC 1395 100.0 % (9 / 9) 41.7 % (5 / 12)
populate_array_element_end GNC 1656 95.2 % (20 / 21) 75.0 % (9 / 12)
populate_array_element_start CBC 1683 100.0 % (8 / 8) 100.0 % (4 / 4)
populate_array_scalar GNC 1827 80.0 % (12 / 15) 50.0 % (8 / 16)
populate_composite GNC 1977 83.3 % (15 / 18) 77.8 % (14 / 18)
populate_record CBC 2193 95.1 % (39 / 41) 83.3 % (35 / 42)
update_cached_tupdesc CBC 2376 91.7 % (11 / 12) 60.0 % (6 / 10)
hash_object_field_end CBC 3078 94.1 % (16 / 17) 75.0 % (6 / 8)
hash_object_field_start CBC 3078 100.0 % (10 / 10) 100.0 % (6 / 6)
populate_array_element GNC 3081 100.0 % (11 / 11) 75.0 % (6 / 8)
json_categorize_type GNC 3247 98.0 % (49 / 50) 84.6 % (22 / 26)
hash_scalar CBC 3690 100.0 % (8 / 8) 75.0 % (6 / 8)
jsonb_each CBC 6084 100.0 % (2 / 2)
each_worker_jsonb CBC 6096 96.7 % (29 / 30) 71.4 % (10 / 14)
prepare_column_cache CBC 10710 97.6 % (41 / 42) 77.8 % (14 / 18)
jsonb_object_field CBC 12345 90.9 % (10 / 11) 56.2 % (9 / 16)
elements_scalar CBC 12768 85.7 % (6 / 7) 50.0 % (3 / 6)
JsObjectGetField CBC 15180 100.0 % (11 / 11) 90.0 % (9 / 10)
pg_parse_json_or_errsave CBC 16949 100.0 % (6 / 6) 100.0 % (2 / 2)
populate_record_field GNC 18987 92.3 % (24 / 26) 83.7 % (36 / 43)
get_scalar CBC 52611 100.0 % (15 / 15) 100.0 % (14 / 14)
get_object_field_end CBC 53300 100.0 % (20 / 20) 90.0 % (18 / 20)
get_object_field_start CBC 53300 100.0 % (20 / 20) 88.9 % (16 / 18)

Generated by: LCOV version 2.1-beta2-3-g6141622