diff options
author | Bjørn Christian Seime <bjorncs@verizonmedia.com> | 2021-09-16 17:27:22 +0200 |
---|---|---|
committer | Bjørn Christian Seime <bjorncs@verizonmedia.com> | 2021-09-16 17:27:22 +0200 |
commit | b900d63d8f24377aaed1d1caf47755294fcca454 (patch) | |
tree | 8d42b115c6a795f7637bc3c8f9ad06288ba28dae /controller-server | |
parent | e57804532c9678e04a9d03c9409f5091ab401f4d (diff) |
Copy dump options from original request
Diffstat (limited to 'controller-server')
2 files changed, 6 insertions, 2 deletions
diff --git a/controller-server/src/main/java/com/yahoo/vespa/hosted/controller/restapi/application/ApplicationApiHandler.java b/controller-server/src/main/java/com/yahoo/vespa/hosted/controller/restapi/application/ApplicationApiHandler.java index 3896ad87397..1a2acb82348 100644 --- a/controller-server/src/main/java/com/yahoo/vespa/hosted/controller/restapi/application/ApplicationApiHandler.java +++ b/controller-server/src/main/java/com/yahoo/vespa/hosted/controller/restapi/application/ApplicationApiHandler.java @@ -2120,6 +2120,10 @@ public class ApplicationApiHandler extends AuditLoggingRequestHandler { if (expiresAt > 0) { dumpRequestCursor.setLong("expiresAt", expiresAt); } + Cursor dumpOptionsCursor = requestPayloadCursor.field("dumpOptions"); + if (dumpOptionsCursor.children() > 0) { + SlimeUtils.copyObject(dumpOptionsCursor, dumpRequestCursor.setObject("dumpOptions")); + } var reportsUpdate = Map.of("serviceDump", new String(uncheck(() -> SlimeUtils.toJsonBytes(dumpRequest)))); nodeRepository.updateReports(zone, hostname, reportsUpdate); boolean wait = request.getBooleanProperty("wait"); diff --git a/controller-server/src/test/java/com/yahoo/vespa/hosted/controller/restapi/application/ApplicationApiTest.java b/controller-server/src/test/java/com/yahoo/vespa/hosted/controller/restapi/application/ApplicationApiTest.java index 72f0fc283e5..66c3f7bba16 100644 --- a/controller-server/src/test/java/com/yahoo/vespa/hosted/controller/restapi/application/ApplicationApiTest.java +++ b/controller-server/src/test/java/com/yahoo/vespa/hosted/controller/restapi/application/ApplicationApiTest.java @@ -621,14 +621,14 @@ public class ApplicationApiTest extends ControllerContainerTest { // POST to request a service dump tester.assertResponse(request("/application/v4/tenant/tenant1/application/application1/instance/instance1/environment/prod/region/us-central-1/node/host-tenant1:application1:instance1-prod.us-central-1/service-dump", POST) .userIdentity(HOSTED_VESPA_OPERATOR) - .data("{\"configId\":\"default/container.1\",\"artifacts\":[\"jvm-dump\"]}"), + .data("{\"configId\":\"default/container.1\",\"artifacts\":[\"jvm-dump\"],\"dumpOptions\":{\"duration\":30}}"), "{\"message\":\"Request created\"}"); // GET to get status of service dump tester.assertResponse(request("/application/v4/tenant/tenant1/application/application1/instance/instance1/environment/prod/region/us-central-1/node/host-tenant1:application1:instance1-prod.us-central-1/service-dump", GET) .userIdentity(HOSTED_VESPA_OPERATOR), "{\"createdMillis\":" + tester.controller().clock().millis() + ",\"configId\":\"default/container.1\"" + - ",\"artifacts\":[\"jvm-dump\"]}"); + ",\"artifacts\":[\"jvm-dump\"],\"dumpOptions\":{\"duration\":30}}"); // POST a 'restart application' command tester.assertResponse(request("/application/v4/tenant/tenant1/application/application1/environment/prod/region/us-central-1/instance/instance1/restart", POST) |