mergeNotCheck(Role) |   | 50% |   | 54% | 8 | 13 | 27 | 50 | 0 | 1 |
rebuildPrivTables() |   | 53% |   | 50% | 6 | 9 | 28 | 50 | 0 | 1 |
compatibilityAuthIndexChange(PrivBitSet) |  | 0% |  | 0% | 9 | 9 | 18 | 18 | 1 | 1 |
revokeCols(Map) |  | 0% |  | 0% | 7 | 7 | 14 | 14 | 1 | 1 |
readFields(DataInput) |  | 0% |  | 0% | 4 | 4 | 18 | 18 | 1 | 1 |
rectifyPrivs() |   | 41% |   | 42% | 5 | 8 | 14 | 24 | 0 | 1 |
Role() |  | 0% | | n/a | 1 | 1 | 27 | 27 | 1 | 1 |
grantPrivs(ResourcePattern, PrivBitSet) |   | 26% |   | 28% | 5 | 6 | 14 | 21 | 0 | 1 |
revokePrivs(ResourcePattern, PrivBitSet, boolean) |   | 28% |   | 22% | 6 | 7 | 11 | 18 | 0 | 1 |
revokeResourcePrivs(String, ResourceTypeEnum, PrivBitSet) |   | 25% |   | 20% | 4 | 5 | 11 | 17 | 0 | 1 |
Role(String, ResourcePattern, PrivBitSet) |   | 66% |   | 20% | 4 | 5 | 9 | 41 | 0 | 1 |
checkHasPriv(PrivPredicate, Auth.PrivLevel[]) |  | 0% |  | 0% | 8 | 8 | 9 | 9 | 1 | 1 |
compatibilityErrEnum() |  | 0% |  | 0% | 5 | 5 | 11 | 11 | 1 | 1 |
checkCloudPriv(String, PrivPredicate, ResourceTypeEnum) |  | 0% |  | 0% | 4 | 4 | 10 | 10 | 1 | 1 |
read(DataInput) |  | 0% |  | 0% | 2 | 2 | 10 | 10 | 1 | 1 |
checkStorageVaultPriv(String, PrivPredicate) |  | 0% |  | 0% | 4 | 4 | 7 | 7 | 1 | 1 |
checkCanEnterCluster(String) |  | 0% |  | 0% | 4 | 4 | 7 | 7 | 1 | 1 |
revokePrivs(WorkloadGroupPattern, PrivBitSet, boolean) |   | 47% |   | 25% | 2 | 3 | 3 | 8 | 0 | 1 |
getCloudPrivTable(ResourceTypeEnum) |  | 0% |  | 0% | 3 | 3 | 5 | 5 | 1 | 1 |
grantCols(Map) |   | 71% |   | 66% | 2 | 4 | 2 | 8 | 0 | 1 |
checkAnyColPrivWithinCtl(String) |   | 52% |   | 25% | 2 | 3 | 3 | 6 | 0 | 1 |
mergeColPrivMap(Map, Map) |   | 71% |   | 75% | 1 | 3 | 1 | 6 | 0 | 1 |
checkStorageVaultInternal(String, PrivPredicate, PrivBitSet) |  | 0% | | n/a | 1 | 1 | 2 | 2 | 1 | 1 |
checkCloudInternal(String, PrivPredicate, PrivBitSet, ResourcePrivTable, ResourceTypeEnum) |  | 0% | | n/a | 1 | 1 | 2 | 2 | 1 | 1 |
checkWorkloadGroupPriv(String, PrivPredicate) |   | 78% |   | 62% | 3 | 5 | 2 | 9 | 0 | 1 |
grantTblPrivs(String, String, String, PrivBitSet) |   | 68% | | n/a | 0 | 1 | 2 | 6 | 0 | 1 |
grantDbPrivs(String, String, PrivBitSet) |   | 66% | | n/a | 0 | 1 | 2 | 6 | 0 | 1 |
revokeTblPrivs(String, String, String, PrivBitSet) |   | 66% | | n/a | 0 | 1 | 2 | 6 | 0 | 1 |
grantCatalogPrivs(String, PrivBitSet) |   | 65% | | n/a | 0 | 1 | 2 | 6 | 0 | 1 |
grantWorkloadGroupPrivs(String, PrivBitSet) |   | 65% | | n/a | 0 | 1 | 2 | 6 | 0 | 1 |
revokeDbPrivs(String, String, PrivBitSet) |   | 65% | | n/a | 0 | 1 | 2 | 6 | 0 | 1 |
revokeWorkloadGroupPrivs(String, PrivBitSet) |   | 63% | | n/a | 0 | 1 | 2 | 6 | 0 | 1 |
revokeCatalogPrivs(String, PrivBitSet) |   | 63% | | n/a | 0 | 1 | 2 | 6 | 0 | 1 |
write(DataOutput) |  | 0% | | n/a | 1 | 1 | 2 | 2 | 1 | 1 |
gsonPostProcess() |  | 0% | | n/a | 1 | 1 | 4 | 4 | 1 | 1 |
removeClusterPrefix() |  | 0% | | n/a | 1 | 1 | 2 | 2 | 1 | 1 |
Role(String, List, PrivBitSet, WorkloadGroupPattern, PrivBitSet) |   | 94% | | n/a | 0 | 1 | 2 | 34 | 0 | 1 |
revokePrivs(TablePattern, PrivBitSet, Map, boolean) |   | 89% |   | 75% | 2 | 5 | 2 | 12 | 0 | 1 |
grantPrivs(TablePattern, PrivBitSet) |   | 88% |   | 85% | 1 | 6 | 1 | 16 | 0 | 1 |
static {...} |   | 88% | | n/a | 0 | 1 | 2 | 11 | 0 | 1 |
revokePrivs(TablePattern, PrivBitSet) |   | 87% |   | 80% | 1 | 5 | 1 | 13 | 0 | 1 |
checkResourcePriv(String, PrivPredicate) |   | 81% |   | 66% | 2 | 4 | 1 | 7 | 0 | 1 |
lambda$new$0(PrivBitSet, TablePattern) |   | 72% | | n/a | 0 | 1 | 2 | 6 | 0 | 1 |
revokePrivs(ResourcePattern, PrivBitSet) |   | 77% |   | 33% | 2 | 3 | 2 | 5 | 0 | 1 |
isDefaultRoleName(String) |  | 0% | | n/a | 1 | 1 | 1 | 1 | 1 | 1 |
setComment(String) |  | 0% | | n/a | 1 | 1 | 2 | 2 | 1 | 1 |
getUsers() |  | 0% | | n/a | 1 | 1 | 1 | 1 | 1 | 1 |
lambda$compatibilityErrEnum$4(PrivBitSet) |  | 0% | | n/a | 1 | 1 | 2 | 2 | 1 | 1 |
lambda$compatibilityErrEnum$3(PrivBitSet) |  | 0% | | n/a | 1 | 1 | 2 | 2 | 1 | 1 |
lambda$compatibilityErrEnum$2(PrivBitSet) |  | 0% | | n/a | 1 | 1 | 2 | 2 | 1 | 1 |
lambda$compatibilityErrEnum$1(PrivBitSet) |  | 0% | | n/a | 1 | 1 | 2 | 2 | 1 | 1 |
checkAnyColPrivWithinTbl(String, String, String) |  | 97% |   | 62% | 3 | 5 | 1 | 9 | 0 | 1 |
checkAnyColPrivWithinDb(String, String) |  | 96% |   | 66% | 2 | 4 | 1 | 7 | 0 | 1 |
grantPrivs(WorkloadGroupPattern, PrivBitSet) |  | 93% |   | 50% | 2 | 3 | 1 | 5 | 0 | 1 |
Role(String, TablePattern, PrivBitSet, Map) |  | 100% | | n/a | 0 | 1 | 0 | 31 | 0 | 1 |
Role(String, TablePattern, PrivBitSet) |  | 100% | | n/a | 0 | 1 | 0 | 30 | 0 | 1 |
Role(String, WorkloadGroupPattern, PrivBitSet) |  | 100% | | n/a | 0 | 1 | 0 | 30 | 0 | 1 |
Role(String, String) |  | 100% | | n/a | 0 | 1 | 0 | 29 | 0 | 1 |
checkTblPriv(String, String, String, PrivPredicate) |  | 100% |   | 85% | 3 | 11 | 0 | 11 | 0 | 1 |
checkDbPriv(String, String, PrivPredicate) |  | 100% |   | 87% | 2 | 9 | 0 | 10 | 0 | 1 |
toString() |  | 100% | | n/a | 0 | 1 | 0 | 7 | 0 | 1 |
checkColPriv(String, String, String, String, PrivPredicate) |  | 100% |  | 100% | 0 | 4 | 0 | 4 | 0 | 1 |
checkCtlPriv(String, PrivPredicate) |  | 100% |   | 91% | 1 | 7 | 0 | 9 | 0 | 1 |
onlyCheckColPriv(String, String, String, String, Privilege) |  | 100% |  | 100% | 0 | 2 | 0 | 4 | 0 | 1 |
checkAnyPrivWithinCatalog(String) |  | 100% |   | 83% | 1 | 4 | 0 | 3 | 0 | 1 |
checkAnyPrivWithinDb(String, String) |  | 100% |   | 75% | 1 | 3 | 0 | 1 | 0 | 1 |
checkDbInternal(String, String, PrivPredicate, PrivBitSet) |  | 100% |  | 100% | 0 | 2 | 0 | 4 | 0 | 1 |
checkCatalogInternal(String, PrivPredicate, PrivBitSet) |  | 100% |  | 100% | 0 | 2 | 0 | 4 | 0 | 1 |
checkGlobalInternal(PrivPredicate, PrivBitSet) |  | 100% |  | 100% | 0 | 2 | 0 | 4 | 0 | 1 |
grantGlobalPrivs(PrivBitSet) |  | 100% | | n/a | 0 | 1 | 0 | 3 | 0 | 1 |
checkTblInternal(String, String, String, PrivPredicate, PrivBitSet) |  | 100% | | n/a | 0 | 1 | 0 | 2 | 0 | 1 |
revokePrivs(WorkloadGroupPattern, PrivBitSet) |  | 100% |   | 50% | 1 | 2 | 0 | 3 | 0 | 1 |
merge(Role) |  | 100% | | n/a | 0 | 1 | 0 | 3 | 0 | 1 |
revokeGlobalPrivs(PrivBitSet) |  | 100% | | n/a | 0 | 1 | 0 | 3 | 0 | 1 |
checkGlobalPriv(PrivPredicate) |  | 100% | | n/a | 0 | 1 | 0 | 2 | 0 | 1 |
checkResourceInternal(String, PrivPredicate, PrivBitSet) |  | 100% | | n/a | 0 | 1 | 0 | 2 | 0 | 1 |
checkWorkloadGroupInternal(String, PrivPredicate, PrivBitSet) |  | 100% | | n/a | 0 | 1 | 0 | 2 | 0 | 1 |
Role(String) |  | 100% | | n/a | 0 | 1 | 0 | 2 | 0 | 1 |
getRoleName() |  | 100% | | n/a | 0 | 1 | 0 | 1 | 0 | 1 |
getTblPatternToPrivs() |  | 100% | | n/a | 0 | 1 | 0 | 1 | 0 | 1 |
getResourcePatternToPrivs() |  | 100% | | n/a | 0 | 1 | 0 | 1 | 0 | 1 |
getStorageVaultPatternToPrivs() |  | 100% | | n/a | 0 | 1 | 0 | 1 | 0 | 1 |
getClusterPatternToPrivs() |  | 100% | | n/a | 0 | 1 | 0 | 1 | 0 | 1 |
getStagePatternToPrivs() |  | 100% | | n/a | 0 | 1 | 0 | 1 | 0 | 1 |
getWorkloadGroupPatternToPrivs() |  | 100% | | n/a | 0 | 1 | 0 | 1 | 0 | 1 |
getGlobalPrivTable() |  | 100% | | n/a | 0 | 1 | 0 | 1 | 0 | 1 |
getCatalogPrivTable() |  | 100% | | n/a | 0 | 1 | 0 | 1 | 0 | 1 |
getDbPrivTable() |  | 100% | | n/a | 0 | 1 | 0 | 1 | 0 | 1 |
getTablePrivTable() |  | 100% | | n/a | 0 | 1 | 0 | 1 | 0 | 1 |
getColPrivMap() |  | 100% | | n/a | 0 | 1 | 0 | 1 | 0 | 1 |
getResourcePrivTable() |  | 100% | | n/a | 0 | 1 | 0 | 1 | 0 | 1 |
getStorageVaultPrivTable() |  | 100% | | n/a | 0 | 1 | 0 | 1 | 0 | 1 |
getCloudClusterPrivTable() |  | 100% | | n/a | 0 | 1 | 0 | 1 | 0 | 1 |
getCloudStagePrivTable() |  | 100% | | n/a | 0 | 1 | 0 | 1 | 0 | 1 |
getWorkloadGroupPrivTable() |  | 100% | | n/a | 0 | 1 | 0 | 1 | 0 | 1 |
getComment() |  | 100% | | n/a | 0 | 1 | 0 | 1 | 0 | 1 |