Hi Sem, I strongly suggest you to switch to Graph API, it can manage your use case in a much more efficient and flexible way. Document API is lighter, but you have to manually manage "broken" links, and as you can see sometimes it's a big trouble.
Thanks Luigi 2015-09-21 11:03 GMT+02:00 Sem van der Wal <[email protected]>: > Hi All, > > I'm having some trouble with the ObjectDatabase in combination with 1 to N > links / references to other objects. > In a number of objects I'm using List<OtherObject> in order to keep > references to related objects. > This works perfectly for the most part, since I'm able to use the > references in queries and quickly access these referenced objects from my > application. > > However, when I delete an object from the database which is referenced in > one of these lists, I'm starting to see a whole lot of these errors: > > The field 'Company.companies' has been declared as LINKLIST but contains a > null record (probably a deleted record?)) > > > Deleting a single object can cause a chain of issues, because objects > referencing the deleted object cannot be loaded, but also objects with > references to an object with an reference to the deleted object, because > the intermediate cannot be loaded, etc etc > > So I need a way to prevent these deleted object from causing these issues > in my database. > > > What I could do, is before deleting an object, search for all other > objects referencing the record to be deleted, and removing all references. > > I think that would work, but I'm not sure if that's the best way to do it, > I'm thinking that there is something wrong in my design which causes this > to be such an issue. > > > Also, I am aware that this issue could be solved by using the Graph > interface, since links are two-way and automatically managed / updated in > that case, maybe it's the best approach to switch to the Graph interface? > > > I would very much like to hear what the best or commonly accepted way to > approach this issue is. > > > Thanks in advance for your replies! > > > Regards, > > > Sem > > -- > > --- > 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/d/optout. > -- --- 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/d/optout.
