Merge "Add logging for how block permission is evaluated"
diff --git a/java/com/google/gerrit/server/permissions/RefControl.java b/java/com/google/gerrit/server/permissions/RefControl.java
index 5dd6be0..8165cab 100644
--- a/java/com/google/gerrit/server/permissions/RefControl.java
+++ b/java/com/google/gerrit/server/permissions/RefControl.java
@@ -392,6 +392,9 @@
}
if (overrideFound) {
// Found an exclusive override, nothing further to do in this project.
+ logger.atFine().log(
+ "Exclusive override found for permission %s and user %s",
+ permissionName, getUser().getLoggableName());
continue projectLoop;
}
@@ -403,6 +406,9 @@
}
if (isBlock(pr, withForce) && projectControl.match(pr, isChangeOwner)) {
+ logger.atFine().log(
+ "Block rule found for permission %s and user %s",
+ permissionName, getUser().getLoggableName());
blocked = true;
break;
}
@@ -412,6 +418,10 @@
// ALLOW in the same AccessSection (ie. in the same Permission) overrides the BLOCK.
for (PermissionRule pr : p.getRules()) {
if (isAllow(pr, withForce) && projectControl.match(pr, isChangeOwner)) {
+ logger.atFine().log(
+ "Allow rule found in the same access section which overrides the BLOCK for"
+ + " permission %s and user %s",
+ permissionName, getUser().getLoggableName());
blocked = false;
break;
}
@@ -419,6 +429,8 @@
}
if (blocked) {
+ logger.atFine().log(
+ "Permission %s is blocked for user %s", permissionName, getUser().getLoggableName());
return true;
}
}