diff options
Diffstat (limited to 'vespaclient-container-plugin/src/main/java/com/yahoo/document/restapi/resource/DocumentV1ApiHandler.java')
-rw-r--r-- | vespaclient-container-plugin/src/main/java/com/yahoo/document/restapi/resource/DocumentV1ApiHandler.java | 5 |
1 files changed, 3 insertions, 2 deletions
diff --git a/vespaclient-container-plugin/src/main/java/com/yahoo/document/restapi/resource/DocumentV1ApiHandler.java b/vespaclient-container-plugin/src/main/java/com/yahoo/document/restapi/resource/DocumentV1ApiHandler.java index 2a7e69a0bf4..3eac4ff5c5d 100644 --- a/vespaclient-container-plugin/src/main/java/com/yahoo/document/restapi/resource/DocumentV1ApiHandler.java +++ b/vespaclient-container-plugin/src/main/java/com/yahoo/document/restapi/resource/DocumentV1ApiHandler.java @@ -468,7 +468,7 @@ public class DocumentV1ApiHandler extends AbstractRequestHandler { DocumentOperationParameters parameters = parametersFromRequest(request, ROUTE) .withResponseHandler(response -> { outstanding.decrementAndGet(); - updateUpdateMetrics(response.outcome()); + updateUpdateMetrics(response.outcome(), update.getCreateIfNonExistent()); handleFeedOperation(path, handler, response); }); return () -> dispatchOperation(() -> asyncSession.update(update, parameters)); @@ -1047,7 +1047,8 @@ public class DocumentV1ApiHandler extends AbstractRequestHandler { } } - private void updateUpdateMetrics(Outcome outcome) { + private void updateUpdateMetrics(Outcome outcome, boolean create) { + if (create && outcome == Outcome.NOT_FOUND) outcome = Outcome.SUCCESS; // >_< switch (outcome) { case SUCCESS: metric.add(MetricNames.SUCCEEDED, 1, null); break; case NOT_FOUND: metric.add(MetricNames.NOT_FOUND, 1, null); break; |