diff options
author | Harald Musum <musum@verizonmedia.com> | 2022-07-05 08:55:53 +0200 |
---|---|---|
committer | GitHub <noreply@github.com> | 2022-07-05 08:55:53 +0200 |
commit | f2802027f402d5b16f5fffb9cfc5a3d7f7401ab4 (patch) | |
tree | 25831e8e7bab5d4dbbf5adef31f6a14e09c2129a | |
parent | bdca3da122423f78c7dace3ab10c27c575b9fa65 (diff) | |
parent | b30b6eebaff55f929073243c789622f288563936 (diff) |
Merge pull request #23352 from vespa-engine/hmusum/delete-more-zk-nodes-per-runv8.13.21
Add min and max numbers for expired sessions to delete MERGEOK
-rw-r--r-- | configserver/src/main/java/com/yahoo/vespa/config/server/session/SessionRepository.java | 5 |
1 files changed, 3 insertions, 2 deletions
diff --git a/configserver/src/main/java/com/yahoo/vespa/config/server/session/SessionRepository.java b/configserver/src/main/java/com/yahoo/vespa/config/server/session/SessionRepository.java index 7d10acaf3ae..a144940e443 100644 --- a/configserver/src/main/java/com/yahoo/vespa/config/server/session/SessionRepository.java +++ b/configserver/src/main/java/com/yahoo/vespa/config/server/session/SessionRepository.java @@ -358,6 +358,8 @@ public class SessionRepository { log.log(Level.FINE, () -> "Remote sessions for tenant " + tenantName + ": " + remoteSessionsFromZooKeeper); int deleted = 0; + // Avoid deleting too many in one run + int deleteMax = (int) Math.min(1000, Math.max(10, remoteSessionsFromZooKeeper.size() * 0.01)); for (long sessionId : remoteSessionsFromZooKeeper) { Session session = remoteSessionCache.get(sessionId); if (session == null) { @@ -370,8 +372,7 @@ public class SessionRepository { deleteRemoteSessionFromZooKeeper(session); deleted++; } - // Avoid deleting too many in one run - if (deleted >= 2) + if (deleted >= deleteMax) break; } return deleted; |