Bulk loader

i am planning to use bulk loader and if i use the tag --xidmap for the given example below (the Blank-nodes i created and have some logic build)
if i use the same blank-nodes again in 2nd iteration with same blank will it point to same edge ?


_:deepak191094gmal.com <Email> "deepak191094@gmal.com" .
_:deepak191094gmal.com <dgraph.type> "Email" .
_:deepak191095gmail.com <Email> "deepak191095@gmail.com" .
_:deepak191095gmail.com <dgraph.type> "Email" .

If you use the same map folder created with xidmap flag, yes. Otherwise the response is no.

PS. Xidmap works only for Live and Bulkloaders. It wont work for clients tho.

One thing I forgot to mention is an undocumented feature called upsertPredicate. With it you have the same behavior as Xidmap. But it only works for Liveloader. But it keeps a BlankNode mapping stored in the node itself. In the “XID” predicate.

see details → dgraph/run.go at f893f96f389218fe26bc638828d7fa57c61afec8 · dgraph-io/dgraph · GitHub

For example. It will create automatically a new predicate entry

<0x1> <XID> "_:deepak191094gmal.com" .

And from this value it will track your blank nodes. Unfortunately this behavior does not work on Clients or Bulkloader.