aboutsummaryrefslogtreecommitdiffstats
path: root/configserver
diff options
context:
space:
mode:
authorHenning Baldersheim <balder@yahoo-inc.com>2018-01-25 18:12:02 +0100
committerHenning Baldersheim <balder@yahoo-inc.com>2018-01-25 18:12:02 +0100
commitf6ac8c6cdd3d1b8cffbf03bc0e4c16fc445135f0 (patch)
tree0818082ef4f33f3a3dd824cc9e1d4b83df7c99ad /configserver
parent77abc544f5a6e7e9a7fdaa18ba352cbe3b8eae56 (diff)
Move it back where it came from.
Diffstat (limited to 'configserver')
-rw-r--r--configserver/src/main/java/com/yahoo/vespa/config/server/filedistribution/FileDBRegistry.java19
1 files changed, 17 insertions, 2 deletions
diff --git a/configserver/src/main/java/com/yahoo/vespa/config/server/filedistribution/FileDBRegistry.java b/configserver/src/main/java/com/yahoo/vespa/config/server/filedistribution/FileDBRegistry.java
index 98403d109f3..b0a802d831d 100644
--- a/configserver/src/main/java/com/yahoo/vespa/config/server/filedistribution/FileDBRegistry.java
+++ b/configserver/src/main/java/com/yahoo/vespa/config/server/filedistribution/FileDBRegistry.java
@@ -4,7 +4,10 @@ package com.yahoo.vespa.config.server.filedistribution;
import com.yahoo.config.FileReference;
import com.yahoo.config.application.api.FileRegistry;
import com.yahoo.net.HostName;
+import com.yahoo.text.Utf8;
+import net.jpountz.xxhash.XXHashFactory;
+import java.nio.ByteBuffer;
import java.util.ArrayList;
import java.util.HashMap;
import java.util.List;
@@ -35,7 +38,7 @@ public class FileDBRegistry implements FileRegistry {
}
public synchronized FileReference addUri(String uri, FileReference reference) {
- String relativePath = FileRegistry.uriToRelativeFile(uri);
+ String relativePath = uriToRelativeFile(uri);
Optional<FileReference> cachedReference = Optional.ofNullable(fileReferenceCache.get(uri));
return cachedReference.orElseGet(() -> {
FileReference newRef = manager.addUri(uri, relativePath, reference);
@@ -58,7 +61,7 @@ public class FileDBRegistry implements FileRegistry {
@Override
public synchronized FileReference addUri(String uri) {
- String relativePath = FileRegistry.uriToRelativeFile(uri);
+ String relativePath = uriToRelativeFile(uri);
Optional<FileReference> cachedReference = Optional.ofNullable(fileReferenceCache.get(uri));
return cachedReference.orElseGet(() -> {
FileReference newRef = manager.addUri(uri, relativePath);
@@ -78,4 +81,16 @@ public class FileDBRegistry implements FileRegistry {
return entries;
}
+ private static String uriToRelativeFile(String uri) {
+ String relative = "uri/" + String.valueOf(XXHashFactory.nativeInstance().hash64().hash(ByteBuffer.wrap(Utf8.toBytes(uri)), 0));
+ if (uri.endsWith(".json")) {
+ relative += ".json";
+ } else if (uri.endsWith(".json.lz4")) {
+ relative += ".json.lz4";
+ } else if (uri.endsWith(".lz4")) {
+ relative += ".lz4";
+ }
+ return relative;
+ }
+
}