Yang Xia created TINKERPOP-2939: ----------------------------------- Summary: The Merge onMatch map validation is during execution instead of construction Key: TINKERPOP-2939 URL: https://issues.apache.org/jira/browse/TINKERPOP-2939 Project: TinkerPop Issue Type: Improvement Components: process Affects Versions: 3.6.3 Reporter: Yang Xia
A small thing I noticed related to TINKERPOP-2931. With an empty graph, the traversal {code:java} g.mergeV([:]).option(onMatch, ['~label', 'vertex']) {code} will create a new vertex, and since onMatch failed it doesn't apply anything inside regardless if it's a valid map or not, and will return {code:java} v[0]{code} This won't have any impact function-wise, since the onMatch map will be validated when the vertex is found, but just wondering if we should validate this on construction instead of execution? A more visual example on 3.6.3-SNAPSHOT console. {code:java} gremlin> g.mergeV([:]).option(Merge.onMatch, ['~label':'vertex']) ==>v[0] gremlin> g.mergeV([:]).option(Merge.onMatch, ['~label':'vertex']) Property key can not be a hidden key: ~label Type ':help' or ':h' for help. Display stack trace? [yN]n gremlin> {code} -- This message was sent by Atlassian Jira (v8.20.10#820010)