From 99c901c271242ff73eb16e35bbb499d3a96dad1e Mon Sep 17 00:00:00 2001 From: Bjørn Christian Seime Date: Fri, 22 Sep 2023 15:35:35 +0200 Subject: Use `Curator.getSize()` to get size for path --- .../java/com/yahoo/vespa/config/server/zookeeper/ZKApplication.java | 6 ++++++ .../com/yahoo/vespa/config/server/zookeeper/ZKApplicationFile.java | 2 +- 2 files changed, 7 insertions(+), 1 deletion(-) (limited to 'configserver') diff --git a/configserver/src/main/java/com/yahoo/vespa/config/server/zookeeper/ZKApplication.java b/configserver/src/main/java/com/yahoo/vespa/config/server/zookeeper/ZKApplication.java index 4c262379c35..1288b63cadd 100644 --- a/configserver/src/main/java/com/yahoo/vespa/config/server/zookeeper/ZKApplication.java +++ b/configserver/src/main/java/com/yahoo/vespa/config/server/zookeeper/ZKApplication.java @@ -111,6 +111,12 @@ public class ZKApplication { return getBytesInternal(getFullPath(path)); } + public long getSize(Path path) { + return curator.getStat(path).map(stat -> (long)stat.getDataLength()) + .orElseThrow(() -> new IllegalArgumentException( + "Could not get size from '" + path + "' in zookeeper")); + } + void putData(Path path, String data) { byte[] bytes = Utf8.toBytes(data); ensureDataIsNotTooLarge(bytes, path); diff --git a/configserver/src/main/java/com/yahoo/vespa/config/server/zookeeper/ZKApplicationFile.java b/configserver/src/main/java/com/yahoo/vespa/config/server/zookeeper/ZKApplicationFile.java index 13bf4b2368b..e51f8627de2 100644 --- a/configserver/src/main/java/com/yahoo/vespa/config/server/zookeeper/ZKApplicationFile.java +++ b/configserver/src/main/java/com/yahoo/vespa/config/server/zookeeper/ZKApplicationFile.java @@ -183,7 +183,7 @@ class ZKApplicationFile extends ApplicationFile { } } - @Override public long getSize() { return zkApp.getBytes(getZKPath(path)).length; } + @Override public long getSize() { return zkApp.getSize(getZKPath(path)); } @Override public int compareTo(ApplicationFile other) { -- cgit v1.2.3