Hi, I encountered two strange things today, when developing my app with v1.7-SNAPSHOT and Gremlin API.
#1. While adding edges, I had following message for each incoming vertex: WARNING: Found record in transaction with the same RID #12:1 but different instance. Probably the record has been loaded from another transaction and reused on the current one: reload it from current transaction before to update or delete it Soon after getting the message, I searched posts in OrientDB group page and found two threads which were about the above message. WARNING: Found record in transaction with the same RID but different instance<https://groups.google.com/forum/#!searchin/orient-database/WARNING$3A$20Found$20record$20in$20transaction$20with$20the$20same$20RID/orient-database/TA0voVLymgk/13jpI3Kyo6UJ> (1.6.0) Found record in transaction with the same RID #15:416 but different instance.<https://groups.google.com/forum/#!searchin/orient-database/WARNING$3A$20Found$20record$20in$20transaction$20with$20the$20same$20RID/orient-database/n70NhW9GVVc/oe1SFFDFLZ4J> I understood that the above message appears when an RID is reused, but in my case, this is what I think is really strange, I've never done deletion and recreation of records in cluster 12. What I did was just creating each set of incoming and outgoing vertices, and creating edges between them. #2. After creating edges and saving the change, I found that some of created edges were stored into a different cluster from expected one. those edges were stored into cluster 3, "default", but they had the same label as the other edges correctly stored. However, the incorrectly stored edges couldn't be retrieved with g.E('label', labelName) while correctly stored ones could be, though I could obtain the incorrectly stored ones with g.V.bothE or like g.e('#3:xxx'). When I checked "DB" tab in OrientDB Studio, default.0.ocl had records and value of "Filled" was more than 0. I confirmed #1 could be reproduced but #2 couldn't. Besides, I didn't test with v1.7rc. Following pseudo-script is what I executed when I had the above issues. vlist.each{root-> list=[] g.V("@class", "ClassName").filter{it._pId ==~ ~/[\w\s:-]+$ root.id/}.fill(list) <http://root.id/%7D.fill(list)> list.each{tgt-> root.addEdge("edgeClass", tgt, [p1:tgt.p1, p2:tgt.p2, p3:tgt.p3, ...]) } } What I'd like to know is: - Why did #1 happen though there is no reuse of RID, and How can I avoid it? - What is the cause of #2? Regards, Shota Nagahori -- --- You received this message because you are subscribed to the Google Groups "OrientDB" group. To unsubscribe from this group and stop receiving emails from it, send an email to [email protected]. For more options, visit https://groups.google.com/groups/opt_out.
