[
https://issues.apache.org/jira/browse/TINKERPOP-2516?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17286020#comment-17286020
]
Stephen Mallette commented on TINKERPOP-2516:
---------------------------------------------
Now that I look at this again, it seems like it's not really valid Gremlin in a
sense. The error misleads away from the primary problem. You need to pair
{{property(id,102)} with the {{addE()}} because it can't be applied to an
existing {{Edge}} as the id is not mutable:
{code}
gremlin> g.V().property(id, 100)
org.apache.tinkerpop.gremlin.structure.T$2 cannot be cast to java.lang.String
Type ':help' or ':h' for help.
Display stack trace? [yN]n
{code}
i think this just needs a better error message, so that it's more clear as to
what is happening.
> Property folding has trouble with coalesce
> ------------------------------------------
>
> Key: TINKERPOP-2516
> URL: https://issues.apache.org/jira/browse/TINKERPOP-2516
> Project: TinkerPop
> Issue Type: Bug
> Components: process
> Affects Versions: 3.4.9
> Reporter: Christopher Smith
> Priority: Major
>
> This appears closely related to TINKERPOP-2112. I had some working code that
> was appending {{.property(T.id, str)}} to the results of an {{addE}} call.
> However, I have refactored that code so that the call to set the ID is
> appended to a {{coalesce}} call:
> {code:java}
> gts.V(Vo).coalesce(
> // guard condition
> __.addE("rel").to(Vi).property("foo", bar)
> );
> {code}
> This formulation triggers the same {{T$2 cannot be cast to String}} error.
--
This message was sent by Atlassian Jira
(v8.3.4#803005)