From 4d701f6c52c2014cb008341c5578fc8cbb9f567a Mon Sep 17 00:00:00 2001 From: Basil Crow Date: Tue, 6 Dec 2022 23:12:45 -0800 Subject: [PATCH] Decline to cache a likely incorrect computation --- core/src/main/java/jenkins/model/Jenkins.java | 9 ++++++++- 1 file changed, 8 insertions(+), 1 deletion(-) diff --git a/core/src/main/java/jenkins/model/Jenkins.java b/core/src/main/java/jenkins/model/Jenkins.java index d065df8065317..dc845a0e2cad3 100644 --- a/core/src/main/java/jenkins/model/Jenkins.java +++ b/core/src/main/java/jenkins/model/Jenkins.java @@ -1267,7 +1267,14 @@ public synchronized Set getAgentProtocols() { result.add(name); } } - agentProtocols = result; + /* + * An empty result is almost never valid, but it can happen due to JENKINS-70206. Since we know the result + * is likely incorrect, at least decline to cache it so that a correct result can be computed later on + * rather than continuing to deliver the incorrect result indefinitely. + */ + if (!result.isEmpty()) { + agentProtocols = result; + } return result; } return agentProtocols;