LCOV - differential code coverage report
Current view: top level - src/backend/utils/adt - acl.c (source / functions) Coverage Total Hit UNC UIC UBC GBC GNC CBC DUB DCB
Current: bed3ffbf9d952be6c7d739d068cdce44c046dfb7 vs 574581b50ac9c63dd9e4abebb731a3b67e5b50f6 Lines: 62.4 % 1942 1211 4 727 9 29 1173 1 10
Current Date: 2026-05-05 10:23:31 +0900 Functions: 63.2 % 171 108 63 9 99 2
Baseline: lcov-20260505-025707-baseline Branches: 58.4 % 872 509 8 1 354 9 12 488 3 1
Baseline Date: 2026-05-05 10:27:06 +0900 Line coverage date bins:
Legend: Lines:     hit not hit
Branches: + taken - not taken # not executed
(30,360] days: 88.4 % 43 38 4 1 29 9
(360..) days: 61.8 % 1899 1173 726 9 1164
Function coverage date bins:
(30,360] days: 100.0 % 3 3 2 1
(360..) days: 62.5 % 168 105 63 7 98
Branch coverage date bins:
(30,360] days: 73.5 % 34 25 8 1 12 13
(360..) days: 57.8 % 838 484 1 353 9 475

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
aclcontains UBC 0 0.0 % (0 / 12) 0.0 % (0 / 10)
aclinsert UBC 0 0.0 % (0 / 2) 0.0 % (0 / 2)
aclremove UBC 0 0.0 % (0 / 2) 0.0 % (0 / 2)
convert_database_name UBC 0 0.0 % (0 / 3)
convert_database_priv_string UBC 0 0.0 % (0 / 2)
convert_language_name UBC 0 0.0 % (0 / 3)
convert_language_priv_string UBC 0 0.0 % (0 / 2)
convert_tablespace_name UBC 0 0.0 % (0 / 3)
convert_tablespace_priv_string UBC 0 0.0 % (0 / 2)
has_any_column_privilege_id UBC 0 0.0 % (0 / 14) 0.0 % (0 / 6)
has_any_column_privilege_id_id UBC 0 0.0 % (0 / 14) 0.0 % (0 / 6)
has_any_column_privilege_id_name UBC 0 0.0 % (0 / 10) 0.0 % (0 / 2)
has_any_column_privilege_name UBC 0 0.0 % (0 / 10) 0.0 % (0 / 2)
has_any_column_privilege_name_id UBC 0 0.0 % (0 / 15) 0.0 % (0 / 6)
has_any_column_privilege_name_name UBC 0 0.0 % (0 / 11) 0.0 % (0 / 2)
has_column_privilege_id_id_attnum UBC 0 0.0 % (0 / 10) 0.0 % (0 / 2)
has_column_privilege_id_id_name UBC 0 0.0 % (0 / 11) 0.0 % (0 / 2)
has_column_privilege_id_name_attnum UBC 0 0.0 % (0 / 11) 0.0 % (0 / 2)
has_column_privilege_id_name_name UBC 0 0.0 % (0 / 12) 0.0 % (0 / 2)
has_column_privilege_name_id_attnum UBC 0 0.0 % (0 / 11) 0.0 % (0 / 2)
has_column_privilege_name_id_name UBC 0 0.0 % (0 / 12) 0.0 % (0 / 2)
has_column_privilege_name_name_attnum UBC 0 0.0 % (0 / 12) 0.0 % (0 / 2)
has_column_privilege_name_name_name UBC 0 0.0 % (0 / 13) 0.0 % (0 / 2)
has_database_privilege_id UBC 0 0.0 % (0 / 10) 0.0 % (0 / 2)
has_database_privilege_id_id UBC 0 0.0 % (0 / 10) 0.0 % (0 / 2)
has_database_privilege_id_name UBC 0 0.0 % (0 / 8)
has_database_privilege_name UBC 0 0.0 % (0 / 8)
has_database_privilege_name_id UBC 0 0.0 % (0 / 11) 0.0 % (0 / 2)
has_database_privilege_name_name UBC 0 0.0 % (0 / 9)
has_function_privilege_id UBC 0 0.0 % (0 / 10) 0.0 % (0 / 2)
has_function_privilege_id_id UBC 0 0.0 % (0 / 10) 0.0 % (0 / 2)
has_function_privilege_id_name UBC 0 0.0 % (0 / 8)
has_function_privilege_name UBC 0 0.0 % (0 / 8)
has_function_privilege_name_id UBC 0 0.0 % (0 / 11) 0.0 % (0 / 2)
has_language_privilege_id UBC 0 0.0 % (0 / 10) 0.0 % (0 / 2)
has_language_privilege_id_id UBC 0 0.0 % (0 / 10) 0.0 % (0 / 2)
has_language_privilege_id_name UBC 0 0.0 % (0 / 8)
has_language_privilege_name UBC 0 0.0 % (0 / 8)
has_language_privilege_name_id UBC 0 0.0 % (0 / 11) 0.0 % (0 / 2)
has_language_privilege_name_name UBC 0 0.0 % (0 / 9)
has_largeobject_privilege_id_id UBC 0 0.0 % (0 / 10) 0.0 % (0 / 2)
has_schema_privilege_id UBC 0 0.0 % (0 / 10) 0.0 % (0 / 2)
has_schema_privilege_id_id UBC 0 0.0 % (0 / 10) 0.0 % (0 / 2)
has_schema_privilege_id_name UBC 0 0.0 % (0 / 8)
has_schema_privilege_name UBC 0 0.0 % (0 / 8)
has_schema_privilege_name_id UBC 0 0.0 % (0 / 11) 0.0 % (0 / 2)
has_sequence_privilege_id UBC 0 0.0 % (0 / 15) 0.0 % (0 / 8)
has_sequence_privilege_id_id UBC 0 0.0 % (0 / 15) 0.0 % (0 / 8)
has_sequence_privilege_id_name UBC 0 0.0 % (0 / 10) 0.0 % (0 / 4)
has_sequence_privilege_name_id UBC 0 0.0 % (0 / 16) 0.0 % (0 / 8)
has_tablespace_privilege_id UBC 0 0.0 % (0 / 10) 0.0 % (0 / 2)
has_tablespace_privilege_id_id UBC 0 0.0 % (0 / 10) 0.0 % (0 / 2)
has_tablespace_privilege_id_name UBC 0 0.0 % (0 / 8)
has_tablespace_privilege_name UBC 0 0.0 % (0 / 8)
has_tablespace_privilege_name_id UBC 0 0.0 % (0 / 11) 0.0 % (0 / 2)
has_tablespace_privilege_name_name UBC 0 0.0 % (0 / 9)
has_type_privilege_id UBC 0 0.0 % (0 / 10) 0.0 % (0 / 2)
has_type_privilege_id_id UBC 0 0.0 % (0 / 10) 0.0 % (0 / 2)
has_type_privilege_id_name UBC 0 0.0 % (0 / 8)
has_type_privilege_name UBC 0 0.0 % (0 / 8)
has_type_privilege_name_id UBC 0 0.0 % (0 / 11) 0.0 % (0 / 2)
pg_has_role_id_name UBC 0 0.0 % (0 / 8)
pg_has_role_name_id UBC 0 0.0 % (0 / 8)
has_parameter_privilege_id_name CBC 1 100.0 % (5 / 5)
has_parameter_privilege_name CBC 1 100.0 % (4 / 4)
has_column_privilege_id_name CBC 4 90.9 % (10 / 11) 50.0 % (1 / 2)
has_foreign_data_wrapper_privilege_id CBC 4 90.0 % (9 / 10) 50.0 % (1 / 2)
has_foreign_data_wrapper_privilege_id_id CBC 4 90.0 % (9 / 10) 50.0 % (1 / 2)
has_foreign_data_wrapper_privilege_id_name CBC 4 100.0 % (8 / 8)
has_foreign_data_wrapper_privilege_name CBC 4 100.0 % (8 / 8)
has_foreign_data_wrapper_privilege_name_id CBC 4 90.9 % (10 / 11) 50.0 % (1 / 2)
has_sequence_privilege_name CBC 4 90.0 % (9 / 10) 25.0 % (1 / 4)
has_server_privilege_id_id CBC 4 90.0 % (9 / 10) 50.0 % (1 / 2)
has_server_privilege_id_name CBC 4 100.0 % (8 / 8)
has_server_privilege_name CBC 4 100.0 % (8 / 8)
has_server_privilege_name_id CBC 4 90.9 % (10 / 11) 50.0 % (1 / 2)
convert_type_name CBC 8 83.3 % (5 / 6) 25.0 % (1 / 4)
convert_type_priv_string CBC 8 100.0 % (2 / 2)
has_foreign_data_wrapper_privilege_name_name CBC 8 100.0 % (9 / 9)
has_server_privilege_name_name CBC 8 100.0 % (9 / 9)
has_type_privilege_name_name CBC 8 100.0 % (9 / 9)
hash_aclitem_extended CBC 8 100.0 % (5 / 5) 100.0 % (2 / 2)
is_member_of_role CBC 8 66.7 % (4 / 6) 50.0 % (2 / 4)
has_column_privilege_name_name CBC 12 91.7 % (11 / 12) 50.0 % (1 / 2)
has_sequence_privilege_name_name CBC 12 100.0 % (11 / 11) 75.0 % (3 / 4)
has_table_privilege_name_id CBC 12 90.9 % (10 / 11) 50.0 % (1 / 2)
pg_has_role_name CBC 12 100.0 % (8 / 8)
convert_column_name CBC 16 93.3 % (14 / 15) 75.0 % (6 / 8)
convert_foreign_data_wrapper_name CBC 16 100.0 % (3 / 3)
convert_sequence_priv_string CBC 16 100.0 % (2 / 2)
convert_server_name CBC 16 100.0 % (3 / 3)
has_column_privilege_name_attnum CBC 20 90.9 % (10 / 11) 50.0 % (1 / 2)
has_table_privilege_id_id CBC 24 90.0 % (9 / 10) 50.0 % (1 / 2)
makeaclitem GNC 24 100.0 % (11 / 11) 100.0 % (2 / 2)
pg_has_role_name_name CBC 24 100.0 % (9 / 9)
convert_foreign_data_wrapper_priv_string CBC 28 100.0 % (2 / 2)
get_rolespec_name CBC 28 100.0 % (6 / 6)
has_table_privilege_id_name CBC 28 100.0 % (8 / 8)
convert_schema_name CBC 36 100.0 % (3 / 3)
convert_schema_priv_string CBC 36 100.0 % (2 / 2)
has_schema_privilege_name_name CBC 36 100.0 % (9 / 9)
has_param_priv_byname CBC 37 100.0 % (3 / 3)
has_parameter_privilege_name_name CBC 42 100.0 % (6 / 6)
make_empty_acl CBC 43 100.0 % (2 / 2)
convert_parameter_priv_string CBC 44 100.0 % (2 / 2)
has_table_privilege_name CBC 44 100.0 % (8 / 8)
has_server_privilege_id CBC 52 90.0 % (9 / 10) 50.0 % (1 / 2)
has_largeobject_privilege_name_id CBC 56 90.9 % (10 / 11) 50.0 % (1 / 2)
recursive_revoke CBC 59 95.8 % (23 / 24) 75.0 % (12 / 16)
convert_server_priv_string CBC 76 100.0 % (2 / 2)
check_circularity CBC 77 95.8 % (23 / 24) 62.5 % (10 / 16)
has_table_privilege_id CBC 77 100.0 % (10 / 10) 100.0 % (2 / 2)
has_largeobject_privilege_id CBC 84 100.0 % (10 / 10) 100.0 % (2 / 2)
aclnewowner CBC 92 91.2 % (31 / 34) 73.1 % (19 / 26)
convert_function_name CBC 116 83.3 % (5 / 6) 25.0 % (1 / 4)
convert_function_priv_string CBC 116 100.0 % (2 / 2)
has_function_privilege_name_name CBC 116 100.0 % (9 / 9)
pg_has_role_id_id CBC 120 100.0 % (7 / 7)
aclmerge CBC 140 80.0 % (12 / 15) 50.0 % (8 / 16)
convert_largeobject_priv_string CBC 140 100.0 % (2 / 2)
has_lo_priv_byid CBC 140 100.0 % (13 / 13) 87.5 % (7 / 8)
has_table_privilege_name_name CBC 144 100.0 % (9 / 9)
aclitemComparator CBC 183 43.8 % (7 / 16) 25.0 % (3 / 12)
convert_table_name CBC 256 100.0 % (3 / 3)
select_best_admin CBC 286 100.0 % (5 / 5) 100.0 % (2 / 2)
convert_table_priv_string CBC 321 100.0 % (2 / 2)
check_rolespec_name CBC 334 55.6 % (5 / 9) 33.3 % (4 / 12)
aclequal CBC 363 92.9 % (13 / 14) 70.0 % (14 / 20)
aclmask_direct CBC 380 90.0 % (18 / 20) 62.5 % (15 / 24)
get_rolespec_tuple CBC 427 82.6 % (19 / 23) 47.8 % (11 / 23)
get_role_oid_or_public CBC 443 75.0 % (3 / 4) 50.0 % (1 / 2)
is_member_of_role_nosuper CBC 488 100.0 % (4 / 4) 100.0 % (2 / 2)
aclitemsort CBC 590 100.0 % (4 / 4) 66.7 % (4 / 6)
check_can_set_role CBC 1401 100.0 % (4 / 4) 75.0 % (3 / 4)
is_admin_of_role CBC 1887 100.0 % (7 / 7) 100.0 % (4 / 4)
roles_list_append CBC 3047 69.2 % (9 / 13) 33.3 % (6 / 18)
aclitemin GNC 4940 83.3 % (10 / 12) 50.0 % (4 / 8)
aclparse GNC 4940 50.0 % (46 / 92) 47.9 % (35 / 73)
getid CBC 5027 88.0 % (22 / 25) 73.1 % (19 / 26)
get_rolespec_oid CBC 5859 88.2 % (15 / 17) 54.5 % (6 / 11)
aclcopy CBC 11565 100.0 % (6 / 6) 50.0 % (2 / 4)
hash_aclitem CBC 16210 100.0 % (3 / 3)
aclitem_match CBC 16829 100.0 % (3 / 3) 100.0 % (4 / 4)
initialize_acl CBC 16863 100.0 % (8 / 8) 100.0 % (2 / 2)
get_role_oid CBC 22932 100.0 % (5 / 5) 83.3 % (5 / 6)
aclconcat CBC 28114 100.0 % (9 / 9) 50.0 % (4 / 8)
RoleMembershipCacheCallback GNC 40540 100.0 % (7 / 7) 100.0 % (6 / 6)
select_best_grantor GNC 40729 100.0 % (31 / 31) 90.9 % (20 / 22)
aclupdate CBC 41056 93.8 % (45 / 48) 76.9 % (20 / 26)
roles_is_member_of GNC 44647 95.6 % (43 / 45) 80.4 % (37 / 46)
aclmembers CBC 49312 100.0 % (17 / 17) 83.3 % (10 / 12)
pg_has_role_id CBC 67027 100.0 % (7 / 7)
convert_role_priv_string CBC 67183 100.0 % (2 / 2)
pg_role_aclcheck CBC 67183 78.6 % (11 / 14) 75.0 % (12 / 16)
aclmask CBC 95276 94.1 % (32 / 34) 82.5 % (33 / 40)
aclitem_eq CBC 136957 100.0 % (7 / 7) 83.3 % (5 / 6)
check_acl CBC 197615 62.5 % (5 / 8) 25.0 % (3 / 12)
has_privs_of_role CBC 226601 100.0 % (6 / 6) 100.0 % (4 / 4)
acldefault_sql CBC 304874 89.4 % (42 / 47) 75.0 % (12 / 16)
convert_aclright_to_string CBC 330020 64.7 % (22 / 34) 55.6 % (10 / 18)
member_can_set_role CBC 339815 100.0 % (6 / 6) 100.0 % (4 / 4)
aclexplode GNC 369332 100.0 % (40 / 40) 83.3 % (10 / 12)
has_column_privilege_id_attnum CBC 378189 100.0 % (10 / 10) 100.0 % (2 / 2)
column_privilege_check CBC 378217 93.3 % (14 / 15) 90.0 % (9 / 10)
convert_column_priv_string CBC 378217 100.0 % (2 / 2)
acldefault GNC 385247 97.4 % (75 / 77) 85.2 % (23 / 27)
convert_any_priv_string CBC 446209 100.0 % (21 / 21) 85.0 % (17 / 20)
allocacl CBC 466129 91.7 % (11 / 12) 25.0 % (1 / 4)
aclitemout GNC 719323 87.1 % (27 / 31) 77.8 % (14 / 18)
putid CBC 1126169 100.0 % (16 / 16) 100.0 % (12 / 12)
is_safe_acl_char CBC 7194697 75.0 % (3 / 4) 83.3 % (5 / 6)

Generated by: LCOV version 2.5.0-beta