diff options
author | Harald Musum <musum@oath.com> | 2018-02-07 11:40:13 +0100 |
---|---|---|
committer | Harald Musum <musum@oath.com> | 2018-02-07 11:40:13 +0100 |
commit | 71487b8ed62cb933a68ee08946286b73b5dcfe1b (patch) | |
tree | 07c716e768509991a682ff7e246fb3460f4c4343 | |
parent | 6db029156483eaab425ac2c5119c9d7152c01703 (diff) |
Remove config and support for non-chunked transfer
3 files changed, 2 insertions, 70 deletions
diff --git a/configdefinitions/src/vespa/configserver.def b/configdefinitions/src/vespa/configserver.def index d661119e049..aa807c76c91 100644 --- a/configdefinitions/src/vespa/configserver.def +++ b/configdefinitions/src/vespa/configserver.def @@ -51,4 +51,3 @@ loadBalancerAddress string default="" # File distribution disableFiledistributor bool default=true -usechunkedtransfer bool default=true diff --git a/configserver/src/main/java/com/yahoo/vespa/config/server/rpc/RpcServer.java b/configserver/src/main/java/com/yahoo/vespa/config/server/rpc/RpcServer.java index ee9ac81e090..08095c55373 100644 --- a/configserver/src/main/java/com/yahoo/vespa/config/server/rpc/RpcServer.java +++ b/configserver/src/main/java/com/yahoo/vespa/config/server/rpc/RpcServer.java @@ -23,7 +23,6 @@ import com.yahoo.jrt.Target; import com.yahoo.jrt.Transport; import com.yahoo.log.LogLevel; import com.yahoo.vespa.config.ErrorCode; -import com.yahoo.vespa.config.JRTConnectionPool; import com.yahoo.vespa.config.JRTMethods; import com.yahoo.vespa.config.protocol.ConfigResponse; import com.yahoo.vespa.config.protocol.JRTServerConfigRequest; @@ -99,7 +98,6 @@ public class RpcServer implements Runnable, ReloadListener, TenantListener { private final FileServer fileServer; private final ThreadPoolExecutor executorService; - private final boolean useChunkedFileTransfer; private final FileDownloader downloader; private volatile boolean allTenantsLoaded = false; @@ -126,7 +124,6 @@ public class RpcServer implements Runnable, ReloadListener, TenantListener { this.useRequestVersion = config.useVespaVersionInRequest(); this.hostedVespa = config.hostedVespa(); this.fileServer = fileServer; - this.useChunkedFileTransfer = config.usechunkedtransfer(); downloader = fileServer.downloader(); setUpHandlers(); } @@ -428,35 +425,6 @@ public class RpcServer implements Runnable, ReloadListener, TenantListener { return useRequestVersion; } - class WholeFileReceiver implements FileServer.Receiver { - Target target; - WholeFileReceiver(Target target) { - this.target = target; - } - - @Override - public String toString() { - return target.toString(); - } - - @Override - public void receive(FileReferenceData fileData, FileServer.ReplayStatus status) { - Request fileBlob = new Request(FileReceiver.RECEIVE_METHOD); - fileBlob.parameters().add(new StringValue(fileData.fileReference().value())); - fileBlob.parameters().add(new StringValue(fileData.filename())); - fileBlob.parameters().add(new StringValue(fileData.type().name())); - fileBlob.parameters().add(new DataValue(fileData.content().array())); - fileBlob.parameters().add(new Int64Value(fileData.xxhash())); - fileBlob.parameters().add(new Int32Value(status.getCode())); - fileBlob.parameters().add(new StringValue(status.getDescription())); - target.invokeSync(fileBlob, 600); - if (fileBlob.isError()) { - log.warning("Failed delivering reference '" + fileData.fileReference().value() + "' with file '" + fileData.filename() + "' to " + - target.toString() + " with error: '" + fileBlob.errorMessage() + "'."); - } - } - } - class ChunkedFileReceiver implements FileServer.Receiver { Target target; ChunkedFileReceiver(Target target) { @@ -543,9 +511,7 @@ public class RpcServer implements Runnable, ReloadListener, TenantListener { @SuppressWarnings("UnusedDeclaration") public final void serveFile(Request request) { request.detach(); - FileServer.Receiver receiver = useChunkedFileTransfer - ? new ChunkedFileReceiver(request.target()) - : new WholeFileReceiver(request.target()); + FileServer.Receiver receiver = new ChunkedFileReceiver(request.target()); fileServer.serveFile(request, receiver); } diff --git a/filedistribution/src/main/java/com/yahoo/vespa/filedistribution/FileReceiver.java b/filedistribution/src/main/java/com/yahoo/vespa/filedistribution/FileReceiver.java index 43a5eae90bf..3d6c7bf0a5c 100644 --- a/filedistribution/src/main/java/com/yahoo/vespa/filedistribution/FileReceiver.java +++ b/filedistribution/src/main/java/com/yahoo/vespa/filedistribution/FileReceiver.java @@ -33,7 +33,6 @@ import java.util.logging.Logger; public class FileReceiver { private final static Logger log = Logger.getLogger(FileReceiver.class.getName()); - public final static String RECEIVE_METHOD = "filedistribution.receiveFile"; public final static String RECEIVE_META_METHOD = "filedistribution.receiveFileMeta"; public final static String RECEIVE_PART_METHOD = "filedistribution.receiveFilePart"; public final static String RECEIVE_EOF_METHOD = "filedistribution.receiveFileEof"; @@ -152,7 +151,7 @@ public class FileReceiver { } // Defined here so that it can be added to supervisor used by client (server will use same connection when calling - // receiveFile after getting a serveFile method call). handler needs to implement receiveFile method + // receiveFile after getting a serveFile method call). handler needs to implement receiveFile* methods private List<Method> receiveFileMethod(Object handler) { List<Method> methods = new ArrayList<>(); methods.add(new Method(RECEIVE_META_METHOD, "sssl", "ii", handler,"receiveFileMeta") @@ -175,41 +174,9 @@ public class FileReceiver { .paramDesc(3, "error-code", "Error code. 0 if none") .paramDesc(4, "error-description", "Error description.") .returnDesc(0, "ret", "0 if success, 1 if crc mismatch, 2 otherwise")); - // Temporary method until we have chunking - methods.add(new Method(RECEIVE_METHOD, "sssxlis", "i", handler, "receiveFile") - .methodDesc("receive file reference content") - .paramDesc(0, "file reference", "file reference to download") - .paramDesc(1, "filename", "filename") - .paramDesc(2, "type", "'file' or 'compressed'") - .paramDesc(3, "content", "array of bytes") - .paramDesc(4, "hash", "xx64hash of the file content") - .paramDesc(5, "errorcode", "Error code. 0 if none") - .paramDesc(6, "error-description", "Error description.") - .returnDesc(0, "ret", "0 if success, 1 otherwise")); return methods; } - @SuppressWarnings({"UnusedDeclaration"}) - public final void receiveFile(Request req) { - FileReference fileReference = new FileReference(req.parameters().get(0).asString()); - String filename = req.parameters().get(1).asString(); - String type = req.parameters().get(2).asString(); - byte[] content = req.parameters().get(3).asData(); - long xxhash = req.parameters().get(4).asInt64(); - int errorCode = req.parameters().get(5).asInt32(); - String errorDescription = req.parameters().get(6).asString(); - - if (errorCode == 0) { - log.log(LogLevel.DEBUG, "Receiving file reference '" + fileReference.value() + "'"); - receiveFile(new FileReferenceDataBlob(fileReference, filename, FileReferenceData.Type.valueOf(type), content, xxhash)); - req.returnValues().add(new Int32Value(0)); - } else { - log.log(LogLevel.WARNING, "Receiving file reference '" + fileReference.value() + "' failed: " + errorDescription); - req.returnValues().add(new Int32Value(1)); - // TODO: Add error description return value here too? - } - } - void receiveFile(FileReferenceData fileReferenceData) { long xxHashFromContent = fileReferenceData.xxhash(); if (xxHashFromContent != fileReferenceData.xxhash()) { |