On 8 November 2016 at 19:13, Radim Vansa <rva...@redhat.com> wrote: > I understand that you don't want to scare users off, but I would mention > that at least in the section about deciding between embedded and Hot Rod: > > "When connecting to an /Infinispan Server/ over the /Hot Rod client/, the > architecture is similar to having Hibernate connect to traditional database: > the data is stored on the /Infinispan Server/ nodes, and Hibernate OGM uses > a client with a pool of TCP connections to talk to the server." > > Traditional databases are transactional, so I would put a notice about > no-transactions here, with a link to "9.3.4. Storage Principles of the > Infinispan Remote dataprovider" > > Most people probably understand what *is* the loss of referential integrity, > but 9.3.4 is not really specific *when* does this happen. As you speak about > "interrupting Hibernate OGM", I would assume that this is limited to a case > when some operation fails (due to network breakage), but it's not clear that > this can happen even with successful concurrent operations. Therefore, an > example that can lead to broken integrity could be useful, along with > information about concurrent operations that are safe (basically saying that > if each session uses distinct set of entities, you are safe).
Ok, thanks I'll add the notice. I wouldn't go too much into an explanation though, as it's supposed to be a reference documentation and I feel like I'm writing a book about Infinispan :) - https://hibernate.atlassian.net/browse/OGM-1206 > Is there any option to detect (and fix) the problems? (by a batch job...?) We'd be able to identify references leading nowhere, but it's also possible that a once broken reference later leads to a valid entity... we'd not be able to spot those, so I'm afraid that such a tool would give a false sense of confidence. I guess we could strictly ban ID reuse, then we could avoid this and identify them safely; but what then? Deleting the owning entity is not always the right thing to do. A user's callback? I'm afraid it gets messy quickly. But also.. remember: people seem to be happy with stuff like MongoDB. Ignorance is a bliss? Let's admit that we want to do better and do "the right thing": clearly we need to work towards having proper transactions, or at least fully atomic operations. At least this OGM support is a great improvement in usability compared to "roll your own" backend using native Hot Rod APIs; remember Hibernate minimises the problem with referential integrity by updating relations in "the right order", I suspect it even takes some skill to craft an effective reproducer.. Thanks, Sanne > > Radim > > > On 11/08/2016 01:53 PM, Sanne Grinovero wrote: >> >> Thanks Radim! >> >> the blog attempts to be short, I mention the Referential Integrity >> problem in the reference documentation: >> >> " >> Referential integrity >> While we can use relations based on foreign keys, Infinispan has no >> notion of referential integrity. Hibernate is able to maintain the >> integrity as it won’t "forget" stale references, > but since the >> storage doesn’t support transactions either it is possible to >> interrupt Hibernate OGM during such maintenance and introduce breaks >> of integrity. >> " >> - >> https://docs.jboss.org/hibernate/ogm/5.1/reference/en-US/html_single/#storage_principles_of_the_infinispan_remote_dataprovider >> >> It's not explicitly listed in the known limitations, as I consider it >> part of the "there's no transactions" point here: >> - >> https://docs.jboss.org/hibernate/ogm/5.1/reference/en-US/html_single/#known_limitations_future_improvements >> >> You think that's enough? It's a though one, as I want to be clear >> about the limitations but w/o scaring people off by repeating >> limitations too many times. >> There are also various big highlighted baloons mentioning: >> >> " >> Caution >> The Hibernate OGM support for Infinispan Remote is considered >> experimental. " >> >> Happy to clarify the docs as needed. >> >> Thanks! >> Sanne >> >> >> On 8 November 2016 at 17:50, Radim Vansa <rva...@redhat.com> wrote: >>> >>> Wouldn't it be worth mentioning the lack of referential integrity among >>> the limitations? >>> >>> Anyway, thumbs up! >>> >>> Radim >>> >>> On 11/08/2016 12:16 PM, Sanne Grinovero wrote: >>>> >>>> Hello everyone, >>>> >>>> we can finally announce that Hibernate OGM 5.1.0.Beta1 is released, >>>> and now includes support for Infinispan Server, alias Hot Rod, also >>>> known as Infinispan Remote .. >>>> >>>> - http://in.relation.to/2016/11/08/hibernate-ogm-with-hotrod-support >>>> >>>> We also released Hibernate OGM 5.0.3.Final >>>> >>>> Kind Regards, >>>> Sanne >>>> _______________________________________________ >>>> hibernate-dev mailing list >>>> hibernate-dev@lists.jboss.org >>>> https://lists.jboss.org/mailman/listinfo/hibernate-dev >>> >>> >>> -- >>> Radim Vansa <rva...@redhat.com> >>> JBoss Performance Team >>> >>> _______________________________________________ >>> hibernate-dev mailing list >>> hibernate-dev@lists.jboss.org >>> https://lists.jboss.org/mailman/listinfo/hibernate-dev > > > > -- > Radim Vansa <rva...@redhat.com> > JBoss Performance Team > _______________________________________________ hibernate-dev mailing list hibernate-dev@lists.jboss.org https://lists.jboss.org/mailman/listinfo/hibernate-dev