Date
1 - 4 of 4
addE doesn't create more than 1 edge
Anton Eroshenko <erosh...@...>
I'm trying to link one vertex (let's say Activity) with two others (person), I expect to have two edges in result, the request below creates only one. gremlin> g.V().hasLabel('Activity') ==>v[40984624] gremlin> g.V().hasLabel('person').has('id', within('p1', 'p2')) ==>v[40996896] ==>v[41037952] gremlin> g.V().hasLabel('Activity').addE('LINK').to(g.V().hasLabel('person').has('id', within('p1', 'p2'))) ==>e[oe5mu-oefxs-b0np-oepeo][40984624-RESP->40996896] Is it a bug or I'm missing something? |
|
HadoopMarc <bi...@...>
Hi Anton, It is not a bug: the addE() step only adds one edge per traverser. Also, using g.V() twice is an anti-pattern. Try it the other way around, something like (not tested): g.V().hasLabel('person').has('id', within('p1', 'p2')).as('a').addE('LINK').from('a') Now the addE() step runs on two traversers. HTH, Marc Op dinsdag 15 december 2020 om 12:22:56 UTC+1 schreef Anton Eroshenko:
|
|
Amiya <amiyakr...@...>
Marc is correct about "It is not a bug: the addE() step only adds one edge per traverser". I think query by Mark will create a self link. Below query might work (not tested) g.V().hasLabel('Activity').as('a'). V().has('person', 'id', within('p1', 'p2')).addE('LINK').from('a') On Tuesday, 15 December 2020 at 20:36:56 UTC+5:30 HadoopMarc wrote:
|
|
Anton Eroshenko <erosh...@...>
Thanks for your explanation. I got the idea, that "many" side of "one-to-many" relationship should go first when adding edges.
toggle quoted message
Show quoted text
On Wednesday, December 16, 2020 at 2:03:31 AM UTC+7 Amiya wrote:
|
|