[ 
https://issues.apache.org/jira/browse/TINKERPOP-2939?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Valentyn Kahamlyk reopened TINKERPOP-2939:
------------------------------------------
      Assignee: Valentyn Kahamlyk

> 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
>            Assignee: Valentyn Kahamlyk
>            Priority: Critical
>
> 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)

Reply via email to