LCOV - differential code coverage report
Current view: top level - src/backend/utils/adt - jsonfuncs.c (source / functions) Coverage Total Hit UBC GNC CBC EUB ECB DCB
Current: c70b6db34ffeab48beef1fb4ce61bcad3772b8dd vs 06473f5a344df8c9594ead90a609b86f6724cff8 Lines: 95.8 % 2181 2090 91 5 2085 1 5
Current Date: 2025-09-06 07:49:51 +0900 Functions: 100.0 % 150 150 5 145
Baseline: lcov-20250908-010021-baseline Branches: 77.4 % 1609 1246 363 1246 103 41
Baseline Date: 2025-09-05 08:21:35 +0100 Line coverage date bins:
Legend: Lines:     hit not hit
Branches: + taken - not taken # not executed
(30,360] days: 100.0 % 31 31 5 26
(360..) days: 95.8 % 2150 2059 91 2059 1
Function coverage date bins:
(360..) days: 100.0 % 150 150 5 145
Branch coverage date bins:
(30,360] days: 85.0 % 20 17 3 17
(360..) days: 70.9 % 1733 1229 360 1229 103 41

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
json_populate_type CBC 840 80.0 % (20 / 25) 80.0 % (8 / 10)
populate_recordset_worker CBC 171 92.9 % (65 / 70) 61.4 % (27 / 44)
JsonbValueAsText CBC 210 78.9 % (15 / 19) 60.0 % (6 / 10)
jsonb_delete_array GNC 9 88.9 % (32 / 36) 63.9 % (23 / 36)
setPath CBC 663 87.9 % (29 / 33) 60.7 % (17 / 28)
jsonb_insert CBC 66 84.2 % (16 / 19) 42.9 % (6 / 14)
populate_array_object_start CBC 324 72.7 % (8 / 11) 41.7 % (5 / 12)
populate_array_scalar CBC 1827 80.0 % (12 / 15) 50.0 % (8 / 16)
populate_composite CBC 1977 83.3 % (15 / 18) 77.8 % (14 / 18)
populate_record_worker CBC 984 92.9 % (39 / 42) 75.0 % (21 / 28)
elements_worker_jsonb GNC 24 92.9 % (26 / 28) 62.5 % (10 / 16)
get_json_object_as_hash CBC 942 90.0 % (18 / 20) 50.0 % (1 / 2)
jsonb_delete_path CBC 48 88.9 % (16 / 18) 57.1 % (8 / 14)
jsonb_set CBC 144 90.5 % (19 / 21) 66.7 % (12 / 18)
parse_jsonb_index_flags CBC 126 93.5 % (29 / 31) 70.0 % (28 / 40)
populate_array CBC 1080 93.3 % (28 / 30) 75.0 % (9 / 12)
populate_array_array_end CBC 576 81.8 % (9 / 11) 75.0 % (6 / 8)
populate_array_assign_ndims CBC 918 83.3 % (10 / 12) 41.7 % (5 / 12)
populate_array_dim_jsonb CBC 849 94.3 % (33 / 35) 75.0 % (36 / 48)
populate_array_report_expected_array CBC 216 85.7 % (12 / 14) 70.0 % (14 / 20)
populate_record_field CBC 18849 92.3 % (24 / 26) 83.7 % (36 / 43)
populate_scalar CBC 4614 95.6 % (43 / 45) 85.0 % (34 / 40)
push_path CBC 36 92.9 % (26 / 28) 77.8 % (14 / 18)
setPathArray CBC 186 96.6 % (57 / 59) 85.9 % (79 / 92)
each_array_start CBC 12 80.0 % (4 / 5) 25.0 % (1 / 4)
each_scalar CBC 75 85.7 % (6 / 7) 50.0 % (3 / 6)
each_worker_jsonb GNC 6096 96.7 % (29 / 30) 71.4 % (10 / 14)
elements_object_start CBC 840 80.0 % (4 / 5) 25.0 % (1 / 4)
elements_scalar CBC 21612 85.7 % (6 / 7) 50.0 % (3 / 6)
get_array_start CBC 922 93.3 % (14 / 15) 78.6 % (11 / 14)
get_record_type_from_argument CBC 825 85.7 % (6 / 7) 50.0 % (3 / 6)
get_record_type_from_query CBC 156 92.3 % (12 / 13) 62.5 % (5 / 8)
hash_object_field_end CBC 3078 94.1 % (16 / 17) 75.0 % (6 / 8)
json_categorize_type CBC 3535 98.0 % (49 / 50) 84.6 % (22 / 26)
json_errsave_error CBC 246 88.9 % (8 / 9) 60.0 % (12 / 20)
json_get_first_token CBC 336 87.5 % (7 / 8) 75.0 % (3 / 4)
jsonb_array_element_text CBC 33 92.9 % (13 / 14) 90.0 % (9 / 10)
jsonb_get_element CBC 315 98.4 % (62 / 63) 76.8 % (43 / 56)
jsonb_set_element CBC 123 88.9 % (8 / 9) 25.0 % (1 / 4)
jsonb_set_lax CBC 30 95.5 % (21 / 22) 75.0 % (18 / 24)
populate_array_element_end CBC 1656 95.2 % (20 / 21) 75.0 % (9 / 12)
populate_record CBC 2193 97.6 % (40 / 41) 83.3 % (35 / 42)
populate_recordset_array_element_start CBC 150 83.3 % (5 / 6) 50.0 % (3 / 6)
populate_recordset_object_field_end CBC 258 94.1 % (16 / 17) 75.0 % (6 / 8)
populate_recordset_object_start CBC 141 91.7 % (11 / 12) 50.0 % (3 / 6)
populate_recordset_scalar CBC 258 85.7 % (6 / 7) 50.0 % (3 / 6)
prepare_column_cache CBC 10785 97.6 % (41 / 42) 77.8 % (14 / 18)
report_json_context CBC 225 95.0 % (19 / 20) 83.3 % (15 / 18)
setPathObject CBC 447 98.2 % (55 / 56) 91.7 % (55 / 60)
update_cached_tupdesc CBC 2376 91.7 % (11 / 12) 60.0 % (6 / 10)
IteratorConcat CBC 84 100.0 % (37 / 37) 88.6 % (39 / 44)
JsObjectGetField CBC 15180 100.0 % (11 / 11) 90.0 % (9 / 10)
JsValueToJsObject CBC 1977 100.0 % (17 / 17) 70.6 % (24 / 34)
alen_array_element_start CBC 21 100.0 % (5 / 5) 100.0 % (2 / 2)
alen_object_start CBC 6 100.0 % (5 / 5) 75.0 % (3 / 4)
alen_scalar CBC 24 100.0 % (5 / 5) 75.0 % (3 / 4)
allocate_record_info CBC 1152 100.0 % (8 / 8) 70.0 % (7 / 10)
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)
each_worker CBC 12 100.0 % (21 / 21)
elements_array_element_end GNC 996 100.0 % (20 / 20) 100.0 % (8 / 8)
elements_array_element_start CBC 996 100.0 % (7 / 7) 100.0 % (6 / 6)
elements_worker CBC 198 100.0 % (23 / 23)
get_array_element_end CBC 962 100.0 % (19 / 19) 88.9 % (16 / 18)
get_array_element_start CBC 962 100.0 % (21 / 21) 88.9 % (16 / 18)
get_array_end CBC 6 100.0 % (8 / 8) 50.0 % (2 / 4)
get_jsonb_path_all CBC 225 100.0 % (10 / 10) 100.0 % (4 / 4)
get_object_end CBC 18 100.0 % (8 / 8) 75.0 % (3 / 4)
get_object_field_end CBC 88306 100.0 % (20 / 20) 90.0 % (18 / 20)
get_object_field_start CBC 88306 100.0 % (20 / 20) 88.9 % (16 / 18)
get_object_start CBC 18 100.0 % (6 / 6) 75.0 % (3 / 4)
get_path_all CBC 234 100.0 % (22 / 22) 81.2 % (13 / 16)
get_scalar CBC 89961 100.0 % (15 / 15) 100.0 % (14 / 14)
get_worker CBC 1338 100.0 % (30 / 30) 90.0 % (9 / 10)
hash_array_start CBC 636 100.0 % (5 / 5) 75.0 % (3 / 4)
hash_object_field_start CBC 3078 100.0 % (10 / 10) 100.0 % (6 / 6)
hash_scalar CBC 3690 100.0 % (8 / 8) 75.0 % (6 / 8)
iterate_json_values CBC 75 100.0 % (13 / 13)
iterate_jsonb_values CBC 75 100.0 % (29 / 29) 100.0 % (22 / 22)
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)
json_array_element CBC 140 100.0 % (7 / 7) 100.0 % (2 / 2)
json_array_element_text CBC 24 100.0 % (7 / 7) 100.0 % (2 / 2)
json_array_elements CBC 192 100.0 % (2 / 2)
json_array_elements_text CBC 6 100.0 % (2 / 2)
json_array_length CBC 12 100.0 % (11 / 11)
json_each CBC 6 100.0 % (2 / 2)
json_each_text CBC 6 100.0 % (2 / 2)
json_extract_path CBC 144 100.0 % (2 / 2)
json_extract_path_text CBC 90 100.0 % (2 / 2)
json_object_field CBC 487 100.0 % (8 / 8) 100.0 % (2 / 2)
json_object_field_text CBC 459 100.0 % (8 / 8) 100.0 % (2 / 2)
json_object_keys CBC 930 100.0 % (27 / 27) 100.0 % (4 / 4)
json_populate_record CBC 411 100.0 % (2 / 2)
json_populate_recordset CBC 78 100.0 % (2 / 2)
json_strip_nulls CBC 42 100.0 % (19 / 19) 75.0 % (3 / 4)
json_to_record CBC 51 100.0 % (2 / 2)
json_to_recordset CBC 9 100.0 % (2 / 2)
jsonb_array_element CBC 162 100.0 % (14 / 14) 100.0 % (8 / 8)
jsonb_array_elements CBC 18 100.0 % (2 / 2)
jsonb_array_elements_text CBC 6 100.0 % (2 / 2)
jsonb_array_length CBC 156 100.0 % (7 / 7) 75.0 % (6 / 8)
jsonb_concat CBC 189 100.0 % (14 / 14) 91.7 % (11 / 12)
jsonb_delete CBC 90 100.0 % (24 / 24) 79.2 % (19 / 24)
jsonb_delete_idx CBC 129 100.0 % (30 / 30) 85.7 % (24 / 28)
jsonb_each CBC 6084 100.0 % (2 / 2)
jsonb_each_text CBC 12 100.0 % (2 / 2)
jsonb_extract_path CBC 135 100.0 % (2 / 2)
jsonb_extract_path_text CBC 90 100.0 % (2 / 2)
jsonb_object_field CBC 12345 100.0 % (11 / 11) 100.0 % (4 / 4)
jsonb_object_field_text CBC 99 100.0 % (11 / 11) 100.0 % (6 / 6)
jsonb_object_keys CBC 27 100.0 % (31 / 31) 87.5 % (14 / 16)
jsonb_populate_record CBC 441 100.0 % (2 / 2)
jsonb_populate_record_valid CBC 30 100.0 % (4 / 4)
jsonb_populate_recordset CBC 75 100.0 % (2 / 2)
jsonb_pretty CBC 18 100.0 % (5 / 5)
jsonb_strip_nulls CBC 42 100.0 % (30 / 30) 90.0 % (27 / 30)
jsonb_to_record CBC 51 100.0 % (2 / 2)
jsonb_to_recordset CBC 9 100.0 % (2 / 2)
makeJsonLexContext GNC 5994 100.0 % (4 / 4)
okeys_array_start CBC 6 100.0 % (5 / 5) 75.0 % (3 / 4)
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)
pg_parse_json_or_errsave CBC 18591 100.0 % (6 / 6) 100.0 % (2 / 2)
populate_array_check_dimension CBC 777 100.0 % (10 / 10) 100.0 % (8 / 8)
populate_array_element CBC 3081 100.0 % (11 / 11) 75.0 % (6 / 8)
populate_array_element_start CBC 1683 100.0 % (8 / 8) 100.0 % (4 / 4)
populate_array_json CBC 450 100.0 % (14 / 14) 33.3 % (4 / 12)
populate_domain CBC 1479 100.0 % (9 / 9) 75.0 % (9 / 12)
populate_recordset_array_start CBC 90 100.0 % (2 / 2)
populate_recordset_object_end CBC 141 100.0 % (10 / 10) 100.0 % (2 / 2)
populate_recordset_object_field_start CBC 258 100.0 % (10 / 10) 100.0 % (6 / 6)
populate_recordset_record CBC 240 100.0 % (12 / 12) 100.0 % (2 / 2)
push_null_elements CBC 54 100.0 % (5 / 5) 100.0 % (2 / 2)
sn_array_element_start CBC 66 100.0 % (9 / 9) 80.0 % (8 / 10)
sn_array_end CBC 18 100.0 % (4 / 4) 50.0 % (1 / 2)
sn_array_start CBC 18 100.0 % (4 / 4) 50.0 % (1 / 2)
sn_object_end CBC 36 100.0 % (4 / 4) 50.0 % (1 / 2)
sn_object_field_start CBC 78 100.0 % (10 / 10) 75.0 % (6 / 8)
sn_object_start CBC 36 100.0 % (4 / 4) 50.0 % (1 / 2)
sn_scalar CBC 132 100.0 % (10 / 10) 83.3 % (5 / 6)
transform_json_string_values CBC 21 100.0 % (18 / 18)
transform_jsonb_string_values CBC 21 100.0 % (18 / 18) 88.9 % (16 / 18)
transform_string_values_array_element_start CBC 24 100.0 % (5 / 5) 75.0 % (3 / 4)
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)
transform_string_values_object_end CBC 27 100.0 % (4 / 4) 50.0 % (1 / 2)
transform_string_values_object_field_start CBC 57 100.0 % (7 / 7) 66.7 % (4 / 6)
transform_string_values_object_start CBC 27 100.0 % (4 / 4) 50.0 % (1 / 2)
transform_string_values_scalar CBC 60 100.0 % (7 / 7) 100.0 % (2 / 2)

Generated by: LCOV version 2.4-beta