You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@tinkerpop.apache.org by sp...@apache.org on 2016/08/27 00:54:49 UTC
[34/50] [abbrv] tinkerpop git commit: Added a bit of logging and
error handling.
Added a bit of logging and error handling.
Project: http://git-wip-us.apache.org/repos/asf/tinkerpop/repo
Commit: http://git-wip-us.apache.org/repos/asf/tinkerpop/commit/186f26ba
Tree: http://git-wip-us.apache.org/repos/asf/tinkerpop/tree/186f26ba
Diff: http://git-wip-us.apache.org/repos/asf/tinkerpop/diff/186f26ba
Branch: refs/heads/master
Commit: 186f26ba08ca8ee2408003f98a1579bc999ccd36
Parents: 4191efc
Author: Stephen Mallette <sp...@genoprime.com>
Authored: Fri Aug 26 10:53:13 2016 -0400
Committer: Stephen Mallette <sp...@genoprime.com>
Committed: Fri Aug 26 10:53:13 2016 -0400
----------------------------------------------------------------------
.../server/op/traversal/TraversalOpProcessor.java | 16 +++++++++++-----
1 file changed, 11 insertions(+), 5 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/tinkerpop/blob/186f26ba/gremlin-server/src/main/java/org/apache/tinkerpop/gremlin/server/op/traversal/TraversalOpProcessor.java
----------------------------------------------------------------------
diff --git a/gremlin-server/src/main/java/org/apache/tinkerpop/gremlin/server/op/traversal/TraversalOpProcessor.java b/gremlin-server/src/main/java/org/apache/tinkerpop/gremlin/server/op/traversal/TraversalOpProcessor.java
index b44c51b..108d3fc 100644
--- a/gremlin-server/src/main/java/org/apache/tinkerpop/gremlin/server/op/traversal/TraversalOpProcessor.java
+++ b/gremlin-server/src/main/java/org/apache/tinkerpop/gremlin/server/op/traversal/TraversalOpProcessor.java
@@ -180,12 +180,10 @@ public class TraversalOpProcessor extends AbstractOpProcessor {
final Optional<UUID> sideEffect = msg.optionalArgs(Tokens.ARGS_SIDE_EFFECT);
final TraversalSideEffects sideEffects = cache.getIfPresent(sideEffect.get());
- if (null == sideEffects) {
- final String msgDefault = String.format("Could not find side-effects for %s.", sideEffect.get());
- throw new OpProcessorException(msgDefault, ResponseMessage.build(message).code(ResponseStatusCode.SERVER_ERROR).statusMessage(msgDefault).create());
- }
+ if (null == sideEffects)
+ logger.warn("Request for side-effect keys on %s returned no side-effects in the cache", sideEffect.get());
- handleIterator(context, sideEffects.keys().iterator());
+ handleIterator(context, null == sideEffects ? Collections.emptyIterator() : sideEffects.keys().iterator());
};
break;
@@ -284,6 +282,14 @@ public class TraversalOpProcessor extends AbstractOpProcessor {
return;
}
+ if (!sideEffects.exists(sideEffectKey.get())) {
+ final String errorMessage = String.format("Could not find side-effect key for %s in %s.", sideEffectKey.get(), sideEffect.get());
+ logger.warn(errorMessage);
+ ctx.writeAndFlush(ResponseMessage.build(msg).code(ResponseStatusCode.SERVER_ERROR).statusMessage(errorMessage).create());
+ onError(graph, context);
+ return;
+ }
+
handleIterator(context, new SideEffectIterator(sideEffects.get(sideEffectKey.get()), sideEffectKey.get()));
} catch (TimeoutException ex) {
final String errorMessage = String.format("Response iteration exceeded the configured threshold for request [%s] - %s", msg.getRequestId(), ex.getMessage());