From 6a48337dddea59910c0abd8bab3539bfc91fde88 Mon Sep 17 00:00:00 2001 From: Jon Bratseth Date: Fri, 1 Jun 2018 13:02:05 +0200 Subject: Test internalRedeploy propagation in config responses --- .../config/subscription/impl/JRTConfigSubscription.java | 2 +- config/src/main/java/com/yahoo/vespa/config/RawConfig.java | 2 +- .../vespa/config/protocol/JRTClientConfigRequest.java | 4 ++-- .../vespa/config/protocol/SlimeClientConfigRequest.java | 4 ++-- .../yahoo/vespa/config/protocol/SlimeConfigResponse.java | 14 ++++++++------ .../yahoo/vespa/config/protocol/ConfigResponseTest.java | 2 +- .../vespa/config/protocol/JRTConfigRequestV3Test.java | 4 +++- 7 files changed, 18 insertions(+), 14 deletions(-) (limited to 'config') diff --git a/config/src/main/java/com/yahoo/config/subscription/impl/JRTConfigSubscription.java b/config/src/main/java/com/yahoo/config/subscription/impl/JRTConfigSubscription.java index 9ef7b602228..d95b11533d1 100644 --- a/config/src/main/java/com/yahoo/config/subscription/impl/JRTConfigSubscription.java +++ b/config/src/main/java/com/yahoo/config/subscription/impl/JRTConfigSubscription.java @@ -89,7 +89,7 @@ public class JRTConfigSubscription extends ConfigSubsc return false; } if (jrtReq.hasUpdatedGeneration()) { - setInternalRedeploy(jrtReq.isInternalRedeploy()); + setInternalRedeploy(jrtReq.responseIsInternalRedeploy()); if (jrtReq.hasUpdatedConfig()) { setNewConfig(jrtReq); } else { diff --git a/config/src/main/java/com/yahoo/vespa/config/RawConfig.java b/config/src/main/java/com/yahoo/vespa/config/RawConfig.java index 3aaff1a6b57..ae4431e5195 100755 --- a/config/src/main/java/com/yahoo/vespa/config/RawConfig.java +++ b/config/src/main/java/com/yahoo/vespa/config/RawConfig.java @@ -77,7 +77,7 @@ public class RawConfig extends ConfigInstance { req.getNewPayload(), req.getNewConfigMd5(), req.getNewGeneration(), - req.isInternalRedeploy(), + req.responseIsInternalRedeploy(), 0, req.getDefContent().asList(), req.getVespaVersion()); diff --git a/config/src/main/java/com/yahoo/vespa/config/protocol/JRTClientConfigRequest.java b/config/src/main/java/com/yahoo/vespa/config/protocol/JRTClientConfigRequest.java index 97ba08a1c09..25fecba425c 100644 --- a/config/src/main/java/com/yahoo/vespa/config/protocol/JRTClientConfigRequest.java +++ b/config/src/main/java/com/yahoo/vespa/config/protocol/JRTClientConfigRequest.java @@ -53,8 +53,8 @@ public interface JRTClientConfigRequest extends JRTConfigRequest { */ long getNewGeneration(); - /** Returns whether this config changes is due to an internal change not an application package change */ - boolean isInternalRedeploy(); + /** Returns whether this config change is due to an internal change not an application package change */ + boolean responseIsInternalRedeploy(); /** * Get the config md5 of the config returned by the server. Return an empty string if no response has been returned. diff --git a/config/src/main/java/com/yahoo/vespa/config/protocol/SlimeClientConfigRequest.java b/config/src/main/java/com/yahoo/vespa/config/protocol/SlimeClientConfigRequest.java index 055f48bbcf3..386757d2afc 100644 --- a/config/src/main/java/com/yahoo/vespa/config/protocol/SlimeClientConfigRequest.java +++ b/config/src/main/java/com/yahoo/vespa/config/protocol/SlimeClientConfigRequest.java @@ -81,7 +81,7 @@ public abstract class SlimeClientConfigRequest implements JRTClientConfigRequest .append(",").append(getVespaVersion()).append("'\n"); sb.append("response='").append(getNewConfigMd5()) .append(",").append(getNewGeneration()) - .append(",").append(isInternalRedeploy()) + .append(",").append(responseIsInternalRedeploy()) .append("'\n"); return sb.toString(); } @@ -203,7 +203,7 @@ public abstract class SlimeClientConfigRequest implements JRTClientConfigRequest } @Override - public boolean isInternalRedeploy() { + public boolean responseIsInternalRedeploy() { return responseData.getResponseInternalRedeployment(); } diff --git a/config/src/main/java/com/yahoo/vespa/config/protocol/SlimeConfigResponse.java b/config/src/main/java/com/yahoo/vespa/config/protocol/SlimeConfigResponse.java index 9e05b5b2d86..566e3597269 100644 --- a/config/src/main/java/com/yahoo/vespa/config/protocol/SlimeConfigResponse.java +++ b/config/src/main/java/com/yahoo/vespa/config/protocol/SlimeConfigResponse.java @@ -23,12 +23,13 @@ public class SlimeConfigResponse implements ConfigResponse { private final CompressionInfo compressionInfo; private final InnerCNode targetDef; private final long generation; - private final boolean internalRedeployment; + private final boolean internalRedeploy; private final String configMd5; - public static SlimeConfigResponse fromConfigPayload(ConfigPayload payload, InnerCNode targetDef, long generation, String configMd5) { + public static SlimeConfigResponse fromConfigPayload(ConfigPayload payload, InnerCNode targetDef, long generation, + boolean internalRedeploy, String configMd5) { Utf8Array data = payload.toUtf8Array(true); - return new SlimeConfigResponse(data, targetDef, generation, false, + return new SlimeConfigResponse(data, targetDef, generation, internalRedeploy, configMd5, CompressionInfo.create(CompressionType.UNCOMPRESSED, data.getByteLength())); } @@ -36,13 +37,13 @@ public class SlimeConfigResponse implements ConfigResponse { public SlimeConfigResponse(Utf8Array payload, InnerCNode targetDef, long generation, - boolean internalRedeployment, + boolean internalRedeploy, String configMd5, CompressionInfo compressionInfo) { this.payload = payload; this.targetDef = targetDef; this.generation = generation; - this.internalRedeployment = internalRedeployment; + this.internalRedeploy = internalRedeploy; this.configMd5 = configMd5; this.compressionInfo = compressionInfo; } @@ -75,7 +76,7 @@ public class SlimeConfigResponse implements ConfigResponse { * not an application package change */ @Override - public boolean isInternalRedeploy() { return internalRedeployment; } + public boolean isInternalRedeploy() { return internalRedeploy; } @Override public String getConfigMd5() { @@ -96,4 +97,5 @@ public class SlimeConfigResponse implements ConfigResponse { @Override public CompressionInfo getCompressionInfo() { return compressionInfo; } + } diff --git a/config/src/test/java/com/yahoo/vespa/config/protocol/ConfigResponseTest.java b/config/src/test/java/com/yahoo/vespa/config/protocol/ConfigResponseTest.java index 7daac671b34..91adc544d88 100644 --- a/config/src/test/java/com/yahoo/vespa/config/protocol/ConfigResponseTest.java +++ b/config/src/test/java/com/yahoo/vespa/config/protocol/ConfigResponseTest.java @@ -29,7 +29,7 @@ public class ConfigResponseTest { ConfigPayload configPayload = ConfigPayload.fromInstance(new SimpletypesConfig(new SimpletypesConfig.Builder())); DefParser dParser = new DefParser(SimpletypesConfig.getDefName(), new StringReader(StringUtilities.implode(SimpletypesConfig.CONFIG_DEF_SCHEMA, "\n"))); InnerCNode targetDef = dParser.getTree(); - ConfigResponse response = SlimeConfigResponse.fromConfigPayload(configPayload, targetDef, 3, "mymd5"); + ConfigResponse response = SlimeConfigResponse.fromConfigPayload(configPayload, targetDef, 3, false, "mymd5"); List payload = response.getLegacyPayload(); assertNotNull(payload); assertThat(payload.size(), is(6)); diff --git a/config/src/test/java/com/yahoo/vespa/config/protocol/JRTConfigRequestV3Test.java b/config/src/test/java/com/yahoo/vespa/config/protocol/JRTConfigRequestV3Test.java index 896ee116301..d1879c9318b 100644 --- a/config/src/test/java/com/yahoo/vespa/config/protocol/JRTConfigRequestV3Test.java +++ b/config/src/test/java/com/yahoo/vespa/config/protocol/JRTConfigRequestV3Test.java @@ -11,6 +11,7 @@ import org.junit.Test; import java.util.Arrays; import static org.hamcrest.CoreMatchers.is; +import static org.junit.Assert.assertFalse; import static org.junit.Assert.assertThat; import static org.junit.Assert.assertTrue; @@ -70,10 +71,11 @@ public class JRTConfigRequestV3Test extends JRTConfigRequestBase { @Test public void emptypayload() { ConfigPayload payload = ConfigPayload.empty(); - SlimeConfigResponse response = SlimeConfigResponse.fromConfigPayload(payload, null, 0, ConfigUtils.getMd5(payload)); + SlimeConfigResponse response = SlimeConfigResponse.fromConfigPayload(payload, null, 0, false, ConfigUtils.getMd5(payload)); serverReq.addOkResponse(serverReq.payloadFromResponse(response), response.getGeneration(), false, response.getConfigMd5()); assertTrue(clientReq.validateResponse()); assertTrue(clientReq.hasUpdatedGeneration()); assertThat(clientReq.getNewPayload().withCompression(CompressionType.UNCOMPRESSED).getData().toString(), is("{}")); + assertFalse(clientReq.responseIsInternalRedeploy()); } } -- cgit v1.2.3